如何升级jdk_0594-6.1.0-如何从CDH6.1.0升级到CDH6.2.0

作者:余枫

1.文档编写目的

Fayson在前面的文章中详细介绍过CDH的升级,参考《如何升级Cloudera Manager和CDH》,对于小版本的滚动升级,也有专门的一篇文章介绍,参考《0284-CDH集群跨多版本滚动升级》。但以前的版本都是基于CDH5,本文主要是描述如何从CDH6.1升级到CDH6.2。

  • 测试环境

1.Redhat7.4

2.采用root用户操作

3.CM/CDH6.1

2.Cloudera升级概述

你可以使用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。

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

8fd34ef1332172a33a7b3a1edcf9b64b.png

2.1.升级建议

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.2.评估升级影响

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

升级之前,需要查阅Clouder官网对相关版本的发行说明(release notes),了解API更改,不推荐的功能,新的功能以及不兼容的更改。同时需要检查新版本的前置条件来确认支持的操作系统,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版本的升级不包括不兼容的更改或者数据格式的变化。客户端配置会被重新配置。

Maintenance版本升级

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

2.3.Cloudera Manager升级概述

f9f8af6e2a0e44ddebd04595bad57735.png

升级Cloudera Manager包括以下步骤:

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

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

2.4.CDH升级概述

c362b88018ecdd1c3948a0ebb5ac53dd.png

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

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

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

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

2.4.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自动安装和升级。

3.Cloudera Manager升级

3.1.升级前的准备

3.1.1.Cloudera Manager的yum源配置

1.准备要升级的版本的rpm包

https://archive.cloudera.com/cm6/6.2.0/redhat7/yum/RPMS/x86_64/cloudera-manager-agent-6.2.0-968826.el7.x86_64.rpmhttps://archive.cloudera.com/cm6/6.2.0/redhat7/yum/RPMS/x86_64/cloudera-manager-daemons-6.2.0-968826.el7.x86_64.rpmhttps://archive.cloudera.com/cm6/6.2.0/redhat7/yum/RPMS/x86_64/cloudera-manager-server-6.2.0-968826.el7.x86_64.rpmhttps://archive.cloudera.com/cm6/6.2.0/redhat7/yum/RPMS/x86_64/cloudera-manager-server-db-2-6.2.0-968826.el7.x86_64.rpmhttps://archive.cloudera.com/cm6/6.2.0/redhat7/yum/RPMS/x86_64/enterprise-debuginfo-6.2.0-968826.el7.x86_64.rpmhttps://archive.cloudera.com/cm6/6.2.0/redhat7/yum/RPMS/x86_64/oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm

2.将安装包放到/var/www/html/cm6.2目录下

1cc17ff999fe50ebaf673970406e30a5.png

在该目录下执行命令createrepo .

2d7d6c83666e6403ab5fc900efa83ce6.png

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

e3b11e31fbb4826f90890d4eb1eca9f9.png

4.配置cloudera-manager.repo文件

93e84a476a36268160992ea7dfd6f5e6.png

5.测试yum源是否正常

7f36c8b6de4c3c28adeea4af5cbfe2dd.png

3.1.2.备份Cloudera Manager数据库

1.停止Cloudera Management Service服务

0c75e1f99dd68b78bd5477f367c74775.png

2.备份Cloudera Manager数据库

备份了如下几个数据库:

  • Cloudera Manager Server
  • Cloudera Navigator Audit Server
  • Cloudera Navigator Metadata Server
  • Activity Monitor
  • Reports Manager
adbd96d099eaebf4aabbdb6219ca080b.png

可以在/etc/cloudera-scm-server/db.properties查看Cloudera Manager Server的数据库信息,其他的数据库信息在CM的管理界面的Cloudera Management Service 中的配置里获取。

69bc15e9e2e2bb2b6d0bb08cb57ccc51.png

3.2.升级步骤

1.停止Cloudera Manager Server和Agent

  • 停止所有服务器上的cloudera-scm-agent服务
[root@cdh234 ~]$ service cloudera-scm-agent stop
  • 在运行Cloudera Manager服务器的主机上,停止cloudera-scm-server服务
[root@cdh234 ~]$ service cloudera-scm-server stop
c2c5227a78ea04a410359bb9661d07f7.png

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

43f370d76e7e5c0df9d215a75b38df4e.png
292f8338e320c2811e7295874de1cb4e.png

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

ae76686971b7660ac3c07b91e0524702.png

验证是否升级成功

0f60592967b149ed62798a4ea3b3c9dd.png

