腳本部署(CM=5.10.0)
創(chuàng)建工作目錄workspace(自己定義)
上傳以下包到工作目錄
mysql-connector-java-5.1.40.jar
cloudera-manager-centos7-cm5.10.0_x86_64.tar.gz
CDH-5.10.0-1.cdh5.10.0.p0.41-el7.manifest.json
CDH-5.10.0-1.cdh5.10.0.p0.41-el7.parcel
CDH-5.10.0-1.cdh5.10.0.p0.41-el7.parcel.sha
jdk-8u60-linux-x64.rpm
ntp.conf
編輯hosts和workers,格式都是“ip hostname”
hosts是用來(lái)替換/etc/hosts的
workers是新裝或增加時(shí)的機(jī)器列表
解壓tar包
tar -xzf cloudera-manager-centos7-cm5.10.0_x86_64.tar.gz
修改/opt/cm-5.10.0/etc/cloudera-scm-agent/config.ini中server_host的值
運(yùn)行distribute.sh進(jìn)行環(huán)境準(zhǔn)備
#!/bin/bash
CURRENT_DIR=$(cd $(dirname $0);pwd)
#cm版本
CM=cm-5.10.0
mv mysql-connector-java-5.1.40.jar cm-5.10.0/share/cmf/lib/
ln -s $CM/share/cmf/lib/mysql-connector-java-5.1.40.jar $CM/share/cmf/lib/mysql-connector-java.jar
#生成秘鑰ssh-keygen
while read pair
do
? ? ? ? ?host=${pair#* }
? ? ? ? ?ip=${pair% *}
? ? ? ? ?echo "distribute to$ip/$host"
? ? ? ? ?#分發(fā)密鑰
? ? ? ? ?ssh-copy-id $ip
? ? ? ? ?#替換hosts
? ? ? ? ? scp $CURRENT_DIR/hosts? $ip:/etc/hosts
? ? ? ? ?#安裝vim
? ? ? ? ? ssh -n $ip yum install -y vim
? ? ? ? ?#修改vim注釋顏色為綠色
? ? ? ? ? ssh -n $ip "echo " highlight Comment ctermfg=green guifg=green" >> /etc/vimrc"
? ? ? ? ?#修改主機(jī)名
? ? ? ? ? ssh -n $ip hostname $host
? ? ? ? ? ssh -n $ip "echo "$hostname" > /etc/sysconfig/network"
? ? ? ? ? ssh -n $ip "echo "NOZEROCONF=yes" >> /etc/sysconfig/network"
? ? ? ? ? #安裝lsof
? ? ? ? ? ssh -n $ip yum install -y lsof
? ? ? ? ?#安裝ntp?
? ? ? ? ?ssh -n $ip yum install -y ntp
? ? ? ? ?scp $CURRENT_DIR/ntp.conf $ip:/etc/ntp.conf? ? ? ??
? ? ? ? ?ssh -n $ip service ntpd restart
? ? ? ? #安裝psmisc
? ? ? ? ssh -n $ip yum install -y psmisc
? ? ? ?#啟動(dòng)rpcbind
? ? ? ?ssh -n $ip service rpcbind start
? ? ? ?#修改swap
? ? ? ?ssh -n $ip "echo "0" > /proc/sys/vm/swappiness"?
? ? ? ?ssh -n $ip "echo "vm.swappiness=0" >> /etc/sysctl.conf"
? ? ? ?#安裝jdk
? ? ? ? ssh -n $ip mkdir /usr/java/? ? ? ??
? ? ? ? scp $CURRENT_DIR/jdk-8u60-linux-x64.rpm $ip:/usr/java/? ? ? ??
? ? ? ? ssh -n $ip rpm -i /usr/java/jdk-8u60-linux-x64.rpm? ? ? ??
? ? ? ? ssh -n $ip ln -s /usr/java/jdk1.8.0_60 /usr/java/jdk? ? ? ??
? ? ? ? ssh -n $ip "echo "exportJAVA_HOME=/usr/java/jdk" >> /etc/profile"
? ? ? ? ssh -n $ip "echo "exportPATH=\\\$JAVA_HOME/bin:\\\$PATH" >> /etc/profile"
? ? ? ? ssh -n $ip "echo "export CLASSPATH=.:\\\$JAVA_HOME/lib/dt.jar:\\\$JAVA_HOME/lib/tools.jar" >> /etc/profile"
? ? ? ? ssh -n $ip source/etc/profile
? ? ? ?#創(chuàng)建cm安裝主目錄
? ? ? ?ssh -n $ip mkdir /opt
? ? ? ?#分發(fā)cm文件
? ? ? ?scp -r $CURRENT_DIR/$CM/ $ip:/opt/
? ? ? ?#創(chuàng)建cloudera-scm-server用戶目錄
? ? ? ?ssh -n $ip useradd --system --home=/opt/$CM/run/cloudera-scm-server --no-create-home --shell=/bin/false--comment \"Cloudera SCM User\" cloudera-scm
done < $CURRENT_DIR/hosts
運(yùn)行start-server.sh啟動(dòng)Server
#!/bin/bash
CURRENT_DIR=$(cd $(dirname $0);pwd)
CM=cm-5.10.0
user=root
password=123456
host=127.0.0.1
#創(chuàng)建日志目錄
mkdir /var/log/cloudera-scm-server
chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-server
#創(chuàng)建parcel倉(cāng)庫(kù)目錄
mkdir -p /opt/cloudera/parcel-repo
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
#創(chuàng)建parcel目錄
mkdir -p /opt/cloudera/parcelschown cloudera-scm:cloudera-scm /opt/cloudera/parcels
#復(fù)制parcel到parcel倉(cāng)庫(kù)目錄
cp $CURRENT_DIR/*.manifest.json /opt/cloudera/parcel-repo
cp $CURRENT_DIR/*.parcel /opt/cloudera/parcel-repo
cp $CURRENT_DIR/*.parcel.sha /opt/cloudera/parcel-repo
#創(chuàng)建元數(shù)據(jù)庫(kù)
echo "create database cloudera_manager;create database reports_manager;create database oozie;create database hive;create database hue;"| mysql -u$user -p$password -h$host
#啟動(dòng)server
/opt/$CM/share/cmf/schema/scm_prepare_database.sh mysql cloudera_manager $user $password?
/opt/$CM/etc/init.d/cloudera-scm-server start
運(yùn)行start-agents.sh啟動(dòng)Agents
#!/bin/bash
CURRENT_DIR=$(cd $(dirname $0);pwd)
CM=cm-5.10.0
while read pair
do ip=${pair#* }
? ? ? echo "start agent on$ip"
? ? ? #啟動(dòng)agent
? ? ? ?ssh -n $ip /opt/$CM/etc/init.d/cloudera-scm-agent start
done < $CURRENT_DIR/workers
MySQL方面
以下都要安裝
mysql-community-client-5.7.12-1.el7.x86_64
mysql-community-devel-5.7.12-1.el7.x86_64
mysql-community-libs-5.7.12-1.el7.x86_64
mysql-community-server-5.7.12-1.el7.x86_64
mysql-community-common-5.7.12-1.el7.x86_64
mysql驅(qū)動(dòng)問題可能導(dǎo)致hive canary的測(cè)試過不去
Hue
可能缺少以下各種mysql包
libexslt.so.0.8(.17)
libmysqlclient.so.18(.1.0)
libxslt.so.1(1.28)
hive sasl問題
yum install cyrus-sasl-plain cyrus-sasl-devel cyrus-sasl-gssapi
系統(tǒng)方面
缺少pstree解決辦法:yum install psmisc -y
nfs啟動(dòng)失敱印:service rpcbind start
HDFS權(quán)限問題
將dfs.permission設(shè)為false
zookeeper connection reset by peer
zookeeper最大連接數(shù)問題
yarn模式問題
worker節(jié)點(diǎn)jar包缺失
hive mysql驅(qū)動(dòng)問題
在/opt/cloudera/parcels/CDH/lib/hive/lib下建一個(gè)軟鏈接
oozie mysql驅(qū)動(dòng)問題
/var/lib/oozie/mysql-connector-java.jar
yarn日志級(jí)別
yarn容器大小
hdfs權(quán)限
zookeeper最大連接數(shù)設(shè)置
oozie日志級(jí)別
hue時(shí)區(qū)