cdh按裝及使用


環境

系統環境:CentOS 6.5 64bit

Java版本:java7

Mysql數據庫版本:mysql5.6

Cloudera Manager 版本:5.3.4

CDH版本:5.3.4

准備工作:

修改主機名字:vi /etc/sysconfig/network

修改主節點hosts文件vi /etc/hosts

 

然后把hosts文件scp到其他節點

scp /etc/hosts root@big02.beicai.edu:/etc/

關閉防火牆和SELinux(所有節點)

關閉防火牆:
service iptables stop (臨時關閉)
chkconfig iptables off (重啟后生效)

關閉SELINUX

setenforce 0(臨時生效)
修改/etc/selinux/config 下的 SELINUX=disabled(重啟后永久生效)

 

在主節點打通其他主機的ssh

ssh-keygen -t rsa 生成密鑰一路回車

 

進入到~/.ssh/目錄:cd ~/.ssh/

然后cat id_rsa.pub >> authorized_keys

再然后把authorized_keys文件通過scp拷貝到各個主機的~/.ssh目錄下:

scp authorized_keys root@big02:~/.ssh/

為了方便可以兩兩主機之間都打通ssh

所有節點

ssh-keygen -t rsa 生成密鑰

進入到~/.ssh/目錄:cd ~/.ssh/

然后把各個節點的公鑰放入到authorized_keyscat id_rsa.pub >> authorized_keys

再把authorized_keys通過scp到各個節點的.ssh目錄下

並且手動ssh登錄一遍以打通節點

安裝Oracle的Java:

CentOS自帶Open Jdk,不過運行CDH5需要使用Oracle的jdk,需要Java 7的支持。jdk安裝的時候,一定要采用rpm的安裝方式,而不要采用tar解壓的安裝方式。因為rpm的安裝方式,會在/usr/lib下新建兩個軟連接。

首先,卸載自帶的OpenJdk,使用rpm -qa | grep java查詢java相關的包,使用rpm -e --nodeps 包名卸載掉。

由於是rpm包並不需要我們來配置環境變量,我們只需要配置一個全局的JAVA_HOME變量即可,執行命令:

echo "JAVA_HOME=/usr/java/latest/" >> /etc/environment

執行命令java -version和javac -version,查看Jdk是否安裝正確。

卸載系統自帶OPEN-JDK(所有節點)

rpm -qa | grep java

rpm -e --nodeps java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64

安裝Oracle的JDK(所有節點)

rpm -ivh jdk-7u80-linux-x64.rpm

echo "JAVA_HOME=/usr/java/latest/" >> /etc/environment

java -version

 

安裝MYsql(主節點)

通過yum -y install mysql-server安裝mysql服務器。

設置開機啟動chkconfig mysqld on, 並啟動mysql服務service mysqld start

 並根據提示設置root的初始密碼:mysqladmin -u root password 'xxxx'

mysqladmin -u root password 'beicaiHADOOP'

進入mysql命令行mysql -uroot -pxxxx,創建以下數據庫:

mysql -uroot -pbeicaiHADOOP

create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 

給用戶授權

 grant all privileges on *.* to 'root'@'%' identified by 'beicaiHADOOP';

 flush privileges;刷新權限

 

安裝和配置NTP服務(所有節點)

集群中所有主機必須保持時間同步,如果時間相差較大會引起各種問題。

具體思路如下:

master節點作為ntp服務器與外界對時中心同步時間,隨后對所有datanode節點提供時間同步服務。所有datanode節點以master節點為基礎同步時間。

所有節點安裝相關組件:yum install ntp。

完成后,配置開機啟動:chkconfig ntpd on,

檢查是否設置成功:chkconfig --list ntpd,其中2-5為on狀態就代表成功。

配置內網NTP服務器(主節點)

在配置之前,先使用ntpdate手動同步一下時間,免得本機與對時中心時間差距太大,使得ntpd不能正常同步。這里選用202.112.10.36作為對時中心,命令如下:ntpdate -u 202.112.10.36。

 

ntp服務只有一個配置文件,配置好就可以。 這里只給出有用的配置,不需要的配置都用#注掉,這里就不在給出。

先備份在編輯

 

 

重啟服務

 

配置ntp客戶端

 

手動同步時間

 

重啟服務

 

 

安裝詳解:

安裝與配置Cloudera Manager Server 和Agent:

