登陸阿里雲控制檯,拍攝快照,注意有幾個關鍵點儘可能拍攝快照,系統初始狀態、CM環境準備完成、CM安裝完成、CDH安裝完成。java
三個主機都執行。python
$mkdir /data
$df -h $fdish -l
得知/dev/vdb沒有掛載mysql
$mkfs.ext3 /dev/vdb
$mkdir /opt/shell/ $vim /opt/shell/mymount.sh
#!/bin/bash # mount -o rw /dev/vdb /data
$chmod 777 /opt/shell/mymount.sh
$vim /etc/rc.local
在文件中加入一行linux
/opt/shell/mymount.sh
$vim /etc/sysconfig/network
$service network restart
vi /etc/hosts
內網ip1 cdh01
內網ip2 cdh02
內網ip3 cdh03
三個雲主機要設置自身免密碼登陸,而且三個雲主機之間設置兩兩免密碼登陸。以cdh01爲例:sql
在cdh01產生密鑰,將公鑰追加劇定向到認證文件中。在三臺機器中都執行以下命令:shell
$ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa $cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
將cdh01的公鑰遠程拷貝到cdh02中,這時須要輸入cdh02的密碼;再在cdh02中將已經遠程拷貝過來的cdh01的公鑰追加劇定向到cdh02的認證文件中。這是由於私鑰加密,公鑰解密,cdh01與cdh02通訊須要先用私鑰加密,私鑰加密的要用公鑰解密,因此要將cdh01的公鑰追加到cdh02的認證文件中。數據庫
$scp ~/.ssh/id_dsa.pub root@cdh02:~ $cat ~/id_dsa.pub >> ~/.ssh/authorized_keys
$scp ~/.ssh/id_dsa.pub root@cdh03:~ $cat ~/id_dsa.pub >> ~/.ssh/authorized_keys
同理能夠完成cdh02免密碼登陸到cdh01和cdh03,cdh03免密碼登陸到cdh01和cdh02。vim
$service iptables stop
$chkconfig iptables off
$vim /etc/selinux/config
將SELINUX=enforcing 修改成 SELINUX=disabledapi
$/usr/sbin/sestatus
執行$/usr/sbin/sestatus,可見SELINUX status:(enabled:開啓;disabled:關閉)瀏覽器
$rpm -ivh jdk-7u79-linux-x64.rpm
$vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.7.0_79 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
$source /etc/profile
$yum -y install ntp
$chkconfig ntpd on
$chkconfig --list ntpd
$ntpdate -u ntp1.aliyun.com
查看系統是否安裝了MySQL,使用命令
$rpm -qa | grep mysql
卸載命令相似下面
$rpm -ev mysql-*.RHEL4.1 $yum -y remove mysql-libs-5.1.71-1.el6.x86_64
$find / -name mysql
刪除查找出的全部mysql目錄,例如:
$rm -rf /var/lib/mysql $rm -rf /var/lib/mysql $rm -rf /usr/lib64/mysql $rm -fr /usr/include/mysql
卸載後/etc/my.cnf有可能不會刪除,須要進行手工刪除。
rm -f /etc/my.cnf
$rpm -qa|grep -i mysql
若是無結果,說明已經卸載完全。
使用以下命令安裝Server和Client:
$rpm -ivh MySQL-server-5.6.*.rpm $rpm -ivh MySQL-client-5.6.*.rpm $rpm -ivh MySQL-devel-5.6.*.rpm
注意MySQL的版本選擇5.5或5.6,因其和Hadoop生態圈的Oozie、Hue、Hive/Impala、Sqoop等的兼容性比較好。
查看狀態
$service mysql status
若是沒有運行,則使用以下命令啓動:
$service mysql start
$chkconfig --add mysql
#或者
$chkconfig mysql on
查看是否生效
$chkconfig --list mysql
$cat /root/.mysql_secret
使用以下命令進入mysql:
$mysql -u root -p
輸入密碼初始密碼後進入MySQL命令行,再修改密碼。
mysql>SET PASSWORD = PASSWORD('newpwd'); mysql>quit;
退出後再用新密碼測試
$mysql -uroot -pnewpwd
若是能夠登陸成功,則表示mysql數據庫已經安裝成功。
全部節點都需下載安裝依賴包。
$yum -y install chkconfig python 2.6 required for CDH 5 bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb
拷貝cloudera-manager-el6-cm5.6.1_x86_64.tar.gz 到全部Server、Agent節點
$mkdir /opt/cloudera-manager
$tar -zxvf /opt/tools/cdh/cloudera-manager-el6-cm5.6.1_x86_64.tar.gz -C /opt/cloudera-manager
$useradd --system --home=/opt/cloudera-manager/cm-5.6.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
$cat /etc/passwd
全部的Agent機器都須要修改
修改文件/opt/cloudera-manager/cm-5.6.1/etc/cloudera-scm-agent/config.ini中server_host以及server_port。
server_host=cdh01,server_port 7182
在主節點執行。
拷貝/opt/tools/cdh/目錄下的mysql jar文件到目錄/usr/share/java/中,而且jar包名要修改成mysql-connector-java.jar。若是沒有java目錄須要先建立。
$mkdir /usr/share/java $cp /opt/tools/cdh/mysql-connector-java-5.6-bin.jar /usr/share/java/mysql-connector-java.jar
由於在啓動時會到這個目錄下找jar包,若是沒有找到就認爲沒有jar包,會報數據庫JDBC connection的錯誤。
進入mysql,建立臨時帳戶,來於創建數據庫。
mysql>grant all on *.* to 'temp'@'%' identified by 'temp' with grant option; mysql>FLUSH PRIVILEGES;
$cd /opt/cloudera-manager/cm-5.6.1/share/cmf/schema/
$./scm_prepare_database.sh mysql temp -h cdh01 -utemp -ptemp --scm-host cdh01 scm scm scm
mysql> drop user 'temp'@'%';
在Server節點建立parcel-repo目錄並修改權限。
$mkdir -p /opt/cloudera/parcel-repo $chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
全部Agent節點建立parcels目錄並修改權限。
$mkdir -p /opt/cloudera/parcels $chown cloudera-scm:cloudera-scm /opt/cloudera/parcels
直接上傳已下載文件CDH-5.6.1-1.cdh5.6.1.p0.3-el6.parcel.sha1和CDH-5.6.1-1.cdh5.6.1.p0.3-el6.parcel。或者直接用wget下載:
$wget http://archive-primary.cloudera.com/cdh5/parcels/5.6.1/CDH-5.6.1-1.cdh5.6.1.p0.3-el6.parcel.sha1 >> /dev/null & $wget http://archive-primary.cloudera.com/cdh5/parcels/5.6.1/CDH-5.6.1-1.cdh5.6.1.p0.3-el6.parcel >> /dev/null &
將這兩個文件拷貝到/opt/cloudera/parcel-repo目錄下。
$cd /opt/cloudera-manager/cm-5.6.1/etc/init.d/
首次啓動會自動建立表以及數據,不要當即關閉或重啓,不然須要刪除全部表及數據從新安裝。
$./cloudera-scm-server start
$./cloudera-scm-agent start
Cloudera Manager的安裝日誌在/opt/cloudera-manager/cm-5.6.1/log目錄下,其中有agent、server和cmf三個文件夾。server在啓動的時候會啓動不少腳本,對數據庫的建立、包的操做,會花費一段時間。
地址:http://cdh01公網ip:7180/
用戶名:admin
密碼:admin
將三臺雲主機全選。
使用Parcel方法,CDH版本選擇5.6.1。
若是出現警告,按提示解決便可
例如:echo never > /sys/kernel/mm/transparent_hugepage/defrag」以禁用此設置。而後將同一命令添加到 /etc/rc.local 等初始腳本中,以便在系統重啓時予以設置。
最終可見安裝完成的界面以下: