0009-如何升级Cloudera Manager和CDH

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

1.文档编写目的

本文档讲述如何升级Cloudera Manager和CDH,通过本文档,您将学习到以下知识:

1.如何对Cloudera Manager进行停机升级

2.如何对CDH进行停机升级

3.如何在不影响集群作业的情况下进行CDH滚动升级

文档主要分为以下几步:

1.Cloudera升级概述

2.Minor版本Cloudera Manager和CDH升级

3.Maintenance版本滚动升级CDH

4.滚动升级时进行任务验证

5.集群升级完成后功能验证

这篇文档将重点介绍CDH升级,并基于以下假设:

1.CDH5.4.3环境已搭建并正常运行

2.集群服务(CM、HBase、HDFS、Hive、Hue、Oozie、Spark、Yarn、Zookeeper)

3.Cloudera Manager使用rpm安装

4.CDH使用parcels安装

5.集群未配置Kerberos

以下是本次测试环境,但不是本操作手册的硬限制:

1.操作系统:Redhat6.5

2.旧CM/CDH版本:CM5.4.3/ CDH5.4.3

3.CM/CDH的目标升级版本:CM5.11.1/ CDH5.11.1

4.采用sudo权限的ec2-user用户进行操作

升级建议:

1.针对CDH的Maintenance Version升级,可以使用滚动升级,比如:5.4.x升级到5.4.y,这种版本升级主要修复bug,不改动API,也不涉及新的功能。

2.针对CDH的Minor Version升级,建议停机升级或者滚动升级(如果跨度不大),比如5.x.x升级到5.y.y,这种版本升级主要是增加新的功能和新的API。

3.针对CDH的Major Version升级,建议必须停机升级,而且在升级前需要对已有应用和作业的改造和升级进行完备的测试验证,相应升级时停机时间会较长,这种版本升级一般是Hadoop相关组件的大版本升级,可能会改动API。

2.Cloudera升级概述

下面描述的流程适用于由Cloudera Manager管理的集群,对于不是由Cloudera Manager管理的集群升级,请参考:https://www.cloudera.com/documentation/enterprise/latest/topics/cdh/_ig/_upgrade/_command/_line.html#xd/_583c10bfdbd326ba–5a52cca-1476e7473cd–7f99

你可以使用tarballs或operating system packages来升级Cloudera Manager,然后使用packages或parcels来升级CDH。同时有可能还需要安装一个新版JDK。升级Cloudera Manager的同时Cloudera Navigator也会被升级。

CDH和Cloudera Manager不用同时升级,但是需要保证Cloudera Manager和CDH版本的兼容。Cloudera Manager可以管理当前或以前的major版本的CDH,或相同minor版本的CDH,或较低minor版本的CDH。比如,Cloudear Manager 5.7.1可以管理CDH5.7.2,CDH5.6.1和CDH4.8.6,但是不能管理CDH5.8.1. Cloudera Manager5.x不能管理CDH3.x。

升级时具体有如下几种选择:

0009-如何升级Cloudera Manager和CDH

2.1评估升级影响

一般需要规划一个足够长的维护窗口(停机时间)进行升级。根据需要升级的组件,集群的节点数,以及不同的硬件情况,你可能需要一整天来进行升级。开始升级之前,你需要做好一些前置条件准备以及关键数据备份,这篇文档在讲述升级步骤时也会说明。

升级之前,需要查阅Cloudera Manager的https://www.cloudera.com/documentation/enterprise/release-notes/topics/rg/_release/_notes.html,了解API更改,不推荐的功能,新的功能以及不兼容的更改。同时需要检查https://www.cloudera.com/documentation/enterprise/release-notes/topics/rn/_consolidated/_pcm.html来确认支持的操作系统,JDK,数据库和其他组件。

一共有三种版本的升级:major,minor和maintenance。

Major升级

Major版本的升级通常有以下特征:

