CDH 6.3.0升级至6.3.2

记录一次CDH从6.3.0版本升级到6.3.2版本过程,其中部分截图遗失可能会影响直观效果。

一、前期准备:

在进行 CDH minor 版本升级之前需先对 CM 进行升级,CM 对之前的版本向下兼容,比如 6.3.0不能管理 6.3.0 之上的版本却能管理小于版本号 6.3.0以下的版本。

follow 官方文档首先我们通过 reference 的第一个链接进入到对 cm 升级准备页面。

然后通过相关命令查看目前主机以及 CM CDH 系统的情况,并将信息填入上面的 prepare my environment 中。下面的升级步骤都会 follow 这里选择的东西不要填错或者乱填

查看 Operating System

[root@alisa99 ~]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.4.1708 (Core)
Release: 7.4.1708
Codename: Core

查看目前 CM 使用的 metastore 情况 (这里CDH用的数据库为postgresql型数据库)

[root@alisa99 ~]# cat /etc/cloudera-scm-server/db.properties 
# Auto-generated by scm_prepare_database.sh on Tue Jun 23 10:54:43 CST 2020
#
# For information describing how to configure the Cloudera Manager Server
# to connect to databases, see the "Cloudera Manager Installation Guide."
#
com.cloudera.cmf.db.type=postgresql
com.cloudera.cmf.db.host=mpp99
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.setupType=EXTERNAL
com.cloudera.cmf.db.password=Passw0rd!

下面就是做一些备份数据的工作,通常意义上来说,如果我们进行 major 版本的升级,这一步的工序应该非常多非常复杂,但是进行 minor 或者 maintaince 级别的升级相对来说改动较少会稍微轻松一点,需要注意的地方没有那么多。但是该做的备份我们还是给做上,确保可回滚。

二、 备份相关监控和 scm 数据库组件:

备份 CMA(Cloudera Manager Agent)

备份文件夹

 
[root@alisa97 ~]# cp /etc/default/cloudera-scm-agent /etc/default/cloudera-scm-agent.bak
[root@alisa97 ~]# cp -r /var/run/cloudera-scm-agent/ /var/run/cloudera-scm-agent_bak
[root@alisa97 ~]# cp -r /var/lib/cloudera-scm-agent/ /var/lib/cloudera-scm-agent_bak
 

备份数据库

[root@alisa99 ~]# pg_dump -p 5432 -U scm -c -f scm_bak.sql scm

备份 CMS(Cloudera Management Service) 信息

备份 Service monitor 信息
[root@alisa97 ~]# cp -rp /var/lib/cloudera-service-monitor/ /var/lib/cloudera-service-monitor_bak
备份 Host monitor 信息
[root@alisa97 ~]# cp -rp /var/lib/cloudera-host-monitor/ /var/lib/cloudera-host-monitor_bak
备份 Event Server 信息
[root@alisa97 ~]# cp -rp /var/lib/cloudera-scm-eventserver/ /var/lib/cloudera-scm-eventserver_bak
备份 cms 信息
[root@alisa97 ~]# cp -rp /etc/default/cloudera-scm-server /etc/default/cloudera-scm-server_bak

3. 开始升级过程:

注意所有的升级过程期间最好保证 cm 是正常退出的情况包括 scm 和 cm-agent 是停止的情况。并且要保障期间不会有任何快照之类的 job 还在执行,否则可能导致升级之后 cm 起不来。

停止服务

[root@alisa97 ~]# systemctl stop cloudera-scm-agent 
[root@alisa97 ~]# systemctl stop cloudera-scm-service
其他两台机器停止agent端即可

我们需要将相关安装包下载并上次服务器目录下并传到agent端,然后进行升级安装。

[root@alisa97 /opt/softs/CDH6.3.2/CM]# ls
cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm
[root@alisa97 /opt/softs/CDH6.3.2/CM]# yum upgrade cloudera-manager-server cloudera-manager-daemons cloudera-manager-agent (server端)
[root@alisa97 /opt/softs/CDH6.3.2/CM]# yum upgrade cloudera-manager-daemons cloudera-manager-agent (agent端)

检验:

[root@alisa97 /opt/softs/CDH6.3.2/CM]# rpm -qa |grep cloudera
cloudera-manager-agent-6.3.1-1466458.el7.x86_64 cloudera-manager-server-6.3.1-1466458.el7.x86_64 cloudera-manager-daemons-6.3.1-1466458.el7.x86_64

[root@alisa99 /var/lib]# rpm -qa |grep cloudera cloudera-manager-daemons-6.3.1-1466458.el7.x86_64 cloudera-manager-agent-6.3.1-1466458.el7.x86_64
完成升级启动我们的 agent 服务和 scm 服务

来到此界面,如果没能来到此界面可以参考日志进行一些排错

tail -f  -n 900 /var/log/cloudera-scm-server/cloudera-scm-server.log
tail -f  -n 900 /var/log/cloudera-scm-agent/cloudera-scm-agent.log
tail -f  -n 900 /var/log/messages

到此我们当我们完成 CM 6.3.2的升级之后,我们已经相当于完成了80% minor 的升级。接下来我们对CM进行升级。

[root@alisa97 /opt/softs/CDH6.3.2]# ls
CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel  CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha1    manifest.json
[root@alisa97 /opt/softs/CDH6.3.2]# cp CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel /opt/cloudera/parcel-repo
[root@alisa97 /opt/softs/CDH6.3.2]# cp CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha1 /opt/cloudera/parcel-repo
这里需要注意的是复制6.3.2的CM包到 /opt/cloudera/parcel-repo 下后需要将之前的6.3.0的包相应删除或者移出此目录。

之后我们有两种办法触发集群升级。

1. 直接在该界面点击分发 distribute。

2. 去 home 页面 下拉菜单中点击「升级集群 upgrade cluster」按钮。

 

建议使用第二种,不管使用那种最终都会走到同样的地方。

然后一路 follow 选项和配置,关注自己关注的事项。

 然后一路顺利的话我们的升级工作已经完成。我们可在web界面检验

 这里面的黄色是我后来接的图,并不影响CDH的运行。

另外升级完成之后需要注意,官方提供的步骤8 最终化 hdfs 元数据。

这一步执行之后在没有之前 hdfs 备份的情况下无法对 hdfs 进行回滚了。

我们可以在执行这一步之前,一直运行一段时间来确保我们整个升级没有任何问题,比如运行个一周啥的。

最后我们 在 activate  namenode 节点进行最终元数据升级来完成整个升级流程。

至此我们的CDH从 6.3.0 升级到 6.3.2 已经完成。

猜你喜欢

转载自www.cnblogs.com/alisapine/p/13201935.html
CDH