0009-如何升級Cloudera Manager和CDH

1.文檔編寫目的html

本文檔講述如何升級Cloudera Manager和CDH,經過本文檔,您將學習到如下知識:java

1.如何對Cloudera Manager進行停機升級node

2.如何對CDH進行停機升級mysql

3.如何在不影響集羣做業的狀況下進行CDH滾動升級linux

文檔主要分爲如下幾步:sql

1.Cloudera升級概述shell

2.Minor版本Cloudera Manager和CDH升級數據庫

3.Maintenance版本滾動升級CDHjson

4.滾動升級時進行任務驗證vim

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。

升級時具體有以下幾種選擇:

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升級概述

升級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升級概述

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目錄下

進入cm5.11.1目錄,運行命令:

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

3.驗證是否能經過瀏覽器訪問

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

3.1.1.2備份Cloudera Manager數據庫

1.中止Cloudera Management Service服務

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

查找數據庫相關的信息,可從以下文件中查找

ClouderaManager Server的數據庫信息,經過配置文件/etc/cloudera-scm-server/db.properties獲取

其它服務的數據庫信息,能夠經過CM管理界面獲取

3.1.2升級步驟

1.中止Cloudera Management Service服務

2.中止Cloudera Manager Server和agent

中止全部服務器的cloudera-scm-agent服務

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

在運行Cloudera Manager服務器的主機上,中止cloudera-scm-server服務

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

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/

注意文件目錄權限與原數據目錄權限一致。

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

檢查是否安裝成功

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

5.啓動Cloudera Manager Server服務

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

6.登陸Cloudera Manager管理控制檯,顯示升級嚮導

7.選擇升級Cloudera Manager Agent軟件包,繼續

8.選擇「自定義存儲庫」,配置2.1.2章節的地址,點擊「繼續」

9.選擇JDK選擇,點擊「繼續」

10.根據要求輸入SSH登陸憑證,點擊「繼續」

11.等待安裝完成,點擊「繼續」

12.檢查完成,點擊「完成」

13.進入審覈更改向導界面,點擊「繼續」

14.選擇重啓Cloudera Management Service,點擊「繼續」

15.服務重啓成功,點擊「完成」

集羣服務任在正常運行

Cloudera Manager在升級後報告過期的配置,請從新啓動集羣服務並從新部署客戶端配置

3.1.3Cloudera Manager升級驗證

1.查看Cloudera Manager版本

版本顯示爲升級後版本

2.驗證Agent是否向Cloudera Manager發送心跳

默認狀況下,該心跳爲15s一次;

3.檢查全部主機

4.集羣歷史監控數據

3.2CDH升級

3.2.1升級前準備

3.2.1.1準備CDH的parcels包

1.選擇cdh5.11.1版本下載對應的parcels

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

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

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

2.將下載下來的3個文件,放在/var/www/html/cdh5.11.1目錄下

3.測試經過http是否能正常訪問

配置完成後,供後面升級CDH使用

3.2.2升級流程

1.中止集羣服務

2.備份NameNode上的HDFS Metastore

在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/

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

4.向集羣中添加新版的CDH存儲庫

5.運行升級嚮導

6.進入升級嚮導界面

7.確認CDH版本是否正確,點擊「繼續」

8.選擇「是」,點擊「繼續」

9.點擊「繼續」

10.等待安裝完成後,點擊「繼續」

11.檢查主機完成後,點擊「繼續」

12.選擇完整集羣升級,點擊「繼續」

13.等待升級集羣命令完成,點擊「繼續」

14.集羣升級成功

15.最終化元數據升級

在最終化元數據以前,進行幾天甚至幾周的運行觀察集羣是否正常,在發現全部任務都沒有任何異常狀況後,再進行最終化元數據操做。一旦進行最終化元數據以後,就不能回滾到老的版本了,除非有數據備份。對NameNode的主備節點都執行最終化元數據升級操做:

3.2.3功能驗證

1.運行一個MapReduce做業

登陸集羣服務器,操做以下指令

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

2.用Hue測試

