CentOS7安裝CDH 第一章:CentOS7系統安裝html
CentOS7安裝CDH 第二章:CentOS7各個軟件安裝和啓動java
CentOS7安裝CDH 第三章:CDH中的問題和解決方法node
CentOS7安裝CDH 第四章:CDH的版本選擇和安裝方式mysql
CentOS7安裝CDH 第五章:CDH的安裝和部署-CDH5.7.0linux
CentOS7安裝CDH 第六章:CDH的管理-CDH5.12web
CentOS7安裝CDH 第七章:CDH集羣Hadoop的HA配置sql
CentOS7安裝CDH 第八章:CDH中對服務和機器的添加與刪除操做數據庫
CentOS7安裝CDH 第九章:CDH中安裝Kafkajson
CentOS7安裝CDH 第十章:CDH中安裝Spark2vim
以CentOS7.5和CDH5.7.0舉例:
下載地址:http://archive.cloudera.com/cm5/repo-as-tarball/5.7.0/
請選擇須要的版本。
下載地址:http://archive.cloudera.com/cdh5/parcels/5.7.0/
請選擇對應的版本,el7,並將後綴.sha1更改成.sha。
# echo "bigdata0*.tfpay.com" > /etc/hostname # echo "172.17.28.1 bigdata01.tfpay.com bigdata01" >> /etc/hosts # echo "172.17.28.2 bigdata02.tfpay.com bigdata02" >> /etc/hosts # echo "172.17.28.3 bigdata03.tfpay.com bigdata03" >> /etc/hosts # echo "172.17.28.4 bigdata04.tfpay.com bigdata04" >> /etc/hosts
# systemctl stop firewalld # systemctl disable firewalld # systemctl status firewalld # sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config # reboot # getenforce # sestatus -v
#在全部節點 yum -y install ntp #在master節點,註釋掉原有的server指向把時間服務器的域名地址指向一個靠譜可連的時間服務器,我選擇的是ntp.api.bz. # vim /etc/ntp.conf …… #server 0.centos.pool.ntp.org iburst #server 1.centos.pool.ntp.org iburst #server 2.centos.pool.ntp.org iburst #server 3.centos.pool.ntp.org iburst server ntp.api.gz iburst ...... # 在其他的節點上,把時間服務器的server指向master namenode節點 # vi /etc/ntp.conf …… #server 0.centos.pool.ntp.org iburst #server 1.centos.pool.ntp.org iburst #server 2.centos.pool.ntp.org iburst #server 3.centos.pool.ntp.org iburst server 172.17.28.1 iburst ...... # 在全部節點 systemctl start ntpd systemctl enable ntpd
目的:將上述下載的4個文件上傳到centos7服務器中,並配置好離線服務,安裝時便可以從該離線服務中下載,不須要再從官網中去下載,防止網絡錯誤。
# 查看該centos7是否存在httpd服務 rpm -qa|grep httpd # 若是不存在該服務就安裝 yum install -y httpd # 啓動該服務 systemctl start httpd.service #啓動 systemctl stop httpd.service #中止 systemctl restart httpd.service #重啓 # 設置該服務是否開機啓動 systemctl enable httpd.service #開機啓動 systemctl disable httpd.service #開機不啓動 # 查看該服務的狀態 systemctl status httpd.service
當訪問該服務器的80端口出現以下畫面即爲安裝和啓動成功
# 在/var/www/html下建立一個parcels文件夾,並將上述下載的3個文件上傳到該目錄下 cd /var/www/html/ mkdir parcels # 上傳以下3個文件 CDH-5.7.0-1.cdh5.7.0.p0.45-el7.parcel CDH-5.7.0-1.cdh5.7.0.p0.45-el7.parcel.sha manifest.json # 校驗文件下載未損壞 /usr/bin/sha1sum CDH-5.7.0-1.cdh5.7.0.p0.45-el7.parcel cat CDH-5.7.0-1.cdh5.7.0.p0.45-el7.parcel.sha
若是2個驗證碼同樣,證實該文件未損壞,可使用:
在瀏覽器中能打開以下網址,證實配置成功:
# 在/var/www/html建立cm5/redhat/7/x86_64/文件夾(和官網同樣的路徑) cd /var/www/html/ mkdir -p cm5/redhat/7/x86_64/ # 上傳cm5.7.0-centos7.tar.gz包到/var/www/html目錄下,並解壓 tar -zxf cm5.7.0-centos7.tar.gz # 將解壓好的文件夾移動到上述建立的文件夾下 mv cm /var/www/html/cm5/redhat/7/x86_64/ # 配置本地的yum源,cdh集羣在安裝時會就從本地down包,不會從官網了,全部節點都要執行 vim /etc/yum.repos.d/cloudera-manager.repo #在該文件下插入以下數據 [cloudera-manager] name = Cloudera Manager, Version 5.7.0 baseurl = http://192.168.12.131/cm5/redhat/7/x86_64/cm/5/ gpgcheck = 0
在瀏覽器中出現以下界面:
# 進入上述建立的CM的文件目錄下 cd /var/www/html/cm5/redhat/7/x86_64/cm/5.7.0/RPMS/x86_64/ # 安裝cloudera-manager-daemons-5.7.0-1.cm570.p0.76.el7.x86_64.rpm yum install cloudera-manager-daemons-5.7.0-1.cm570.p0.76.el7.x86_64.rpm # 安裝cloudera-manager-server-5.7.0-1.cm570.p0.76.el7.x86_64.rpm,請注意,不用安裝db版本的,那是使用默認數據庫的,在生產環境中通常不使用,生產環境中是使用MySQL數據庫的 yum -y install cloudera-manager-server-5.7.0-1.cm570.p0.76.el7.x86_64.rpm
# 在MySQL中建立元數據庫 create database cmf DEFAULT CHARACTER SET utf8; create database amon DEFAULT CHARACTER SET utf8; create database hive DEFAULT CHARACTER SET utf8; create database oozie DEFAULT CHARACTER SET utf8; create database hue DEFAULT CHARACTER SET utf8; grant all on cmf.* TO 'cmf'@'%' IDENTIFIED BY '123456'; grant all on amon.* TO 'amon'@'%' IDENTIFIED BY '123456'; grant all on hive.* TO 'hive'@'%' IDENTIFIED BY '123456'; grant all on oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456'; grant all on hue.* TO 'hue'@'%' IDENTIFIED BY '123456'; # 建立cmf用戶,並建立cmf數據庫,此數據庫需在CDH的數據庫配置文件中配置 create database cmf DEFAULT CHARACTER SET utf8; grant all on cmf.* TO 'cmf'@'%' IDENTIFIED BY '123456'; flush privileges; # 建立其餘數據庫,並受權 create database amon DEFAULT CHARACTER SET utf8; grant all on amon.* TO 'amon'@'%' IDENTIFIED BY '123456'; flush privileges; create database hive DEFAULT CHARSET SET utf8; grant all on hive.* TO 'hive'@'%' IDENTIFIED BY '123456'; flush privileges; create database oozie DEFAULT CHARSET SET utf8; grant all on oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456'; flush privileges; create database hue DEFAULT CHARACTER SET utf8; grant all on hue.* TO 'hue'@'%' IDENTIFIED BY '123456'; flush privileges; #給MySQL受權時會出現密碼問題,能夠執行以下命令 set global validate_password_policy=LOW; set global validate_password_length=6; #修改CDH關於數據庫的配置文件(以下圖所示) vim /etc/cloudera-scm-server/db.properties # 上傳與MySQL鏈接的jar包(注:jar包須要放入以下目錄,沒有就建立) # 全部節點都須要執行 cd /usr/share/java # 上傳jar包,並修改jar包的名字(此jar包不須要版本號) mv mysql-connector-java-8.0.15.jar mysql-connector-java.jar
CDH數據庫配置文件以下圖所示:
在CDH5.8.4版本以後又以下配置,請修改:
#啓動 service cloudera-scm-server start service cloudera-scm-server status #在啓動時有可能碰到The server time zone value 'EDT' is unrecognized異常,這是mysql的時區和系統的時區不匹配,能夠參考以下網站解決 https://blog.csdn.net/u010003835/article/details/88974898 #查看日誌 cd /var/log/cloudera-scm-server/ tail -f cloudera-scm-server.log # 出現以下7180即證實啓動成功 WebServerImpl:org.mortbay.log: Started SelectChannelConnector@0.0.0.0:7180
成功圖片以下所示:
此時查看MySQL數據庫,會發現cmf數據庫下回自動建立表:
使用命令會查看到鏈接cmf的用戶的具體信息:
show processlist;
當service cloudera-scm-server start啓動成功後,便可以在瀏覽器上服務7180端口(需開放防火牆)。
1. 在瀏覽器中輸入http://bigdata01.ouyang.com:7180 ,登陸CM的web界面,帳號和密碼均爲admin:
2. 點擊贊成許可:
3. 選擇CM的版本:
4. 使用搜索模式,搜索須要安裝CDH的主機:
1. 選擇存儲庫
點擊更多選項,將其餘遠程Parcel刪除,並輸入先前配置好的Parcel:
選擇CDH的版本,並選擇自定義存儲庫:
地址:http://bigdata01.ouyang.com/cm5/redhat/7/x86_64/cm/5/
2. 是否須要安裝JDK,默認不進行安裝,直接下一步:
3. 是否啓用單用戶模式,能夠自由選擇:
4. 提供 SSH 登陸憑據,能夠自由選擇,這裏直接使用root用戶:
5. 進行集羣安裝,若是安裝失敗能夠點擊詳細信息查看失敗緣由,解決後再從新安裝:
6. 安裝選定Parcel,先前配置的Parcel就做用於此處,若是不進行此配置會去官網進行下載,對網絡要求很高,併網絡中斷後會從新下載,較麻煩,使用此配置能夠直接下載成功,並速度很快:
7. 檢查主機正確性,通常來講此步會存在swap設置和大頁面2個問題,可使用以下代碼在每一個主機上進行配置,而後從新檢測便可:
#關閉大頁面 echo never > /sys/kernel/mm/transparent_hugepage/defrag echo never > /sys/kernel/mm/transparent_hugepage/enabled echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag'>> /etc/rc.local echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'>> /etc/rc.local #設置swap echo 'vm.swappiness = 10' >> /etc/sysctl.conf sysctl -p
1. 選擇要在集羣上安裝的CDH5服務:
2. 自定義角色分配,通常將主色分配到master節點,因此該節點內存要大,zookeeper須要安裝奇數臺,這裏是只安裝了一臺,不合理,請安裝3臺以上的奇數臺:
3. 進行數據庫設置,此步驟中用到的數據庫在上述的MySQL數據庫中均進行了建立和受權:
4. 審覈更改,此步驟中無論是開發測試仍是生產環境,均不須要更改,直接點擊繼續,進行下一步:
5. 首次運行,會自動運行,運行以後點擊繼續按鈕便可:
6. 安裝成功:
此狀態爲主機配置較低,運行不良,對集羣無影響,能夠正常工做。