一. 準備安裝包
CM
cloudera-manager-centos7-cm5.16.1_x86_64.tar.gz
Parcel
CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel
CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha1
manifest.json
JDK
https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html
下載jdk-8u202-linux-x64.tar.gz
MySQL
https://dev.mysql.com/downloads/mysql/5.7.html#downloads
下載mysql-5.7.26-el7-x86_64.tar.gz
MySQL jdbc jar
mysql-connector-java-5.1.47.jar
注意:下載完成後要重命名去掉版本號,如果不去掉 啟動CDH時報mysql連接不到錯誤
mv mysql-connector-java-5.1.47.jar mysql-connector-java.jar
二. 集群節點初始化
2.1 阿里雲上海區購買3臺,按量付費虛擬機,並修改主機名
在阿里雲上購買機器
在阿里雲上購買和選擇服務器
修改主機名hostname
阿里雲新機器的機器名是一個實例的名字,對於用戶來說這個名字是很不友好的,需要根據用途重新定義機器名
在hadoop001機器上執行 hostnamectl set-hostname hadoop001
在hadoop002機器上執行 hostnamectl set-hostname hadoop002
在hadoop003機器上執行 hostnamectl set-hostname hadoop003
2.2 當前筆記本或臺式機配置hosts文件
2.3 設置所有節點的hosts文件
三臺服務器內網地址:
2.4 關閉所有節點的防火牆及清空規則
2.5 關閉所有節點的selinux
vi /etc/selinux/config
將SELINUX=enforcing改為SELINUX=disabled
設置後需要重啟才能生效
2.6 設置所有節點的時區一致及時鐘同步,這一步,因為是阿里雲服務器,時間同步不用做
2.7 部署集群的JDK
mkdir /usr/java
tar -xzvf jdk-8u45-linux-x64.gz -C /usr/java/
#切記必須修正所屬用戶及用戶組
chown -R root:root /usr/java/jdk1.8.0_45
echo "export JAVA_HOME=/usr/java/jdk1.8.0_45" >> /etc/profile
#echo "export PATH=${JAVA_HOME}/bin:${PATH}" >> /etc/profile 這樣寫 找不到${JAVA_HOME},最後找不到jdk
echo "export PATH=/usr/java/jdk1.8.0_45/bin:${PATH}" >> /etc/profile
source /etc/profile
which java
2.8 hadoop001節點離線部署MySQL5.7
2.9 創建CDH的元數據庫和用戶、amon服務的數據庫及用戶
create database cmf DEFAULT CHARACTER SET utf8;
create database amon DEFAULT CHARACTER SET utf8;
grant all on cmf.* TO 'cmf'@'%' IDENTIFIED BY '123456';
grant all on amon.* TO 'amon'@'%' IDENTIFIED BY '123456';
flush privileges;
2.10 hadoop001節點部署mysql jdbc jar
mkdir -p /usr/share/java/
cp mysql-connector-java.jar /usr/share/java/
三.CDH部署
3.1 離線部署cm server及agent
3.1.1 所有節點創建目錄及解壓
mkdir /opt/cloudera-manager
tar -zxvf cloudera-manager-centos7-cm5.16.1_x86_64.tar.gz -C
3.1.2 所有節點修
sed -i "s/server_host=localhost/server_host=hadoop001/g" /opt/cloudera-manager/cm-5.16.1/etc/cloudera-scm-agent/config.ini
3.1.3 主節點修改server的配置
vi /opt/cloudera-manager/cm-5.16.1/etc/cloudera-scm-server/db.properties
com.cloudera.cmf.db.type=mysql
com.cloudera.cmf.db.host=hadoop001
com.cloudera.cmf.db.name=cmf
com.cloudera.cmf.db.user=cmf
com.cloudera.cmf.db.password=123456
com.cloudera.cmf.db.setupType=EXTERNAL
3.1.4 所有節點創建用戶
useradd --system --home=/opt/cloudera-manager/cm-5.16.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
3.1.5 目錄修改用戶及用戶組
chown -R cloudera-scm:cloudera-scm /opt/cloudera-manager
3.2 hadoop001節點部署離線parcel源
3.2.1 部署離線parcel源
#切記cp時,重命名去掉1,不然在部署過程CM認為如上文件下載未完整,會持續下載
$ cp CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha
$ cp manifest.json /opt/cloudera/parcel-repo/
3.2.2 目錄修改用戶及用戶組
$ chown -R cloudera-scm:cloudera-scm /opt/cloudera/
3.3 所有節點創建軟件安裝目錄、用戶及用戶組權限
mkdir -p /opt/cloudera/parcels
chown -R cloudera-scm:cloudera-scm /opt/cloudera/
3.4 hadoop001節點啟動Server
3.4.1 啟動server
/opt/cloudera-manager/cm-5.16.1/etc/init.d/cloudera-scm-server start
3.4.2 阿里雲web界面,設置該hadoop001節點防火牆放開7180端口,如果設置固定ip登錄不成功,可以試試 0.0.0.0/0,開放所有Ip
3.4.3.等待1min,打開 http://hadoop001:7180 賬號密碼:admin/admin
3.4.4.假如打不開,去看server的log,根據錯誤仔細排查錯誤
3.5 所有節點啟動Agent
/opt/cloudera-manager/cm-5.16.1/etc/init.d/cloudera-scm-agent start
3.6 接下來,全部Web界面操作
http://hadoop001:7180/
賬號密碼:admin/admin
四. 在 UI 界面安裝集群
特別注意一點,在選擇安裝源後,一定要仔細檢查hadoop001這臺機器上 /opt/cloudera/parcel-repo 這個路徑下的安裝包是否少了,名字是否有細微差別
CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel
CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha
manifest.json,這些文件一個都不能差,差了第二張圖就卡在從外網下載文件中,我安裝時遇到CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel這個文件,文件上傳時沒傳完,文件名為CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.part,安裝時一直卡在下載文件。最後反覆比對文件發現這個CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel是損壞的文件。重新上傳,重新啟動cm,安裝就順利完成了。
具體視頻請看:
閱讀更多 若澤大數據 的文章