Hadoop的大版本变化,涉及很多更新内容

  • 不兼容的数据格式
  • Cloudera Manager界面的重大变化
  • Cloudera Manager的数据库schema变动,不过可以在升级过程中自动被处理
  • 需要较长的停机时间
  • 需要重新部署客户端

你也可以只升级major版本,而保持minor版本不变,比如你可以从4.8.1升级到5.8.0. 为了方便下一个major版本的升级(CDH6),我们建议您现在可以将集群升级到5.x

Minor版本升级

Minor版本升级是指基于同样的major版本将minor版本进行升级,比如从5.4.x升级到5.8.x,一般有以下特征:

  • 新的功能
  • Bug修复
  • 可能存在的数据库schema更改会在Cloudera Manager升级时自动被处理

一般来说,minor版本的升级不包括不兼容的更改或者数据格式的变化。客户端配置(https://www.cloudera.com/documentation/enterprise/latest/topics/cm/_mc/_client/_config.html#cmug/_topic/_5/_9)会被重置。

Maintenance版本升级

Maintenance版本升级主要是重大bug修复或者解决一些安全问题。不会有兼容性修改和新功能。

2.2Cloudera Manager升级概述

0009-如何升级Cloudera Manager和CDH

升级Cloudera Manager包括以下步骤:

1.在CM节点上升级Cloudera Manager Server,使用操作系统的命令,比如Redhat的yum。也可以手动通过tarballs来升级。tarballs升级比较适合集群中已经有一些可以同时操作多台机器的脚本,程序或工具。

2.在所有主机上升级Cloudera Manager agent,Cloudera Manager的升级向导可以帮助你升级agent(JDK升级可选),同时也可以手动的通过tarballs升级JDK和agent。在这个过程中,CDH并不会被升级。

Cloudera Manager升级,可以参考官网文档:https://www.cloudera.com/documentation/enterprise/latest/topics/cm/_upgrade.html#concept/_q1q/_mbs/_wx

2.3CDH升级概述

0009-如何升级Cloudera Manager和CDH

CDH升级包含Hadoop相关组件的升级,你可以使用Cloudera Manager来升级CDH,采用parcel或package的方式都可以。

2.3.1使用Parcel升级(同时适用于滚动升级)

我们建议使用parcels来升级CDH,因为Cloudera Manager管理这些parcels自动下载,分发和激活。有两种方式的升级:

  • Parcels:需要重启集群才能完成升级。
  • 滚动升级:如果HDFS启用了高可用HA,可以在不重启集群的情况下进行滚动升级。为了简化升级步骤,可以考虑从package切换到parcels,这样Cloudera Manager可以大大简化升级步骤。在升级CDH5的时候你从package切换到parcels也可以。

2.3.2使用Packages升级

使用packages升级需要你提前下载好需要升级的packages,然后手动的运行package更新命令来升级,注意所有主机都需要进行相同的操作。

从Cloudera Manager5.3开始,CDH提供向导式的升级包括major版本升级(CDH5到CDH5),minor版本升级(CDH5.x到5.y)和maintenance版本升级(CDHa.b.x到CDHa.b.y)。无论你是使用parcels安装还是package都支持,但是package需要你手动安装和升级,但是parcels可以被Cloudera Manager自动安装和升级。

2.4Cloudera Navigator升级概述

当升级Cloudera Manager的时候,Cloudera Navigator Metadata和Audit servers会被自动升级。你还可以升级其他的Navigator组件比如Cloudera Navigator Key Trustee Server, Cloudera Navigator Key HSM和Cloudera Navigator Encrypt。当然也可以选择不升级。

2.5JDK升级

在升级Cloudera Manager和CDH之前,请确保集群内的所有主机都是使用受支持的Oracle JDK,参考:https://www.cloudera.com/documentation/enterprise/release-notes/topics/rn/_consolidated/_pcm.html。同时,所有主机必须使用相同版本的JDK:参考:https://www.cloudera.com/documentation/enterprise/latest/topics/cdh/_cm/_upgrading/_to/_jdk8.html#xd/_583c10bfdbd326ba-590cb1d1-149e9ca9886–7c46

3.Minor版本升级

升级前置条件:

1.确保当前系统版本支持您要升级到的新版本CDH5和Cloudera Manager5

2.原Cloudera Manager和CDH的版本为5.4.3

3.Cloudera Manager和CDH的目标升级版本为5.11.1

3.1Cloudera Manager升级

本章节主要讲述如何使用RPM包升级Cloudera Manager。

3.1.1升级前准备

3.1.1.1Cloudera Manager的yum源配置

1.准备待升级rpm包

wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.11.1/RPMS/x86_64/cloudera-manager-agent-5.11.1-1.cm5111.p0.9.el6.x86_64.rpm

wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.11.1/RPMS/x86_64/cloudera-manager-daemons-5.11.1-1.cm5111.p0.9.el6.x86_64.rpm

wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.11.1/RPMS/x86_64/cloudera-manager-server-5.11.1-1.cm5111.p0.9.el6.x86_64.rpm

wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.11.1/RPMS/x86_64/cloudera-manager-server-db-2-5.11.1-1.cm5111.p0.9.el6.x86_64.rpm

wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.11.1/RPMS/x86_64/enterprise-debuginfo-5.11.1-1.cm5111.p0.9.el6.x86_64.rpm

wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.11.1/RPMS/x86_64/jdk-6u31-linux-amd64.rpm

wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.11.1/RPMS/x86_64/oracle-j2sdk1.7-1.7.0+update67-1.x86_64.rpm

2.将下载的安装包放在/var/www/html/cm5.11.1目录下

0009-如何升级Cloudera Manager和CDH

进入cm5.11.1目录,运行命令:

[ec2-user@ip-172-31-8-141 cm5.11.1]$ sudo createrepo .

0009-如何升级Cloudera Manager和CDH

3.验证是否能通过浏览器访问

0009-如何升级Cloudera Manager和CDH

4.配置/etc/yum.repos.d/cloudera-manager.repo文件,内容如下

[cloudera-manager]

name = Cloudera Manager, Version 5.11.1

baseurl = http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.11.1/

gpgcheck = 0

5.测试yum源是否正常

[ec2-user@ip-172-31-8-141 yum.repos.d]$ sudo yum clean all

[ec2-user@ip-172-31-8-141 yum.repos.d]$ sudo yum repolist

0009-如何升级Cloudera Manager和CDH

3.1.1.2备份Cloudera Manager数据库

1.停止Cloudera Management Service服务

0009-如何升级Cloudera Manager和CDH

2.备份Cloudera Manager数据库,在命令行执行如下命令

l Cloudera Manager Server

l Cloudera Navigator Audit Server

l Cloudera Navigator Metadata Server

l Activity Monitor

l Reports Manager

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u cm -p --databases cm >cm.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u nas -p --databases nas >nas.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u nms -p --databases nms >nms.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u am -p --databases am >am.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u rm -p --databases rm >rm.dump

0009-如何升级Cloudera Manager和CDH

查找数据库相关的信息,可从如下文件中查找

ClouderaManager Server的数据库信息,通过配置文件/etc/cloudera-scm-server/db.properties获取

0009-如何升级Cloudera Manager和CDH

其它服务的数据库信息,可以通过CM管理界面获取

0009-如何升级Cloudera Manager和CDH

3.1.2升级步骤

1.停止Cloudera Management Service服务

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

2.停止Cloudera Manager Server和agent

停止所有服务器的cloudera-scm-agent服务


[ec2-user@ip-172-31-8-141 ~]$ sudo service cloudera-scm-agent stop

0009-如何升级Cloudera Manager和CDH

在运行Cloudera Manager服务器的主机上,停止cloudera-scm-server服务

[ec2-user@ip-172-31-8-141 cdh-shell-master]$ sudo service cloudera-scm-server stop

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

3.在Cloudera Manager上备份以下目录

[ec2-user@ip-172-31-8-141 cm_bak]$ sudo scp -r /etc/cloudera-scm-server/ /home/ec2-user/upgrade/cm_bak/

[ec2-user@ip-172-31-8-141 cm_bak]$ sudo scp -r /etc/cloudera-scm-agent/ /home/ec2-user/upgrade/cm_bak/

0009-如何升级Cloudera Manager和CDH

注意文件目录权限与原数据目录权限一致。

4.运行以下命令进行Cloudera Manager Server升级


[ec2-user@ip-172-31-8-141 cm_bak]$ sudo yum -y upgrade cloudera-manager-server cloudera-manager-daemons cloudera-manager-agent

0009-如何升级Cloudera Manager和CDH

检查是否安装成功

[ec2-user@ip-172-31-8-141 cm_bak]$ rpm -qa |grep cloudera-

0009-如何升级Cloudera Manager和CDH

5.启动Cloudera Manager Server服务

[ec2-user@ip-172-31-8-141 cloudera-scm-agent]$ sudo service cloudera-scm-server start

0009-如何升级Cloudera Manager和CDH

6.登录Cloudera Manager管理控制台,显示升级向导

0009-如何升级Cloudera Manager和CDH

7.选择升级Cloudera Manager Agent软件包,继续

0009-如何升级Cloudera Manager和CDH

8.选择“自定义存储库”,配置2.1.2章节的地址,点击“继续”

0009-如何升级Cloudera Manager和CDH

9.选择JDK选择,点击“继续”

0009-如何升级Cloudera Manager和CDH

10.根据要求输入SSH登录凭证,点击“继续”

0009-如何升级Cloudera Manager和CDH

11.等待安装完成,点击“继续”

0009-如何升级Cloudera Manager和CDH

12.检查完成,点击“完成”

0009-如何升级Cloudera Manager和CDH

13.进入审核更改向导界面,点击“继续”

0009-如何升级Cloudera Manager和CDH

14.选择重启Cloudera Management Service,点击“继续”

0009-如何升级Cloudera Manager和CDH

15.服务重启成功,点击“完成”

0009-如何升级Cloudera Manager和CDH

集群服务任在正常运行

0009-如何升级Cloudera Manager和CDH

Cloudera Manager在升级后报告过时的配置,请重新启动集群服务并重新部署客户端配置

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

3.1.3Cloudera Manager升级验证

1.查看Cloudera Manager版本

0009-如何升级Cloudera Manager和CDH

版本显示为升级后版本

2.验证Agent是否向Cloudera Manager发送心跳

0009-如何升级Cloudera Manager和CDH

默认情况下,该心跳为15s一次;

3.检查所有主机

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

4.集群历史监控数据

0009-如何升级Cloudera Manager和CDH

3.2CDH升级

3.2.1升级前准备

3.2.1.1准备CDH的parcels包

1.选择cdh6.11.1版本下载对应的parcels

wget http://archive.cloudera.com/cdh6/parcels/5.11.1/CDH-5.11.1-1.cdh6.11.1.p0.4-el6.parcel

wget http://archive.cloudera.com/cdh6/parcels/5.11.1/CDH-5.11.1-1.cdh6.11.1.p0.4-el6.parcel.sha1

wget http://archive.cloudera.com/cdh6/parcels/5.11.1/manifest.json

2.将下载下来的3个文件,放在/var/www/html/cdh6.11.1目录下

0009-如何升级Cloudera Manager和CDH

3.测试通过http是否能正常访问

0009-如何升级Cloudera Manager和CDH

配置完成后,供后面升级CDH使用

3.2.2升级流程

1.停止集群服务

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

2.备份NameNode上的HDFS Metastore

0009-如何升级Cloudera Manager和CDH

在NameNode节点上备份该目录到指定目录下

[ec2-user@ip-172-31-8-141 dfs]$ cd /dfs/

[ec2-user@ip-172-31-8-141 dfs]$ sudo tar -czvf /home/ec2-user/upgrade/nn_bak/nn_backup.tar.gz nn/

0009-如何升级Cloudera Manager和CDH

3.备份数据库

l Cloudera Manager Server

[ec2-user@ip-172-31-8-141 hadoopdb_bak]$ mysqldump -u hue -p --database hue >hue.dump

[ec2-user@ip-172-31-8-141 hadoopdb_bak]$ mysqldump -u hive -p --database metastore >metastore.dump

[ec2-user@ip-172-31-8-141 hadoopdb_bak]$ mysqldump -u oozie -p --database oozie >oozie.dump

[ec2-user@ip-172-31-8-141 hadoopdb_bak]$ mysqldump -u sentry -p --database sentry >sentry.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u cm -p --databases cm >cm.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u nas -p --databases nas >nas.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u nms -p --databases nms >nms.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u am -p --databases am >am.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u rm -p --databases rm >rm.dump

0009-如何升级Cloudera Manager和CDH

4.向集群中添加新版的CDH存储库

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

5.运行升级向导

0009-如何升级Cloudera Manager和CDH

6.进入升级向导界面

0009-如何升级Cloudera Manager和CDH

7.确认CDH版本是否正确,点击“继续”

0009-如何升级Cloudera Manager和CDH

8.选择“是”,点击“继续”

0009-如何升级Cloudera Manager和CDH

9.点击“继续”

0009-如何升级Cloudera Manager和CDH

10.等待安装完成后,点击“继续”

0009-如何升级Cloudera Manager和CDH

11.检查主机完成后,点击“继续”

0009-如何升级Cloudera Manager和CDH

12.选择完整集群升级,点击“继续”

0009-如何升级Cloudera Manager和CDH

13.等待升级集群命令完成,点击“继续”

0009-如何升级Cloudera Manager和CDH

14.集群升级成功

0009-如何升级Cloudera Manager和CDH

15.最终化元数据升级

在最终化元数据之前,进行几天甚至几周的运行观察集群是否正常,在发现所有任务都没有任何异常情况后,再进行最终化元数据操作。一旦进行最终化元数据之后,就不能回滚到老的版本了,除非有数据备份。对NameNode的主备节点都执行最终化元数据升级操作:

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

3.2.3功能验证

1.运行一个MapReduce作业

登录集群服务器,操作如下指令

sudo -u hdfs hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 10 100

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

2.用Hue测试

0009-如何升级Cloudera Manager和CDH

Hue正常登录,通过Hue操作HBase,向HBase中新建一个test表

0009-如何升级Cloudera Manager和CDH

向test表中添加一条数据

0009-如何升级Cloudera Manager和CDH

数据添加成功

0009-如何升级Cloudera Manager和CDH

通过hbase-shell查看该表是否存在

0009-如何升级Cloudera Manager和CDH

3.测试hive

beeline登录hive进行测试

0009-如何升级Cloudera Manager和CDH

Hue测试hive

0009-如何升级Cloudera Manager和CDH

能正常查询test表数据

0009-如何升级Cloudera Manager和CDH

4.CDH的Maintenance版本滚动升级

升级前置条件:

  1. 确保当前系统版本支持您要升级到的新版本CDH5和Cloudera Manager5
  2. 原Cloudera Manager和CDH的版本为5.10.0
  3. Cloudera Manager和CDH的目标升级版本为5.10.2
  4. 集群已开启NameNode高可用
  5. 集群已开启Resource Manager高可用

4.1Cloudera Manager升级

4.1.1升级前准备

4.1.1.1Cloudera Manager 的yum源配置

1.下载Cloudera Manager的RPM安装包

sudo wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.10.2/RPMS/x86_64/cloudera-manager-agent-5.10.2-1.cm5102.p0.9.el6.x86_64.rpm

sudo wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.10.2/RPMS/x86_64/cloudera-manager-daemons-5.10.2-1.cm5102.p0.9.el6.x86_64.rpm

sudo wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.10.2/RPMS/x86_64/cloudera-manager-server-5.10.2-1.cm5102.p0.9.el6.x86_64.rpm

sudo wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.10.2/RPMS/x86_64/cloudera-manager-server-db-2-5.10.2-1.cm5102.p0.9.el6.x86_64.rpm

sudo wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.10.2/RPMS/x86_64/enterprise-debuginfo-5.10.2-1.cm5102.p0.9.el6.x86_64.rpm

sudo wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.10.2/RPMS/x86_64/jdk-6u31-linux-amd64.rpm

sudo wget http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.10.2/RPMS/x86_64/oracle-j2sdk1.7-1.7.0+update67-1.x86_64.rpm

2.将下载的的7个RPM安装包,放在/var/www/html/cm5.10.2目录下

0009-如何升级Cloudera Manager和CDH

3.在该目录下执行如下命令

[ec2-user@ip-172-31-8-141 cm5.10.2]$ sudo createrepo .

0009-如何升级Cloudera Manager和CDH

4.通过浏览器测试是否能正常访问

0009-如何升级Cloudera Manager和CDH

5.修改/etc/yum.repos.d/cloudera-manager.repo配置

[ec2-user@ip-172-31-8-141 cm5.10.2]$ sudo vim /etc/yum.repos.d/cloudera-manager.repo

[cloudera-manager]

name = Cloudera Manager, Version 5.10.2

baseurl = http://ip-172-31-8-141.ap-southeast-1.compute.internal/cm5.10.2

gpgcheck = 0

6.测试Cloudera Manager的yum源是否配置好

[ec2-user@ip-172-31-8-141 cm5.10.2]$ sudo yum clean all

[ec2-user@ip-172-31-8-141 cm5.10.2]$ sudo yum repolist

0009-如何升级Cloudera Manager和CDH

4.1.1.2备份Cloudera Manager数据库

1.停止Cloudera Management Service服务和Cloudera ManagerService服务

通过Cloudera Manager 控制台,停止ClouderaManagement Service服务

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

通过如下命令停止Cloudera Manager Server服务

[ec2-user@ip-172-31-8-141 ~]$ sudo service cloudera-scm-server stop

0009-如何升级Cloudera Manager和CDH

2.备份Cloudera Manager数据库,在命令行执行如下命令

  • Cloudera Manager Server
  • Activity Monitor
  • Reports Manager
[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u cm -p --databases cm >cm.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u am -p --databases am >am.dump

[ec2-user@ip-172-31-8-141 cmdb_bak]$ mysqldump -u rm -p --databases rm >rm.dump

0009-如何升级Cloudera Manager和CDH

4.1.2升级流程

1.确保Cloudera Management Service服务已停止

0009-如何升级Cloudera Manager和CDH

2.在所有安装Cloudera Manager Agent的主机上执行以下命令,停止Agent服务

[ec2-user@ip-172-31-8-141 cdh-shell-master]$ sudo service cloudera-scm-agent stop

0009-如何升级Cloudera Manager和CDH

3.向集群提交一个MR作业

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

4.运行以下命令进行Cloudera Manager Server升级

[ec2-user@ip-172-31-8-141 cm_bak]$ sudo yum -y upgrade cloudera-manager-server cloudera-manager-daemons cloudera-manager-agent

0009-如何升级Cloudera Manager和CDH

检查是否安装成功

[ec2-user@ip-172-31-8-141 cm_bak]$ rpm -qa |grep cloudera-

0009-如何升级Cloudera Manager和CDH

5.启动Cloudera Manager Server服务,命令如下

[ec2-user@ip-172-31-8-141 cdh-shell-master]$ sudo service cloudera-scm-server start

0009-如何升级Cloudera Manager和CDH

6.登录Cloudera Manager控制台,进入显示升级向导

0009-如何升级Cloudera Manager和CDH

7.选择升级Cloudera Manager Agent,点击“继续”

0009-如何升级Cloudera Manager和CDH

8.输入Cloudera Manager存储库URL,点击“继续”

0009-如何升级Cloudera Manager和CDH

9.勾选java选项,点击“继续”

0009-如何升级Cloudera Manager和CDH

10.输入SSH登录凭证,点击“继续”

0009-如何升级Cloudera Manager和CDH

11.等待Cloudera Manager Agent升级完成,点击“继续”

0009-如何升级Cloudera Manager和CDH

12.检查完成后,点击“继续”

0009-如何升级Cloudera Manager和CDH

13.完成升级,进入升级向导页面

0009-如何升级Cloudera Manager和CDH

14.根据需要进行修改,点击“继续”

0009-如何升级Cloudera Manager和CDH

15.重启Cloudera Management Service,点击“继续”

0009-如何升级Cloudera Manager和CDH

16.点击“完成”,进入Cloudera Manager控制台主页

0009-如何升级Cloudera Manager和CDH

升级成功,并且Hadoop的相关服务均正常。

17.升级完成MR作业任在运行

0009-如何升级Cloudera Manager和CDH

18.作业运行成功

0009-如何升级Cloudera Manager和CDH

19.统计结果

Type Date Time Input_data_size Duration(s) Throughput(bytes/s) Throughput/node
HadoopWordcount 2017/8/17 12:02:39 32849063607 991.502 33130607 33130607

4.1.3功能验证

1.查看Cloudera Manager版本

0009-如何升级Cloudera Manager和CDH

版本已显示为5.10.2表明升级成功。

2.验证Agent是否向Cloudera Manager发送心跳

0009-如何升级Cloudera Manager和CDH

默认情况下,该心跳为15s一次;

3.检查所有主机

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

4.集群历史监控数据

0009-如何升级Cloudera Manager和CDH

历史监控数据正常,只有在升级Cloudera Manager Agent时段内无数据。

4.2滚动升级CDH

4.2.1升级前准备

4.2.1.1准备CDHparcels包

1.选择cdh6.10.0版本下载对应的parcels

wget http://archive.cloudera.com/cdh6/parcels/5.10.2/CDH-5.10.2-1.cdh6.10.2.p0.5-el6.parcel

wget http://archive.cloudera.com/cdh6/parcels/5.10.2/CDH-5.10.2-1.cdh6.10.2.p0.5-el6.parcel.sha1

wget http://archive.cloudera.com/cdh6/parcels/5.10.2/manifest.json

2.将下载下来的3个文件,放在/var/www/html/cdh6.10.2目录下

0009-如何升级Cloudera Manager和CDH

3.测试通过http是否能正常访问

0009-如何升级Cloudera Manager和CDH

配置完成后,供后面升级CDH使用

4.2.1.2运行MR作业

1.在升级前环境前提交一个WordCount的MapReduce作业

0009-如何升级Cloudera Manager和CDH

2.查看作业运行情况

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

3.作业运行完成

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

4.统计结果

Type Date Time Input_data_size Duration(s) Throughput(bytes/s) Throughput/node
HadoopWordcount 2017/8/17 11:09:20 32849063607 984.096 33379938 33379938

4.2.1.3配置CDH的存储库URL

根据标识进入CDH存储库URL配置界面

0009-如何升级Cloudera Manager和CDH

通过Cloudera Manager 控制台配置CDH的存储库URL

0009-如何升级Cloudera Manager和CDH

保存更改,点击“检查新parcels”

0009-如何升级Cloudera Manager和CDH

配置成功。

4.2.1.4备份HDFS元数据

使用如下命令备份HDFS元数据信息

[ec2-user@ip-172-31-8-141 upgrade]$ sudo -u hdfs hadoop dfsadmin -fetchImage /home/ec2-user/upgrade/hdfs_metastore_bak

4.2.2升级流程

1.通过Cloudera Manager控制台进入集群升级向导

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

2.选择CDH版本,点击“继续”

0009-如何升级Cloudera Manager和CDH

3.勾选后,点击“继续”

0009-如何升级Cloudera Manager和CDH

4.集群软件检查正常,点击“继续”

0009-如何升级Cloudera Manager和CDH

5.等待parcels安装成功,点击“继续”

0009-如何升级Cloudera Manager和CDH

6.主机检查通过,点击“继续”

0009-如何升级Cloudera Manager和CDH

7.选择滚动升级,根据需要设置参数,点击“继续”

0009-如何升级Cloudera Manager和CDH

8.滚动升级过程中,向集群提交MR作业

0009-如何升级Cloudera Manager和CDH

作业正常运行

0009-如何升级Cloudera Manager和CDH

9.等待滚动升级命令完成,点击“继续”

0009-如何升级Cloudera Manager和CDH

10.CDH升级完成

0009-如何升级Cloudera Manager和CDH

11.MR作业运行完成

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

12.统计结果

Type Date Time Input_data_size Duration(s) Throughput(bytes/s) Throughput/node
HadoopWordcount 2017/8/17 12:42:04 32849063607 1042.461 31511071 31511071

4.2.3功能验证

1.进入Cloudera Manager控制台主页,查看集群是否正常

0009-如何升级Cloudera Manager和CDH

2.向集群提交一个MR作业

登录集群服务器,操作如下指令

sudo -u hdfs hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 10 100

作业正常运行

0009-如何升级Cloudera Manager和CDH

0009-如何升级Cloudera Manager和CDH

3.用Hue测试

0009-如何升级Cloudera Manager和CDH

Hue正常登录,通过Hue操作HBase,向test表中添加一条数据

0009-如何升级Cloudera Manager和CDH

数据添加成功

0009-如何升级Cloudera Manager和CDH

通过hbase-shell查看新增数据

0009-如何升级Cloudera Manager和CDH

4.测试Hive

beeline登录hive进行测试

0009-如何升级Cloudera Manager和CDH

向test表中插入一条数据

0009-如何升级Cloudera Manager和CDH

查看test表数据

0009-如何升级Cloudera Manager和CDH

Hue测试hive

能正常查询test表数据,查询结果与命令行一致

0009-如何升级Cloudera Manager和CDH

5.使用Hue测试Impala

0009-如何升级Cloudera Manager和CDH

查询test表

0009-如何升级Cloudera Manager和CDH

命令行查询

0009-如何升级Cloudera Manager和CDH

4.3CDH升级过程中任务执行耗时对比

执行阶段 Type Date Time Input_data_size Duration(s) Throughput(bytes/s) Throughput/node
升级前 HadoopWordcount 2017/8/17 11:09:20 32849063607 984.096 33379938 33379938
升级CM中 HadoopWordcount 2017/8/17 12:02:39 32849063607 991.502 33130607 33130607
升级CDH中 HadoopWordcount 2017/8/17 12:42:04 32849063607 1042.461 31511071 31511071

在升级CM的过程中是不会影响作业资源使用;

在进行CDH滚动升级过程中由于重启服务导致计算资源损失,因此作业耗时有所增加;

醉酒鞭名马,少年多浮夸! 岭南浣溪沙,呕吐酒肆下!挚友不肯放,数据玩的花!
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
0009-如何升级Cloudera Manager和CDH

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/194605.html

(0)
上一篇 2021年11月16日
下一篇 2021年11月16日

相关推荐

发表回复

登录后才能评论