1. CDH簡介
簡單來說,Cloudera Manager是一個擁有集群自動化安裝、中心化管理、集群監控、報警功能的一個工具(軟件),使得安裝集群從幾天的時間縮短在幾個小時內,運維人員從數十人降低到幾人以內,極大的提高集群管理的效率。
2.cloudera manager的功能
1) 管理:對集群進行管理,如添加、刪除節點等操作。
2) 監控:監控集群的健康情況,對設置的各種指標和系統運行情況進行全面監控。
3) 診斷:對集群出現的問題進行診斷,對出現的問題給出建議解決方案。
4) 集成:多組件進行整合。

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


4. 版本介紹
CDH版本:CDH 5.9.0
找對應版本下載即可:
http://archive.cloudera.com/cm5/cm/5/
cloudera-manager-centos7-cm5.9.0_x86_64.tar.gz
http://archive.cloudera.com/cdh5/parcels/5.9.0/
manifest.json
CDH-5.9.0-1.cdh5.9.0.p0.23-el6.parcel
CDH-5.9.0-1.cdh5.9.0.p0.23-el6.parcel.sha1

可自行去官網查看CDH中相對相應大數據組件版本號,開發時在maven上添加對應依賴
JDK版本: 1.8
Mysql版本: 5.6.42
Mysql鏈接包:mysql-connector-java-5.1.46.jar
5. centos環境准備
配置ip
配置免密
防火牆關閉
Selinux關閉
Hostname配置:節點名稱 /etc/hostname
添加hosts名稱:/etc/hosts
192.168.3.200 node200
192.168.3.201 node201
192.168.3.202 node202
192.168.3.203 node203
內存分配:
1.內存分配
CPU盡量調高,如我機器是16G內存,1T硬盤,三個節點各 200M
內存是:主節點10個G 副節點是4G
2.節點全部配置 JDK1.8環境
1.解壓jdk-8u191-linux-x64.tar.gz
tar -zxvf jdk-8u191-linux-x64.tar.gz -C /opt/module
2.配置環境變量
vi /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_191
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
export JAVA_HOME=/opt/module/jdk1.8.0_191
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
source /etc/profile
3.安裝配置mysql
1.查看centos版本
cat /etc/redhat-release
2.卸載MariaDB (centos7默認自帶)
查看當前安裝的mariadb包: rpm -qa | grep mariadb
強制卸載: rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
3. 查看是否已經安裝了MySQL
rpm -qa | grep -i mysql
4.查看是否存在mysql殘黨
find / -name mysql
刪除分散mysql文件
find / -name mysql / # whereis mysql
刪除配置文檔
rm -rf /etc/my.cnf
再次查找機器是否安裝mysql
rpm -qa|grep -i mysql
5.mysql 在centos7下的依賴
yum -y install autoconf
yum -y install perl
6.依次安裝rpm包
rpm -ivh MySQL-devel-5.6.42-1.el7.x86_64.rpm
rpm -ivh MySQL-server-5.6.42-1.el7.x86_64.rpm
rpm -ivh MySQL-client-5.6.42-1.el7.x86_64.rpm
7.更改密碼刷新權限
* cat /root/.mysql_secret 查看默認密碼 oHH9dLpWrvWzRcG7
* service mysql start 啟動mysql
* chkconfig mysql on mysql開機啟動
* mysql -uroot -p 使用默認密碼登錄
* SET PASSWORD=PASSWORD('000000'); 修改密碼
* use mysql; 修改用戶權限
* select User, Host, Password from user; 修改user表,把Host表內容修改為%
* update user set host='%' where host='localhost';
* 刪除root用戶的其他host
* mysql>delete from user where Host='u1';
* mysql>delete from user where Host='127.0.0.1';
* mysql>delete from user where Host='::1';
* 更新權限 grant all privileges on . to 'root'@'%' identified by '123456' with grant option;
* 刷新權限 flush privileges;
配置完整CDH系統
下載第三方依賴:
在三台節點(所有agent的節點)上執行下載第三方依賴
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb
yum install perl perl-devel --nogpgcheck(跳過公鑰)
創建CM用的數據庫:
(1)集群監控數據庫
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
(2)hive數據庫
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
(3)oozie數據庫
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
(4)hue數據庫
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
CDH安裝
導入/opt/software相關的安裝包:
mysql-connector-java-5.1.46.jar
mysql-connector-java.jar
manifest.json
CDH-5.16.1-1.cdh5.16.1.p0.3-el6.parcel
CDH-5.16.1-1.cdh5.16.1.p0.3-el6.parcel.sha1
cloudera-manager-centos7-cm5.16.1_x86_64.tar.gz
1、在主節點解壓CM安裝包至/opt默認目錄
tar xvf cloudera-manager-centos7-cm5.16.1_x86_64.tar.gz -C /opt
配置CM的數據庫
拷貝mysql jar文件到目錄 /usr/share/java/
[root@hadoop102 share]# mkdir /usr/share/java/
[root@hadoop102 cm-5.12.1]# cp /opt/software/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 jdbc driver放入CM的lib中
cp mysql-connector-java-5.1.46.Jar /opt/cm-5.16.1/share/cmf/lib/
3、在主節點(cdh-master)初始化CM數據庫
/opt/cm-5.16.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p123456 --scm-host localhost scm scm scm
4.配置Agnet
修改agnet的配置文件config.ini中的server_host為主節點的主機名(u1-master)
vim/opt/cm-5.14.3/etc/cloudera-scm-agent/config.ini
5.同步Agent到slave[1..3]節點
scp -r /opt/cm-5.16.1/ root@192.168.2.140:/opt/
scp -r /opt/cm-5.16.1/ root@192.168.2.141:/opt/
scp -r /opt/cm-5.16.1/ root@192.168.2.142:/opt/
在所有節點創建cloudera-scm用戶
useradd --system --home=/opt/cm-5.16.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
6.把CM文件拷貝到parcel-repo下
[root@hadoop102 cm-5.16.1]# mv /opt/software/CDH-5.16.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/
7.在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
注:如果報以下錯誤,需要yum 對應的命令 which psmic
yum install which --nogpgcheck
8.分發cloudera文件目錄
[root@hadoop102 opt]# scp -r /opt/cloudera/ hadoop103:/opt/
[root@hadoop102 opt]# scp -r /opt/cloudera/ hadoop104:/opt/
9.開啟服務 必須先啟動 Agent 再啟動server
1.依次開啟 Agent
/opt/cm-5.16.1/etc/init.d/cloudera-scm-agent start
2.主節點開啟server
/opt/cm-5.16.1/etc/init.d/cloudera-scm-server start
注意:啟動過程非常慢,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)
安裝界面化界面:
詳情請見同目錄 3.★配置安裝界面化CM安裝Hadoop生態圈
安裝完CDH的組件:
默認配置文件路徑:
Hadoop: /etc/hadoop/conf
hbase: /etc/hadoop/conf
hive: /etc/hive/conf
如果hdfs 報錯 nn啟動不起來,
第一格式化的錯誤, 需要把hdfs服務停止,然后刪除服務,
第二,需要把 /dfs 所有節點的服務都刪除掉,然后重新在CDH上創建hdfs
啟動完成
缺依賴 報parl common on ,
yum install perl perl-devel --nogpgcheck
安裝時:hive hue hbase連接報錯多為mysqlconnector 連接jar包未放入lib下