4.启动Cloudera Manager Server服务

3f53ccf6d41818c533a223275d9275af.png

5.登录Cloudera Manager管理界面,显示升级向导

d4c7ae1961cffb4a069876a0b3e180ae.png

6.升级Cloudera Manager Agent软件包,选择自定义存储库

e84c932c42fac01ada19aabbe91a498a.png

7.选择JDK

b1cfb48d9f9773436e3f396952c22878.png

8.输入SSH登陆凭证

c67faebffc07f271b7c90f584c3f323d.png

9.升级Cloudera Manager Agent软件包

b73494c8b334c9a4c3b53e65578a15a0.png

10.升级完成后,进行主机检查

d4a932eac8ced0d13aa29d6cc038d708.png

11.回到主页,重启配置过期的服务

22b3e987a4321a78ac342d2f3a9ddeda.png
812899cc97c8a0fe0cb9eb1dd67a4f0d.png

3.3.Cloudera Manager升级验证

1.查看Cloudera Manager版本,验证版本是否为升级后的版本(6.2.0)

e3450535138d5efd28e936eb1d5fa842.png

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

7c3cd05f5e3f9893bb013411f331f08d.png

3.查看历史监控数据

0e97663d0dc29a9e7d1f159212c14d3f.png

4.CDH升级

4.1.CDH升级准备

4.1.1.准备CDH的parcels

1.下载对应版本6.2.0的parcels

https://archive.cloudera.com/cdh6/6.2.0/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcelhttps://archive.cloudera.com/cdh6/6.2.0/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha1https://archive.cloudera.com/cdh6/6.2.0/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha256https://archive.cloudera.com/cdh6/6.2.0/parcels/manifest.json

2.将下载下来的文件,放到/var/www/html/cdh6.2目录下

7df12483d10ad5a350239cf3a8444a1a.png

3.验证通过http能否访问

f4ab418139fd97bba947408e19010caa.png

4.2.CDH升级流程

1.停止集群服务

2b944f7ae78d9c7a00190611de0a524a.png

2.备份NameNode上的HDFS Metastore

81de7f22d948af7d7f3be32845c07a05.png

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

3684c0b410edef0df9eeb2218e9512d0.png

3.备份数据库

d7b03ae6fa3b857cc87a78b55e1ec3e9.png

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

43ae352c57ae515ec74bd47a74a7dc31.png
5b30d6b4a2e93b8d3ca028b300d38d04.png

5.运行升级向导

db0c2ab30efd0e69df7430706a1061e0.png

6.进入CDH升级向导页面

30aeb62064570fd4cfac7a2f88704997.png

7.选择CDH升级的版本

7dd066d0c989295bcf594f1f6025c9e7.png

8.分发Parcels

3a6e81780b3732c03ad7c91cd12ef71f.png

9.完整重启集群

eb2652bbe93c8b2e9781510cb70fe7e7.png

10.升级集群命令

a6863b1d09c48677cee6823fa6a23fbc.png

11.集群升级成功

3a7e2f25c6d2bdbf51fb44f94cfea162.png

12.最终化元数据升级

在进行最终化元数据升级之前,要观察几天甚至几周的时间,观察集群的运行是否正常,在发现所有的任务都没有任何异常后,再进行最终化元数据升级操作。一旦进行升级操作后,就无法再进行回滚,除非有数据备份。执行升级操作如下:

c1d2e52989305f367d6b582cd2c3bce7.png
38f07dae4009b4e57fee5945a93504d8.png

4.3.功能验证

1.运行MapReduce作业

c717627e6f7b1feb1abaae42aabaea50.png
150e131e7ffa032858a1af70b4997a06.png
afcce97ad0523b068ced9001c6ad6c44.png

2.Hive测试

9e681129a0a65e1753cb38fc7363a53e.png

3.Hue测试

创建一个Hive表

aaec2e8fdbc290d6c48c660d7e1f8e03.png

向表中插入数据

e3915e4ab9bf49e5f6ce921a6dacce49.png

查询表中的数据

6b3aaa20068ab01d3a48835294f0062d.png

执行Count操作

dcefd9fcc3e5bb0b76ee9fde0021f8c0.png

4.Hue测试Impala

向表中插入数据

b3aa098898e8bcaea358fbf19fc4dbf6.png

查询表中数据

f6a7ee48b832d45f1fcf0d18f79f79d7.png

执行Count操作

1aaa2267583623fa14a7806f1e8ca873.png

至此,从CDH6.1升级到CDH6.2完成并成功!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值