目錄
三、安裝Cloudera Manager Server 和Agent
一、軟件環境
NO. |
軟件名稱 |
版本 |
1 |
操作系統 |
CentOS6.8 64位 |
2 |
JDK |
1.8.0_73 |
3 |
Cloudera Manager |
5.15.1 |
4 |
CDH |
5.15.1 |
5 |
數據庫 |
MySQL5.7 |
6 |
JDBC驅動 |
5.1.40 |
二、安裝前準備
2.1配置網絡名稱(hostname)
(1)編輯/etc/sysconfig/network文件,修改HOSTNAME
[root@kms-1 ~]# vi /etc/sysconfig/network |
如下圖所示將主機名修改爲kms-1.example.com
(2)編輯/etc/hosts文件,配置主機IP與主機名
[root@kms-1 ~]# vi /etc/hosts |
配置的內容如下圖所示
(3)對其他主機做上述相同操作
2.2配置SSH免密登錄
(1)執行 ssh-keygen -t rsa命令,生成密鑰
[root@kms-1 ~]# ssh-keygen -t rsa |
輸入命令之後,連續按四次回車鍵,如下圖所示
(2)執行ssh-copy-id命令
[root@kms-1 ~]# ssh-copy-id kms-1.example.com [root@kms-1 ~]# ssh-copy-id kms-2.example.com [root@kms-1 ~]# ssh-copy-id kms-3.example.com |
首先免密登錄本地
然後免密登錄其他主機
(3)在其他主機執行上述相同操作
2.3集羣時間同步
(1)安裝ntp,如果操作系統已經安裝了,可以不用再安裝
[root@kms-1 ~]# yum install -y ntp |
(2)設置ntp開機啓動
[root@kms-1 ~]# chkconfig ntpd on |
(3)檢查是否設置成功
[root@kms-1 ~]# chkconfig --list ntpd |
如下圖所示表示設置成功
(4)在其他主機上執行上述步驟
(5)主節點ntpserver配置
[root@kms-1 ~]# vi /var/lib/ntp/drift restrict 127.0.0.1 restrict -6 ::1 restrict default nomodify notrap server 202.120.2.101 prefer includefile /etc/ntp/crypto/pw keys /etc/ntp/keys |
(6)啓動主節點ntp服務
[root@kms-1 ~]# service ntpd start |
(7)執行ntpstat命令查看同步狀態
[root@kms-1 ~]# ntpstat |
(8)從節點ntp客戶端配置
[root@kms-2 ~]# vi /var/lib/ntp/drift restrict 127.0.0.1 restrict -6 ::1 restrict default nomodify notrap server kms-1.example.com includefile /etc/ntp/crypto/pw keys /etc/ntp/keys |
(9)手動與主節點時間同步
[root@kms-2 ~]# ntpdate -u kms-1.example.com |
(10)啓動從節點ntp服務
[root@kms-2 ~]# service ntpd start |
(11)查看從節點的時間同步狀態
[root@kms-2 ~]# ntpstat |
2.4關閉防火牆
(1)執行chkconfig iptables off
[root@kms-1 ~]# chkconfig iptables off |
(2)執行service iptables stop
[root@kms-1 ~]# service iptables stop |
(3)查看狀態
[root@kms-1 ~]# chkconfig --list iptables |
(4)在其他主機執行上述步驟
2.5關閉SELINUX
(1)編輯/etc/sysconfig/selinux,將SELINUX=enforcing改爲SELINUX=disabled
[root@kms-1 ~]# vi /etc/sysconfig/selinux |
(2)在其他節點執行上述步驟
(3)重啓所有主機
2.6安裝JDK
(1)解壓tar包到/usr/java目錄下
[root@kms-1 softwares]# tar -xzvf jdk-8u73-linux-x64.tar.gz -C /usr/java/ |
(2)設置java環境變量
[root@kms-1 jdk1.8.0_73]# vi /etc/profile |
(3)讓環境變量生效
[root@kms-1 jdk1.8.0_73]# source /etc/profile |
(4)查看java
[root@kms-1 jdk1.8.0_73]# java -version |
(5)在其他主機上執行上述步驟
2.7安裝和配置數據庫
2.7.1安裝MySQL
(1)卸載已有的已有的mysql-libs
[root@kms-1 mysql5.7]# rpm -qa |grep mysql [root@kms-1 mysql5.7]# rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64 |
(2)使用RPM包安裝MySQL
[root@kms-1 mysql5.7]# rpm -ivh mysql-community-common-5.7.15-1.el6.x86_64.rpm [root@kms-1 mysql5.7]# rpm -ivh mysql-community-libs-5.7.15-1.el6.x86_64.rpm [root@kms-1 mysql5.7]# rpm -ivh mysql-community-client-5.7.15-1.el6.x86_64.rpm [root@kms-1 mysql5.7]# rpm -ivh mysql-community-server-5.7.15-1.el6.x86_64.rpm |
(3)設置開機啓動
[root@kms-1 mysql5.7]# chkconfig mysqld on |
(4)啓動MySQL服務
[root@kms-1 mysql5.7]# chkconfig mysqld on |
(5)關閉密碼校驗
[root@kms-1 mysql5.7]# echo "validate_password=off">> /etc/my.cnf |
(6)修改/etc/my.cnf
[root@kms-1 mysql5.7]# vi /etc/my.cnf |
添加如下內容
[mysqld] character-set-server=utf8 ############################ [client] default-character-set=utf8 [mysql] default-character-set=utf8 |
(7)重啓MySQL服務
[root@kms-1 ~]# service mysqld restart |
(8)查看root用戶初始密碼
[root@kms-1 ~]# cat /var/log/mysqld.log | more | grep password |
(9)登錄MySQL修改密碼
[root@kms-1 ~]# mysql -uroot -p mysql> set password='123qwe'; |
2.7.2爲Cloudera組件創建數據庫
mysql>CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY '123qwe'; mysql>CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON amon.* TO ' amon'@'%' IDENTIFIED BY '123qwe'; mysql>CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON rman.* TO ' rman'@'%' IDENTIFIED BY '123qwe'; mysql>CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON hue.* TO ' hue'@'%' IDENTIFIED BY '123qwe'; mysql>CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON metastore.* TO 'hive'@'%' IDENTIFIED BY '123qwe'; mysql>CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON sentry.* TO ' sentry'@'%' IDENTIFIED BY '123qwe'; mysql>CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON nav.* TO ' nav'@'%' IDENTIFIED BY '123qwe'; mysql>CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON navms.* TO ' navms'@'%' IDENTIFIED BY '123qwe'; mysql>CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; mysql>GRANT ALL ON oozie.* TO ' oozie'@'%' IDENTIFIED BY '123qwe'; mysql> GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123qwe'; mysql> flush privileges; |
2.8Linux參數配置
2.8.1設置swappiness
(1)查看swappiness
[root@kms-1 ~]# cat /proc/sys/vm/swappiness |
(2)設置swappiness的值
[root@kms-1 ~]# echo 10 > /proc/sys/vm/swappiness [root@kms-1 ~]# echo vm.swappiness = 10 >> /etc/sysctl.conf |
(3)在其他主機執行上述步驟
2.8.2關閉透明大頁面
(1) 查看透明大頁是否啓用
[root@kms-1 ~]# cat /sys/kernel/mm/transparent_hugepage/defrag [root@kms-1 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled |
下面狀態表示開啓狀態
(2)關閉透明大頁面
[root@kms-1 ~]# vi /etc/rc.d/rc.local |
在最後一行添加如下內容
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi if test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi |
(3)賦予rc.local具有可執行權限
[root@kms-1 ~]# chmod +x /etc/rc.d/rc.local |
(4)在其他主機執行上述步驟
2.9修改系統文件句柄數
(1) 查看文件句柄數
[root@kms-1 ~]# ulimit -n |
(2)修改限制
[root@kms-1 ~]# vi /etc/security/limits.conf |
添加如下內容
* soft nofile 100000 * hard nofile 100000 |
(3)在其他主機上執行上述操作,並重啓主機
三、安裝Cloudera Manager Server 和Agent
3.1解壓安裝cloudera-manager
cloudera manager 的目錄默認位置在/opt 下, 將解壓後的cm-5.15.1 和cloudera 目錄放到/opt 目錄下。
[root@kms-1 ~]tar -xzvf cloudera-manager-el6-cm5.15.1_x86_64.tar.gz -C /opt |
3.2安裝cloudera-manager數據庫
(1)將驅動改名,並放到/opt/cm-5.15.1/share/cmf/lib/和/usr/share/java目錄中
[root@kms-1 mysql5.7]# cp mysql-connector-java.jar /opt/cm-5.15.1/share/cmf/lib/ [root@kms-1 mysql5.7]# cp mysql-connector-java.jar /usr/share/java/ |
(2)初始化CM5 的數據庫:
/opt/cm-5.15.1/share/cmf/schema/scm_prepare_database.sh mysql scm scm |
3.3配置Agent
(1)將config.ini中的server_host 修改爲主節點的主機名。
[root@kms-1 ~]# vi /opt/cm-5.15.1/etc/cloudera-scm-agent/config.ini # Hostname of the CM server. server_host=kms-1.example.com |
(2)同步Agent 到其他節點
[root@kms-1 opt]# scp -r cm-5.15.1/ kms-2.example.com:/opt/ [root@kms-1 opt]# scp -r cm-5.15.1/ kms-3.example.com:/opt/ |
3.4在所有節點創建cloudera-scm 用戶
[root@kms-1 ~]# useradd --system --home=/opt/cm-5.15.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm |
3.5準備Parcels包
(1)將CHD5 相關的Parcel 包放到主節點的/opt/cloudera/parcel-repo/目錄
[root@kms-1 parcel-repo]# cp /opt/softwares/CDH5.15.1/* . |
相關的文件如下:
CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha1 manifest.json |
(2)將CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha1 重命名爲CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha
[root@kms-1 parcel-repo]# mv CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha1 CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha |
3.6啓動CM Server 和Agent
(1)在主節點上啓動cloudera-scm-server
[root@kms-1 ~]# /opt/cm-5.15.1/etc/init.d/cloudera-scm-server start |
(2)在所有節點上,啓動cloudera-scm-agent :
[root@kms-1 ~]# /opt/cm-5.15.1/etc/init.d/cloudera-scm-agent start |
3.7訪問CM
在瀏覽器中訪問http://192.168.10.200:7180
用戶名和密碼均爲admin
四、安裝CDH
4.1. 登錄後用戶許可條款和條件
4.2選擇部署版本
選擇免費版本後點擊繼續
4.3指定主機
選擇當前管理的主機後點擊繼續
4.4羣集安裝
選擇本地的Parcel版本後點擊繼續
等待安裝選定的parcel完成,點擊繼續
檢查主機的正確性,點擊完成
4.5羣集設置
選擇安裝所有服務,點擊繼續
自定義角色分配
數據庫設置,測試連接成功之後,點擊繼續
選擇默認配置,點擊繼續
其中服務成功之後,點擊繼續
安裝完成