1. 程式人生 > >大資料學習筆記之ClouderaManager

大資料學習筆記之ClouderaManager

Cloudera Manager的概念和功能

簡單來說,Cloudera Manager是一個擁有叢集自動化安裝、中心化管理、叢集監控、報警功能的一個工具(軟體),使得安裝叢集從幾天的時間縮短在幾個小時內,運維人員從數十人降低到幾人以內,極大的提高叢集管理的效率。

  1. 管理:對叢集進行管理,如新增、刪除節點等操作。
  2. 監控:監控叢集的健康情況,對設定的各種指標和系統執行情況進行全面監控。
  3. 診斷:對叢集出現的問題進行診斷,對出現的問題給出建議解決方案。
  4. 整合:多元件進行整合。

在這裡插入圖片描述

cloudera manager的架構

在這裡插入圖片描述

  1. Server:負責軟體安裝、配置,啟動和停止服務,管理服務執行的群集。
  2. Agent:安裝在每臺主機上。負責啟動和停止的過程,配置,監控主機。
  3. Management Service:由一組執行各種監控,警報和報告功能角色的服務。
  4. Database:儲存配置和監視資訊。
  5. Cloudera Repository:軟體由Cloudera 管理分佈儲存庫。(有點類似Maven的中心倉庫)
  6. Clients:是用於與伺服器進行互動的介面(API和Admin Console)

環境要求

  1. 記憶體分配
    將3臺虛擬機器按照 10-2-2分配記憶體
  2. 安裝好jdk並且配置好環境變數
  3. 安裝配置mysql
    配置好許可權問題一定要配置好不然會出現問題
  4. 關閉SELINUX
    修改配置檔案/etc/selinux/config(重啟生效)
    將SELINUX=enforcing 改為SELINUX=disabled
  5. ssh免密登入
    將hadoop102,hadoop103,hadoop104相互之間配置免密登陸。
  6. 下載第三方依賴
    在三臺節點(所有agent的節點)上執行下載第三方依賴
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb
  1. 建立CM用的資料庫
    叢集監控資料庫
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

hive資料庫