http://archive.cloudera.com/cm5/redhat/5/x86_64/cm/5.3.4

/opt/目錄下解壓tar -zxvf cloudera-manager-el6-cm5.3.4_x86_64.tar.gz

給所有節點添加cloudera-scm用戶

useradd --system --home=/opt/cm-5.3.4/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

為Cloudera Manager 5建立數據庫:

因為我們用的是Mysql數據庫,所以我們需要下載Mysql的JDBC驅動,本次從官網上下載的版本是:mysql-connector-java-5.1.38-bin.jar放到/opt/cm-5.3.4/share/cmf/lib/目錄下。

 mv mysql-connector-java-5.1.38-bin.jar /opt/cm-5.3.4/share/cmf/lib/

然后,建立數據庫:

/opt/cm-5.3.4/share/cmf/schema/scm_prepare_database.sh mysql -h localhost -uroot -pbeicaiHADOOP --scm-host localhost scm root scm

格式是:  scm_prepare_database.sh 數據庫類型  數據庫 服務器 用戶名 密碼  --scm-host  Cloudera_Manager_Server所在的機器  .......

 

 

此步驟可能出現的錯誤

 

錯誤分析 因為password顯示為yes也就是說賬號密碼正確,所以確定scm用戶登錄數據庫權限不足

解決辦法為scm加權

grant all privileges on *.* to 'scm'@'%' identified by 'scm';

開啟Cloudera Manager 5 Server端:

/opt/cm-5.3.4/etc/init.d/cloudera-scm-server start

設置成開機啟動:

cp /opt/cm-5.3.4/etc/init.d/cloudera-scm-server /etc/init.d/cloudera-scm-server

chkconfig cloudera-scm-server on

 

注意: 
server首次啟動不要立即關閉或重啟,因為首次啟動會自動創建相關表以及數據,
如果因為特殊原因中途退出,請先刪除所有表以及數據之后再次啟動,否則將會出現啟動不成功的情況。

Agent配置(所有節點)

開啟Cloudera Manager 5 Agents端。

現在主節點修改/opt/cm-5.3.4/etc/cloudera-scm-agent/config.ini下面的serer_host為主節點的主機名。

/opt/cm-5.3.4/etc/init.d/cloudera-scm-agent star

 vi /opt/cm-5.3.4/etc/cloudera-scm-agent/config.ini

 

先復制/opt/cm-5.3.4到其他節點上,

scp -r /opt/cm-5.3.4 root@big02.beicai.edu:/opt/

其他節點啟動agent

/opt/cm-5.3.4/etc/init.d/cloudera-scm-agent star

設置開機啟動:

cp /opt/cm-5.3.4/etc/init.d/cloudera-scm-agent /etc/init.d/cloudera-scm-agent

chkconfig cloudera-scm-agent on

制作本地源

先下載CDH到本地http://archive-primary.cloudera.com/cdh5/parcels/5.3.4/,這里需要下載三樣東西, 首先是與自己系統版本相對應的parcel包,然后是manifest.json文件。

CDH-5.3.4-1.cdh5.3.4.p0.4-el6.parcel

CDH-5.3.4-1.cdh5.3.4.p0.4-el6.parcel.sha1
manifest.json

下載完成后,將這兩個文件放到master節點的/opt/cloudera/parcel-repo下(目錄在安裝Cloudera Manager 5時已經生成),注意目錄一個字都不能錯。

接下來打開manifest.json文件,里面是json格式的配置,我們需要的就是與我們系統版本相對應的hash碼,因為我們用的是Centos6.5,所以找到如下位置找到“hash”所對應的值:

 

 

 

將“hash”的值復制下來,然后,將CDH-5.3.4-1.cdh5.3.4.p0.4-el6.parcel.sha1文件名改為CDH-5.3.4-1.cdh5.3.4.p0.4-el6.parcel.sha,將復制下來的hash值替換掉文本中的hash值,按理說應該是一致的。 保存好了,這樣,我們的本地源制作完成了。

 
然后的操作就是控制台按照步驟安裝即可。

安裝CDH

在瀏覽器中打開,url為主節點ip加端口號

http://123.59.146.157:7180

賬號密碼都是admin

 

 

選取安裝版本然后繼續

 

繼續

 

選擇要安裝的主機可以用規則搜索

 

搜索規則如下

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM