如何卸载CDH(附一键卸载github源码)

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数据

hdfs数据备份

使用distcp进行集群之间数据复制进行hdfs数据备份,备份操作如下:

hadoop distcp hftp://namenodeA:port/xxx/ hdfs://namenodeB/xxx

注:此命令需运行在目标集群中执行,确保目标集群空间足够,以上数据目录根据自己集群的真实环境做相应的修改;

namenodeA:源集群namenode节点ip地址
port:源集群端口,默认50070
namenodeB:目标集群namenode节点ip地址
xxx:对应hdfs的数据目录

namenode节点元数据备份

登录namenode服务器上,进行如下操作:

[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目录进行如下操作:

#进入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元数据

  • 在Mysql安装的服务器上,执行如下操作,备份hive元数据信息


注:如果有hue,sentry,Navigator数据库可以同样备份

2.3备份CDH集群配置数据

通过Cloudera Manager提供的API接口,导出一份JSON文档,该文档包含Cloudera 管理器实例的配置数据,可以通过这份JSON文档备份或恢复Cloudera管理器的部署。

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数据目录备份

  • 备份所有Zookeeper服务器的数据目录,以172.31.3.217为例操作如下:

| root@ip-172-31-3-217 ~# mkdir zookeeper_backroot@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/dfsdata_drive_path/mapreddata_drive_path/yarn |

|:----|

如需备份相关组件数据,可参考2.4进行数据备份。

3.停止所有服务

3.1打开Cloudera Manager控制台

image

3.2关闭集群

停止CDH集群,如下图所示操作

image

点击确认操作,如下图所示

image

等待所有服务器停止操作成功,如下图所示

image

3.3关闭Cloudera Management Service

停止Cloudera Manager Service,如下图所示

image

点击确认对话框,如下图所示

image

等待服务停止成功,如下图所示

image

4.解除并移除Parcels

在Cloudera Manager管理界面,进行如下操作

image

点击上图标识功能,进入如下界面

image

点击上图标识,选择【仅限停用状态】,点击【确定】

image

停用后,状态变为“激活”,如下图所示

image

点击“激活”旁菜单,选择“从主机删除”,如下图所示


image

点击确认,如下图所示

image

删除成功后显示如下

image

5.删除集群

点击Clouder Manager进入主页,如下图所示

image

删除集群,如下操作

image

点击“删除”操作,如下图所示

image

删除成功后显示如下

image

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进程杀死,命令如下:

image

8.2移除Cloudera Manager数据

在集群所有节点执行如下命令,删除所有Cloudera Manager数据

| umount cm_processesrm –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命令将其复制到另一个集群中。在集群中所有节点执行如下命令,删除用户所有数据:

image

8.5停止并移除外部数据库

在安装mysql的服务器上进行操作。

  • 停止mysql数据库,操作如下:

| service mysqld stop |

|:----|

  • 卸载mysql数据库,操作如下

| yum remove mysql* |

|:----|

  • 删除mysql数据目录,操作如下

| rm –rf /var/lib/mysql |

|:----|

9.一键卸载脚本说明(GitHub地址)

  • 卸载脚本说明:
image

autouninstall.sh:自动卸载脚本

components.list:集群所有安装的组件列表

delete.list:需要删除的目录列表,列表中已配置大部分CDH安装默认目录,用户需要对列表末尾的hdfs目录根据自己集群环境进行目录进行相应调整,如下图所示:

image

node.list:集群所有节点,根据集群环境进行节点配置

user.list:集群所有组件安装时所使用的用户名

  • 脚本使用
image

注:脚本是在第五步操作完成后,在namenode节点进行一键卸载

运行截图

image
image

源码地址: https://github.com/javaxsky/cdh-shell

转载:https://cloud.tencent.com/developer/article/1077601

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,783评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,360评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,942评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,507评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,324评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,299评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,685评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,358评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,652评论 1 293
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,704评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,465评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,318评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,711评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,991评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,265评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,661评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,864评论 2 335

推荐阅读更多精彩内容

  • 翻译: https://www.cloudera.com/documentation/enterprise/lat...
    金刚_30bf阅读 2,585评论 1 1
  • 文:星野半阙 今天要写的话题是“善良”二字,半阙有时候觉得做一个善良的人很简单,简单到看到路边的乞丐老人,你用双手...
    星野与半阙阅读 485评论 0 1
  • 早晨起床拉开窗帘一看,又下雨了,一个月继继续续的雨下的人心烦意乱的。 昨天虽然阴着天,但是却没落雨,晚上吃过饭,赶...
    却上心头68阅读 398评论 0 0
  • 树荫下 小河旁 他望着她 她看了看他 笑了 害羞的将脸转向其他的地方
    学理的伪文青阅读 118评论 0 1
  • 1. 刷着刷着微博,看到最新关注的一位作者因为一篇文章热度大增。 不过望眼评论区,一水儿的喷子横行,说什么你读书少...
    楚艺白阅读 615评论 3 9