您好,登錄后才能下訂單哦!
CDH集群搭建步驟詳細文檔
CDH (Cloudera's Distribution,including Apache Hadoop),是Hadoop眾多分支中的一種,由Cloudera維護,基于穩定版本的Apache Hadoop構建,并集成了很多補丁,可直接用于生產環境。
Cloudera Manager則是為了便于在集群中進行Hadoop等大數據處理相關的服務安裝和監控管理的組件,對集群中主機、Hadoop、Hive、Spark等服務的安裝配置管理做了極大簡化。
CDH集群服務器規劃:192.168.2.41(CDH1),192.168.2.51(CDH2),192.168.2.61(CDH3)
操作系統:CentOS6.5 x64
Cloudera Manager:5.8.0
CDH: 5.8.0
采用parcel離線安裝方式,安裝方便,重裝什么的都非常方便。后期的集群統一包升級也非常好。
Cloudera Manager下載地址:
http://archive-primary.cloudera.com/cm5/cm/5/cloudera-manager-el6-cm5.8.0_x86_64.tar.gz
CDH安裝包地址:
http://archive.cloudera.com/cdh6/parcels/5.8.0/
由于我們的操作系統為CentOS6.5,需要下載以下文件:
CDH-5.8.0-1.cdh6.8.0.p0.42-el6.parcel
CDH-5.8.0-1.cdh6.8.0.p0.42-el6.parcel.sha1
manifest.json
以下操作均用root用戶操作。
vi /etc/sysconfig/network 修改hostname:
通過 service network restart 重啟網絡服務生效。
vi /etc/hosts ,修改ip與主機名的對應關系
注意:這里需要將每臺機器的ip及主機名對應關系都寫進去,本機的也要寫進去,否則啟動Agent的時候會提示hostname解析錯誤。
在主節點上執行 ssh-keygen -t rsa 一路回車,生成無密碼的密鑰對。
然后執行以下命令復制公鑰文件到所有datenode節點:
[root@cdh2 ~]# ssh-copy-id cdh2 [root@cdh2 ~]# ssh-copy-id cdh3 [root@cdh2 ~]# ssh-copy-id cdh4
測試:在主節點上ssh cdh3,正常情況下,不需要密碼就能直接登陸進去了。
CentOS,自帶OpenJdk,不過運行CDH5需要使用Oracle的Jdk,需要Java 7的支持。
卸載自帶的OpenJdk,使用 rpm -qa | grep java 查詢java相關的包,使用 rpm -e --nodeps 包名卸載之。
去Oracle的官網下載jdk。
http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz
解壓安裝包
[root@cdh2~]# tar –zxf jdk-7u79-linux-x64.tar.gz–C /usr/local [root@cdh2~]# cd/usr/local [root@cdh2~]# ln –sv jdk1.7.0_79/jdk [root@cdh2~]# vi /etc/profile.d/jdk.sh exportJAVA_HOME=/usr/local/jdk exportPATH=$PATH:$JAVA_HOME/bin [root@cdh2~]# chmod 755 /etc/profile.d/jdk.sh [root@cdh2~]# . /etc/profile.d/jdk.sh
查看是否安裝成功
[root@cdh2~]# java -version javaversion "1.7.0_79" Java(TM)SE Runtime Environment (build 1.7.0_79-b15) JavaHotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode) [root@cdh2~]#
通過 yum installmysql-server 安裝mysql服務器。 chkconfig mysqld on 設置開機啟動,并 service mysqld start 啟動mysql服務。
mysql -uroot-pxxxx 進入mysql命令行,創建以下數據庫:
createdatabase hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci; createdatabase hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci; createdatabase Reports DEFAULT CHARSET utf8 COLLATE utf8_general_ci; createdatabase Oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
設置root授權訪問以上所有的數據庫:
#授權root用戶在主節點擁有所有數據庫的訪問權限
grant all privileges on *.* to root@cdh2 identified by '123456'; flushprivileges;
注意: 需要在所有的節點上執行,因為涉及到的端口太多了,臨時關閉防火墻是為了安裝起來更方便,安裝完畢后可以根據需要設置防火墻策略,保證集群安全。
關閉防火墻:
service iptables stop (臨時關閉) chkconfig iptables off (重啟后生效)
關閉SELinux
setenforce 0(臨時生效) 修改 /etc/selinux/config 下的 SELINUX=disabled (重啟后永久生效)
各集群節點服務器必須同步時間,如果時間相差太大,在安裝CDH是可能會出現各種異常報錯。
安裝ntp
yum install ntp ntpdate
ntp同步時間命令,這里用1.cn.pool.ntp.org做時間同步服務器
ntpdate 1.cn.pool.ntp.org
主節點解壓安裝
cloudera manager的目錄默認位置在/opt,將其解壓到opt目錄下
[root@cdh2opt]# tar -zxvf cloudera-manager-el6-cm5.8.0_x86_64.tar.gz –C /opt
將解壓出來的兩個目錄的所有者改成root
chown -R root.root /opt/cloudera/ chown -R root.root /opt/cm-5.8.0/
為Cloudera Manager 5建立數據庫,首先需要去MySql的官網下載JDBC驅動。
地址:http://dev.mysql.com/downloads/connector/j/
解壓后,找到mysql-connector-java-5.1.41-bin.jar,放到/opt/cm-5.8.0/share/cmf/lib/中。
cp mysql-connector-java-5.1.41-bin.jar /opt/cm-5.8.0/share/cmf/lib/
在主節點初始化CM5的數據庫:
/opt/cm-5.8.0/share/cmf/schema/scm_prepare_database.shmysql cm -h localhost -uroot -p123456 --scm-host localhost scm scm scm
Agent配置:
修改/opt/cm-5.8.0/etc/cloudera-scm-agent/config.ini中的server_host為主節點的主機名。
server_host=cdh2
創建cloudera-scm-agent的pid目錄
mkdir /opt/cm-5.8.0/run/cloudera-scm-agent
同步Agent到其他節點
scp -r/opt/cm-5.8.0/ cdh3:/opt/ scp -r/opt/cm-5.8.0/ cdh4:/opt/
在所有節點創建cloudera-scm用戶
useradd --system --home=/opt/cm-5.8.0/run/cloudera-scm-server/ --no-create-home--shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
將CHD5相關的Parcel包放到主節點的/opt/cloudera/parcel-repo/目錄中。
相關的文件如下:
CDH-5.8.0-1.cdh6.8.0.p0.42-el6.parcel
CDH-5.8.0-1.cdh6.8.0.p0.42-el6.parcel.sha1
manifest.json
最后將CDH-5.8.0-1.cdh6.8.0.p0.42-el6.parcel.sha1文件后綴改成sha。否則,系統會重新下載CDH-5.8.0-1.cdh6.8.0.p0.42-el6.parcel文件。
服務端:
/opt/cm-5.8.0/etc/init.d/cloudera-scm-serverstart
客戶端:(所有節點啟動)啟動Agent服務。
/opt/cm-5.8.0/etc/init.d/cloudera-scm-agentstart
我們啟動的其實是個service腳本,需要停止服務將以上的start參數改為stop就可以了,重啟是restart。
Cloudera Manager Server和Agent都啟動以后,就可以進行CDH5的安裝配置了。
這時可以通過瀏覽器訪問主節點的7180端口測試一下了(由于CM Server的啟動需要花點時間,這里可能要等待一會才能訪問),默認的用戶名和密碼均為admin
勾選接受條款,點擊繼續
可以看到,免費版本的CM5已經沒有原來50個節點數量的限制了。
點擊繼續
各個Agent節點正常啟動后,可以在當前管理的主機列表中看到對應的節點。選擇要安裝的節點,點繼續。
出現以下包名和對應CDH版本,說明本地Parcel包配置無誤,這里選擇5.8.0,直接點繼續。
如果配置本地Parcel包無誤,那么下圖中的已下載,應該是瞬間就完成了,然后就是耐心等待分配過程就行了,大約10多分鐘,取決于內網網速。
接下來是服務器檢查,可能會遇到以下問題:
Cloudera 建議將 /proc/sys/vm/swappiness 設置為 0。當前設置為 60。使用 sysctl 命令在運行時更改該設置并編輯 /etc/sysctl.conf 以在重啟后保存該設置。您可以繼續進行安裝,但可能會遇到問題,Cloudera Manager 報告您的主機由于交換運行狀況不佳。以下主機受到影響:
通過 echo 0> /proc/sys/vm/swappiness 即可解決。點擊完成。
接下來,選擇安裝服務。
進行集群設置角色分配,沒特殊要求的話,選默認即可,點繼續。
數據庫設置
點擊連接測試,當全部都顯示Successful,點擊繼續
選擇默認,點擊繼續。
開始安裝配置服務,等待完成。
安裝完成,登陸控制臺
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。