Hue正常登陸,經過Hue操做HBase,向HBase中新建一個test表

向test表中添加一條數據

數據添加成功

經過hbase-shell查看該表是否存在

3.測試hive

beeline登陸hive進行測試

Hue測試hive

能正常查詢test表數據

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目錄下

3.在該目錄下執行以下命令

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

4.經過瀏覽器測試是否能正常訪問

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

4.1.1.2備份Cloudera Manager數據庫

1.中止Cloudera Management Service服務和Cloudera ManagerService服務

經過Cloudera Manager 控制檯,中止ClouderaManagement Service服務

經過以下命令中止Cloudera Manager Server服務

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

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

4.1.2升級流程

1.確保Cloudera Management Service服務已中止

2.在全部安裝Cloudera Manager Agent的主機上執行如下命令,中止Agent服務

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

3.向集羣提交一個MR做業

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

檢查是否安裝成功

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

5.啓動Cloudera Manager Server服務,命令以下

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

6.登陸Cloudera Manager控制檯,進入顯示升級嚮導

7.選擇升級Cloudera Manager Agent,點擊「繼續」

8.輸入Cloudera Manager存儲庫URL,點擊「繼續」

9.勾選java選項,點擊「繼續」

10.輸入SSH登陸憑證,點擊「繼續」

11.等待Cloudera Manager Agent升級完成,點擊「繼續」

12.檢查完成後,點擊「繼續」

13.完成升級,進入升級嚮導頁面

14.根據須要進行修改,點擊「繼續」

15.重啓Cloudera Management Service,點擊「繼續」

16.點擊「完成」,進入Cloudera Manager控制檯主頁

升級成功,而且Hadoop的相關服務均正常。

17.升級完成MR做業任在運行

18.做業運行成功

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版本

版本已顯示爲5.10.2代表升級成功。

2.驗證Agent是否向Cloudera Manager發送心跳

默認狀況下,該心跳爲15s一次;

3.檢查全部主機

4.集羣歷史監控數據

歷史監控數據正常,只有在升級Cloudera Manager Agent時段內無數據。

4.2滾動升級CDH

4.2.1升級前準備

4.2.1.1準備CDHparcels包

1.選擇cdh5.10.0版本下載對應的parcels

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

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

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

2.將下載下來的3個文件,放在/var/www/html/cdh5.10.2目錄下

3.測試經過http是否能正常訪問

配置完成後,供後面升級CDH使用

4.2.1.2運行MR做業

1.在升級前環境前提交一個WordCount的MapReduce做業

2.查看做業運行狀況

3.做業運行完成

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配置界面

經過Cloudera Manager 控制檯配置CDH的存儲庫URL

保存更改,點擊「檢查新parcels」

配置成功。

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控制檯進入集羣升級嚮導

2.選擇CDH版本,點擊「繼續」

3.勾選後,點擊「繼續」

4.集羣軟件檢查正常,點擊「繼續」

5.等待parcels安裝成功,點擊「繼續」

6.主機檢查經過,點擊「繼續」

7.選擇滾動升級,根據須要設置參數,點擊「繼續」

8.滾動升級過程當中,向集羣提交MR做業

做業正常運行

9.等待滾動升級命令完成,點擊「繼續」

10.CDH升級完成

11.MR做業運行完成

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控制檯主頁,查看集羣是否正常

2.向集羣提交一個MR做業

登陸集羣服務器,操做以下指令

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

做業正常運行

3.用Hue測試

Hue正常登陸,經過Hue操做HBase,向test表中添加一條數據

數據添加成功

經過hbase-shell查看新增數據

4.測試Hive

beeline登陸hive進行測試

向test表中插入一條數據

查看test表數據

Hue測試hive

能正常查詢test表數據,查詢結果與命令行一致

5.使用Hue測試Impala

查詢test表

命令行查詢

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滾動升級過程當中因爲重啓服務致使計算資源損失,所以做業耗時有所增長;

醉酒鞭名馬,少年多浮誇! 嶺南浣溪沙,嘔吐酒肆下!摯友不願放,數據玩的花!

相關文章
相關標籤/搜索