升级主要分为两部分1.CM的升级、2.CDH的升级
CM的升级###
两种升级方法
- 1.使用package
- 2.使用Tarballs升级方法,参照官方升级指引,Tarball中包含了
Cloudera Manager Server
和Cloudera Manager Agent
通常情况下升级CM和升级CDH是两个独立的过程,可以在不关闭CDH服务的情况下升级CM,然后再升级CDH,升级CM主要分为以下几个步骤
1.收集升级信息####
在升级之前收集与CM相关的信息,包括账户、密码、数据库URLs等。
1.有root用户权限或者起码有sudo权限
2.查看CM、JDK的版本
3.CDH的版本
进入CM主页面4.所安装的服务
5.查看系统版本
hosts->All Hosts 随便点击一个主机
2.完成升级前的准备####
1.本次要升级到的版本为5.13.X,支持的OS版本
2.查看用户自定义的服务
Administration->setting->Custom Service Descriptors
3.升级JDK####
升级JDK到1.8.
在页面设置java的目录:主机(Hosts)->所有主机(All Hosts)->配置(Configuration)->类别(CATEGORY)->高级(Advanced)。这样做仅仅修改了CM和CDH依赖的JDK,并不会影响要其他的进程
4.升级CM####
- 1.停止CM server、DB和agent
- a.关闭CM服务
Cluster->Cloudera Managent service->Action->Stop
, - b.在server上面运行
sudo service cloudera-scm-server stop
- c.在agent上面运行
sudo service cloudera-scm-agent stop
- a.关闭CM服务
- 2.下载CM文件网址,5.13x的tarballs链接。rpm安装包路径
方法一 4.1 package升级CM#####
- 1.确保所有主机上进程服务都关闭
sudo service cloudera-scm-agent status #查看状态
sudo service cloudera-scm-server-db stop #关闭内嵌数据库,如果没有这个服务可跳过
sudo service cloudera-scm-server stop #关闭server
sudo service cloudera-scm-agent stop # 关闭agent
- 2.备份CM数据库
在CM的server机器上/etc/cloudera-scm-server
文件
[hadoop@175-45-5-195 cloudera-scm-server]$ sudo cat db.properties
# Auto-generated by initialize_embedded_db.sh
com.cloudera.cmf.db.type=postgresql
com.cloudera.cmf.db.host=localhost:7432
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.password=3Emd1VtlcK
根据上面的内容备份postgresql数据库
pg_dump -hlocalhost -p 7432 -U scm > /tmp/scm_server_db_backup.$(date +%Y%m%d)
如果使用rpm安装,需要配置/etc/yum.repos.d/cloudera-manager.repo
的源
sudo yum clean all
sudo yum upgrade cloudera-manager-server cloudera-manager-daemons cloudera-manager-server-db-2 cloudera-manager-agent
上面是自动下载组件,CM的安装包比较的大不到1G,如果网速不够好可以下载到本地
sudo yum localinstall cloudera-manager-*
在Agent上面安装成功之后,在/etc/cloudera-scm-agent
下面生成了、config.ini.rpmnew
文件,这个是一些比较新的配置,你需要将原来config.ini
文件中的一些用户配置添加到config.ini.rpmnew中,并将其修改为config.ini,删掉老的config.ini文件。
需要在server和agent上面开启相关服务
sudo service cloudera-scm-server-db start
sudo service cloudera-scm-server start
sudo service cloudera-scm-agent start
方法二 4.2 tarball升级CM#####
- 1.解压Tarball包
解压文件到/opt/
目录
sudo tar xzf cloudera-manager*.tar.gz -C /opt/cloudera-manager
- 2.默认情况下tarball安装方式会有一个
var
子目录用来存储状态文件,非tarball安装方式的状态存储在/var
目录下,CM建议使用/var
或者tarball外部的目录,这样在升级的过程中新的tarball就可以访问这些状态文件,那么该如何设置这个目录呢?修改\cm-5.13.0\etc\default\
下面cloudera-scm-agent
文件,设置CMF_VAR
的值。
CDH的升级###
使用parcels方法升级参照官网
备份数据库,parcels目录
接下来就是根据提示进行选择