升级主要分为两部分1.CM的升级、2.CDH的升级

CM的升级###

两种升级方法

  • 1.使用package
  • 2.使用Tarballs升级方法,参照官方升级指引,Tarball中包含了Cloudera Manager ServerCloudera Manager Agent 通常情况下升级CM和升级CDH是两个独立的过程,可以在不关闭CDH服务的情况下升级CM,然后再升级CDH,升级CM主要分为以下几个步骤

1.收集升级信息####

在升级之前收集与CM相关的信息,包括账户、密码、数据库URLs等。

  • 1.有root用户权限或者起码有sudo权限
  • 2.查看CM、JDK的版本
  • CDH 的spark开发 cdh spark升级_安装包


  • CDH 的spark开发 cdh spark升级_开发_02

  • 3.CDH的版本
  • 进入CM主页面
  • CDH 的spark开发 cdh spark升级_开发_03

  • 4.所安装的服务
  • CDH 的spark开发 cdh spark升级_数据库_04

  • 5.查看系统版本
  • hosts->All Hosts 随便点击一个主机
  • CDH 的spark开发 cdh spark升级_cloudera_05

2.完成升级前的准备####

  • 1.本次要升级到的版本为5.13.X,支持的OS版本
  • CDH 的spark开发 cdh spark升级_数据库_06

  • 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
方法一 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目录

CDH 的spark开发 cdh spark升级_安装包_07

接下来就是根据提示进行选择

ref###