create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
```
oozie資料庫
```
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
```
hue資料庫
```
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
```
### CM的安裝部署
CM下載地址:http://archive.cloudera.com/cm5/cm/5/
離線庫下載地址:http://archive.cloudera.com/cdh5/parcels
`注:以下所有操作均使用root使用者`

1. 解壓cloudera-manager-el6-cm5.12.1_x86_64.tar.gz
```
[[email protected] module]# mkdir /opt/module/cloudera-manager
[[email protected] module]# tar -zxvf /opt/software/cloudera-manager-el6-cm5.12.1_x86_64.tar.gz -C /opt/module/cloudera-manager/
```
2. 建立使用者cloudera-scm(所有節點)
```
[[email protected] cloudera-scm-server]# useradd --system --home=/opt/module/cloudera-manager/cm-5.12.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
```
--system 建立一個系統賬戶
--home 指定使用者登入時的主目錄,替換系統預設值/home/<使用者名稱>
--no-create-home 不要建立使用者的主目錄
--shell 使用者的登入 shell 名
--comment 使用者的描述資訊

注意:
`Cloudera Manager預設使用者為cloudera-scm,建立具有此名稱的使用者是最簡單的方法。 安裝完成後,將自動使用此使用者。`
3. 配置CM Agent
修改檔案/opt/module/cloudera-manager/cm-5.12.1/etc/cloudera-scm-agent/ config.ini
```
[[email protected] cloudera-scm-agent]# vim /opt/module/cloudera-manager/cm-5.12.1/etc/cloudera-scm-agent/config.ini
server_host=hadoop102
```
4. 配置CM的資料庫
拷貝mysql jar檔案到目錄 /usr/share/java/
```
[[email protected] share]# mkdir /usr/share/java/
[[email protected] cm-5.12.1]# cp /opt/software/mysql-libs/mysql-connector-java-5.1.27/mysql-connector-java-5.1.27-bin.jar /usr/share/java/
[[email protected] share]# mv /usr/share/java/mysql-connector-java-5.1.27-bin.jar /usr/share/java/mysql-connector-java.jar
```
`注意jar包名稱要修改為mysql-connector-java.jar`
在mysql中建立cm庫
```
[[email protected] cm-5.12.1]# /opt/module/cloudera-manager/cm-5.12.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hhadoop102 -uroot -p000000 --scm-host hadoop102 scm scm scm
```
-h:Database host
-u:Database username
-p:Database Password
--scm-host:SCM server's hostname
5. 分發cloudera-manager
```
[[email protected] module]# scp -r /opt/module/cloudera-manager/ hadoop103:/opt/module/
[[email protected] module]# scp -r /opt/module/cloudera-manager/ hadoop104:/opt/module/
```
6. 建立Parcel-repo 目錄
Servre 節點建立目錄/opt/cloudera/parcel-repo
```
[[email protected] module]# mkdir -p /opt/cloudera/parcel-repo
[[email protected] module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
```
拷貝下載檔案到/opt/cloudera/parcel-repo
CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel
CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel.sha1:需改名為CDH-5.12.1-cdh5.12.1.p0.3-el6.parcel.sha
manifest.json
```
[[email protected] cm-5.12.1]# mv /opt/software/CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel.sha1 /opt/software/CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel.sha

[[email protected] module]# cp /opt/software/CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel.sha /opt/cloudera/parcel-repo/

[[email protected] module]# cp /opt/software/CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel /opt/cloudera/parcel-repo/

[[email protected] module]# cp /opt/software/manifest.json /opt/cloudera/parcel-repo/
```
在Agent 節點(hadoop102,hadoop103,hadoop104)建立錄/opt/cloudera/parcels
```
[[email protected] module]# mkdir -p /opt/cloudera/parcels 
[[email protected] module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

[[email protected] module]# mkdir -p /opt/cloudera/parcels 
[[email protected] module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

[[email protected] module]# mkdir -p /opt/cloudera/parcels 
[[email protected] module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
```
7. 分發Parcel-repo
```
[[email protected] opt]# scp -r /opt/cloudera/ hadoop103:/opt/
[[email protected] opt]# scp -r /opt/cloudera/ hadoop104:/opt/   
```
8. 啟動和關閉CM Server&Agent 服務
服務節點:hadoop102
```
[[email protected] init.d]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-server start
Starting cloudera-scm-server:                              [確定]
```
工作節點:hadoop102\hadoop103\hadoop104
```
[[email protected] init.d]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent start
正在啟動 cloudera-scm-agent:                              [確定]

[[email protected] module]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent start
正在啟動 cloudera-scm-agent:                              [確定]

[[email protected] module]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent start
正在啟動 cloudera-scm-agent:                              [確定]

```

`啟動過程非常慢,Manager 啟動成功需要等待一段時間,過程中會在資料庫中建立對應的表需要耗費一些時間。`
```
[[email protected] init.d]# netstat -anp | grep 7180
tcp        0      0 0.0.0.0:7180                0.0.0.0:*                   LISTEN      5498/java 
```
==檢視被佔用則表示安裝成功了!!!==
訪問http://hadoop102:7180,(使用者名稱、密碼:admin)

關閉:
服務節點:hadoop102
```
[[email protected] init.d]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-server stop
停止 cloudera-scm-server:                                 [確定]
```
工作節點:hadoop102\hadoop103\hadoop104
```
[[email protected] init.d]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent stop
Stopping cloudera-scm-agent:                               [確定]
```
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181209153525881.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzcwNDU5OQ==,size_16,color_FFFFFF,t_70)
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181209153541711.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzcwNDU5OQ==,size_16,color_FFFFFF,t_70)
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181209153558345.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzcwNDU5OQ==,size_16,color_FFFFFF,t_70)
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181209153612375.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzcwNDU5OQ==,size_16,color_FFFFFF,t_70)
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181209153624970.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzcwNDU5OQ==,size_16,color_FFFFFF,t_70)
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181209153638705.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzcwNDU5OQ==,size_16,color_FFFFFF,t_70)

![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181209153652156.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzcwNDU5OQ==,size_16,color_FFFFFF,t_70)
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181209153707366.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzcwNDU5OQ==,size_16,color_FFFFFF,t_70)