您好,登錄后才能下訂單哦!
溫馨提示:要看高清無碼套圖,請使用手機打開并單擊圖片放大查看。
1.前置條件
本文檔將介紹Cloudera Manager與CDH的卸載,并基于CDH使用parcels安裝且未配置安全(AD/LDAP, Kerberos, Data Encryption)的集群,以下是本次測試環境,但不是本操作手冊的硬限制:
1.操作系統版本:CENTOS6.5
2.MySQL數據庫版本為5.1.73
3.CM版本:CM 5.11
4.CDH版本:CDH 5.11
5.采用root或有sudo權限用戶對集群進行卸載
2.用戶數據備份
2.1備份HDFS數據
使用distcp進行集群之間數據復制進行hdfs數據備份,備份操作如下:
hadoop distcp hftp://namenodeA:port/xxx/ hdfs://namenodeB/xxx
注:此命令需運行在目標集群中執行,確保目標集群空間足夠,以上數據目錄根據自己集群的真實環境做相應的修改;
namenodeA:源集群namenode節點ip地址
port:源集群端口,默認50070
namenodeB:目標集群namenode節點ip地址
xxx:對應hdfs的數據目錄
登錄namenode服務器上,進行如下操作:
#進入safemode模式
[root@ip-172-31-3-217 ~]# sudo -u hdfs hadoop dfsadmin -safemode ente
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.
Safe mode is ON
#將所有edits修改flush到fsimage
[root@ip-172-31-3-217 ~]# sudo -u hdfs hadoop dfsadmin –saveNamespace
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.
Save namespace successful
將namenode元數據備份,根據自己集群namenode目錄進行如下操作:
[root@ip-172-31-3-217 ~]# mkdir namenode_back
[root@ip-172-31-3-217 ~]# cd namenode_back/
[root@ip-172-31-3-217 ~]# cd /dfs/nn/
#將nn目錄下所有文件壓縮至/root/namenode_back/nn_back.tar.gz目錄下
[root@ip-172-31-3-217 nn]# tar -czvf /root/namenode_back/nn_back.tar.gz .
./
./current/
./current/fsimage
./current/fstime
./current/VERSION
./current/edits
./image/
./image/fsimage
2.2備份MySQL元數據
注:如果有hue,sentry,Navigator數據庫可以同樣備份
2.3備份CDH集群配置數據
通過Cloudera Manager提供的API接口,導出一份JSON文檔,該文檔包含Cloudera 管理器實例的配置數據,可以通過這份JSON文檔備份或恢復Cloudera管理器的部署。
[root@ip-172-31-3-217 ~]# curl -u admin_username:admin_pass "http://cm_server_host:7180/api/v16/cm/deployment" > path_to_file/cm-deployment.json
admin_username: 登錄到ClouderaManager的用戶名
admin_pass: 對應admin_username用戶的密碼
cm_server_host: 是ClouderaManager服務器的主機名
path_to_file: 保存配置文件的路徑
將上述提到的四個參數修改當前集群對應的信息即可
導出截圖:
注意:此功能只有Cloudera許可證才可以使用
1.首先進入Cloudera Manager管理平臺,進入如下操作
注意:如果在進行API調用操作之前未停止集群,那么API調用將在運行作業之前停止所有集群服務,任何運行的作業和數據都會丟失。
2.登錄到Cloudera Manager所在的服務器
3.執行如下命令
curl --upload-file path_to_file/cm-deployment.json -u admin_uname:admin_pass http://cm_server_host:7180/api/v16/cm/deployment?deleteCurrentDeployment=true
admin_uname: 登錄到ClouderaManager的用戶名
admin_pass: 對應admin_uname用戶的密碼
cm_server_host: 是ClouderaManager服務器的主機名
path_to_file:JSON配置文件的路徑
2.4Zookeeper數據目錄備份
[root@ip-172-31-3-217 ~]# mkdir zookeeper_back
[root@ip-172-31-3-217 ~]# scp -r /var/lib/zookeeper/ /root/zookeeper_back/zookeeper_1
2.5備份用戶數據目錄
以下路徑為Cloudera默認安裝目錄下個組件用戶數據:
/var/lib/flume-ng
/var/lib/hadoop*
/var/lib/hue
/var/lib/navigator
/var/lib/oozie
/var/lib/solr
/var/lib/sqoop*
/var/lib/zookeeper #同步數據
#data_driver_path為集群環境部署時設置的目錄,根據自己環境進行調整
data_drive_path/dfs
data_drive_path/mapred
data_drive_path/yarn
如需備份相關組件數據,可參考2.4進行數據備份。
3.停止所有服務
3.1打開Cloudera Manager控制臺
3.2關閉集群
停止CDH集群,如下圖所示操作
點擊確認操作,如下圖所示
等待所有服務器停止操作成功,如下圖所示
3.3關閉Cloudera Management Service
停止Cloudera Manager Service,如下圖所示
點擊確認對話框,如下圖所示
等待服務停止成功,如下圖所示
4.解除并移除Parcels
在Cloudera Manager管理界面,進行如下操作
點擊上圖標識功能,進入如下界面
點擊上圖標識,選擇【僅限停用狀態】,點擊【確定】
停用后,狀態變為“激活”,如下圖所示
點擊“激活”旁菜單,選擇“從主機刪除”,如下圖所示
點擊確認,如下圖所示
刪除成功后顯示如下
5.刪除集群
點擊Clouder Manager進入主頁,如下圖所示
刪除集群,如下操作
點擊“刪除”操作,如下圖所示
刪除成功后顯示如下
6.卸載Cloudera Manager Server
6.1停止Cloudera Manager Server和數據庫
在集群master服務器上執行如下命令
[root@ip-172-31-3-217 ~]# service cloudera-scm-server stop
#如果使用內置db postgresql需要停止該服務,沒有則忽略
[root@ip-172-31-3-217 ~]# service cloudera-scm-server-db stop
6.2卸載Cloudera Manager Server和數據庫
使用yum卸載cloudera-scm-server和cloudera-scm-server-db-2,命令如下
[root@ip-172-31-3-217 ~]# yum remove cloudera-manager-server
#如果使用內置db postgresql需要移除該服務,沒有則忽略
[root@ip-172-31-3-217 ~]# yum remove cloudera-manager-server-db-2
7.卸載Cloudera Manager Agent和Managed Software
在集群所有的機器上進行如下操作,卸載Cloudera Manager Agent 和Managed Software。
7.1停止Cloudera Manager Agent
在所有服務器上使用如下命令停止Cloudera Manager Agent 服務
[root@ip-172-31-3-217 ~]# sudo service cloudera-scm-agent hard_stop
7.2卸載軟件
在集群所有節點執行如下操作:
[root@ip-172-31-3-217 ~]# yum remove 'cloudera-manager-*' avro-tools crunch flume-ng hadoop-hdfs-fuse hadoop-hdfs-nfs3 hadoop-httpfs hadoop-kms hbase-solr hive-hbase hive-webhcat hue-beeswax hue-hbase hue-impala hue-pig hue-plugins hue-rdbms hue-search hue-spark hue-sqoop hue-zookeeper impala impala-shell kite llama mahout oozie pig pig-udf-datafu search sentry solr-mapreduce spark-core spark-master spark-worker spark-history-server spark-python sqoop sqoop2 whirr hue-common oozie-client solr solr-doc sqoop2-client zookeeper
7.3運行清除命令
在集群所有節點執行如下操作:
[root@ip-172-31-3-217 ~]# yum clean all
8.移除Cloudera Manager和用戶數據
8.1殺死 Cloudera Manager和Managed進程
在集群所有節點執行如下操作,將所有服務器的Cloudera Manager和Managed進程殺死,命令如下:
8.2移除Cloudera Manager數據
在集群所有節點執行如下命令,刪除所有Cloudera Manager數據
umount cm_processes
rm –rf /usr/share/cmf /var/lib/cloudera* /var/cache/yum/x86_64/6/cloudera* /var/log/cloudera* /var/run/cloudera* /etc/cloudera* /usr/lib64/cmf
8.3移除Cloudera Manager Lock File
在集群中所有節點執行如下命令,刪除Cloudera Manager Lock File
rm –rf /tmp/.scm_prepare_node.lock
8.4移除用戶數據
此步驟將永久刪除所有用戶數據。為了備份數據,在啟動卸載過程之前,使用distcp命令將其復制到另一個集群中。在集群中所有節點執行如下命令,刪除用戶所有數據:
8.5停止并移除外部數據庫
在安裝mysql的服務器上進行操作。
service mysqld stop
yum remove mysql*
rm –rf /var/lib/mysql
9.一鍵卸載腳本說明(GitHub地址)
autouninstall.sh:自動卸載腳本
components.list:集群所有安裝的組件列表
delete.list:需要刪除的目錄列表,列表中已配置大部分CDH安裝默認目錄,用戶需要對列表末尾的hdfs目錄根據自己集群環境進行目錄進行相應調整,如下圖所示:
node.list:集群所有節點,根據集群環境進行節點配置
user.list:集群所有組件安裝時所使用的用戶名
注:腳本是在第五步操作完成后,在namenode節點進行一鍵卸載
運行截圖
源碼地址:
https://github.com/javaxsky/cdh-shell
醉酒鞭名馬,少年多浮夸! 嶺南浣溪沙,嘔吐酒肆下!摯友不肯放,數據玩的花!
溫馨提示:要看高清無碼套圖,請使用手機打開并單擊圖片放大查看。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。