Cloudera Manager
cloudera manager的概念
簡單來說,Cloudera Manager是一個擁有集羣自動化安裝、中心化管理、集羣監控、報警功能的一個工具(軟件),使得安裝集羣從幾天的時間縮短在幾個小時內,運維人員從數十人降低到幾人以內,極大的提高集羣管理的效率
cloudera manager的功能
- 管理:對集羣進行管理,如添加、刪除節點等操作。
- 監控:監控集羣的健康情況,對設置的各種指標和系統運行情況進行全面監控。
- 診斷:對集羣出現的問題進行診斷,對出現的問題給出建議解決方案。
- 集成:多組件進行整合。
cloudera manager的架構
- Server:負責軟件安裝、配置,啓動和停止服務,管理服務運行的羣集。
- Agent:安裝在每臺主機上。負責啓動和停止的過程,配置,監控主機。
- Management Service:由一組執行各種監控,警報和報告功能角色的服務。
- Database:存儲配置和監視信息。
- Cloudera Repository:軟件由Cloudera 管理分佈存儲庫。(有點類似Maven的中心倉庫)
- Clients:是用於與服務器進行交互的接口(API和Admin Console)
環境要求
內存分配
將3臺虛擬機分配好內存
JDK
安裝JDK配置環境變量
安裝配置mysql
在hadoop102上安裝mysql,配置相應的用戶權限。
關閉SELINUX
- 臨時關閉:
setenforce 0 - 修改配置文件/etc/selinux/config(重啓生效)
將SELINUX=enforcing 改爲SELINUX=disabled
ssh免密登錄
將hadoop102,hadoop103,hadoop104相互之間配置免密登陸。
下載第三方依賴
在三臺節點(所有agent的節點)上執行下載第三方依賴
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb httpd mod_ssl
創建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用戶
解壓cloudera-manager-el6-cm5.12.1_x86_64.tar.gz
[root@hadoop102 module]# mkdir /opt/module/cloudera-manager
[root@hadoop102 module]# tar -zxvf /opt/software/cloudera-manager-el6-cm5.12.1_x86_64.tar.gz -C /opt/module/cloudera-manager/
創建用戶cloudera-scm(所有節點)
[root@hadoop102 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,創建具有此名稱的用戶是最簡單的方法。 安裝完成後,將自動使用此用戶。
配置CM Agent
修改文件/opt/module/cloudera-manager/cm-5.12.1/etc/cloudera-scm-agent/ config.ini
[root@hadoop102 cloudera-scm-agent]# vim /opt/module/cloudera-manager/cm-5.12.1/etc/cloudera-scm-agent/config.ini
server_host=hadoop102
配置CM的數據庫
- 拷貝mysql jar文件到目錄 /usr/share/java/
[root@hadoop102 share]# mkdir /usr/share/java/
[root@hadoop102 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/
[root@hadoop102 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
2. 在mysql中創建cm庫
[root@hadoop102 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
分發cloudera-manager
[root@hadoop102 module]# scp -r /opt/module/cloudera-manager/ hadoop103:/opt/module/
[root@hadoop102 module]# scp -r /opt/module/cloudera-manager/ hadoop104:/opt/module/
創建Parcel-repo 目錄
- Servre 節點創建目錄/opt/cloudera/parcel-repo
[root@hadoop102 module]# mkdir -p /opt/cloudera/parcel-repo
[root@hadoop102 module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
- 拷貝下載文件到/opt/cloudera/parcel-repo
1)CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel
2)CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel.sha1:需改名爲CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel.sha
3)manifest.json
[root@hadoop102 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
[root@hadoop102 module]# cp /opt/software/CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel.sha /opt/cloudera/parcel-repo/
[root@hadoop102 module]# cp /opt/software/CDH-5.12.1-1.cdh5.12.1.p0.3-el6.parcel /opt/cloudera/parcel-repo/
[root@hadoop102 module]# cp /opt/software/manifest.json /opt/cloudera/parcel-repo/
- 在Agent 節點(hadoop102,hadoop103,hadoop104)創建目錄/opt/cloudera/parcels
[root@hadoop102 module]# mkdir -p /opt/cloudera/parcels
[root@hadoop102 module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
[root@hadoop103 module]# mkdir -p /opt/cloudera/parcels
[root@hadoop103 module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
[root@hadoop104 module]# mkdir -p /opt/cloudera/parcels
[root@hadoop104 module]# chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
分發Parcel-repo
[root@hadoop102 opt]# scp -r /opt/cloudera/ hadoop103:/opt/
[root@hadoop102 opt]# scp -r /opt/cloudera/ hadoop104:/opt/
啓動和關閉CM Server&Agent 服務
服務節點:hadoop102
[root@hadoop102 init.d]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-server start
Starting cloudera-scm-server: [確定]
工作節點:hadoop102\hadoop103\hadoop104
[root@hadoop102 init.d]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent start
正在啓動 cloudera-scm-agent: [確定]
[root@hadoop103 module]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent start
正在啓動 cloudera-scm-agent: [確定]
[root@hadoop104 module]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent start
正在啓動 cloudera-scm-agent: [確定]
注意:啓動過程非常慢,Manager 啓動成功需要等待一段時間,過程中會在數據庫中創建對應的表需要耗費一些時間。
[root@hadoop102 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
[root@hadoop102 init.d]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-server stop
停止 cloudera-scm-server: [確定]
工作節點:hadoop102\hadoop103\hadoop104
[root@hadoop102 init.d]# /opt/module/cloudera-manager/cm-5.12.1/etc/init.d/cloudera-scm-agent stop
Stopping cloudera-scm-agent: [確定]
簡書:https://www.jianshu.com/u/0278602aea1d
CSDN:https://blog.csdn.net/u012387141
特別感謝:尚硅谷教育