http://www.reibang.com/p/57179e03795f
http://blog.csdn.net/jdplus/article/details/45920733
下載CDH
下載CM
http://archive.cloudera.com/cm5/
->cm->5->選擇自己要下載的版本
下載parcels
http://archive.cloudera.com/cdh5/
->parcels->選擇版本->下載 *.parcel + *.parcel.shal1 + mainfest.json
安裝jdk
配置環(huán)境變量
http://www.linuxidc.com/Linux/2016-09/134941.htm
http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html
CDH 安裝
1.安裝操作系統(tǒng)
2.編輯用戶名
vi /etc/sysconfig/network
編輯 hosts
vi /etc/hosts
172.16.1.140 cdh0
172.16.1.141 cdh1
172.16.1.142 cdh2
3.配置網(wǎng)絡(luò)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:A5:F0:97
TYPE=Ethernet
UUID=bba6e950-82c4-4874-aca2-af94dc501018
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=172.16.1.142
NETMASK=255.255.0.0
GATEWAY=172.16.0.1
DNS1=114.114.114.114
DNS2=8.8.8.8
4.關(guān)閉 SELinux
vi /etc/sysconfig/selinux
SELIINUX=disabled
5.關(guān)閉防火墻
chkconfig iptables off 重啟生效 centos7 systemctl disable firewalld.service
6.配置SSH免密登錄
(注意:SSH免密登錄是主從、從從任意兩臺(tái)主機(jī)間互相都是可以免密登錄的,這里使用一種簡(jiǎn)單策略刀荒,將所有主機(jī)密鑰添加到master渗饮,然后將master的key拷貝到所有主機(jī),這樣所有的主機(jī)都有集群所有的登錄密鑰【免密登錄機(jī)制:如果我持有誰(shuí)的公鑰蒸走,我就允許誰(shuí)免密登錄進(jìn)入我的系統(tǒng)】)
1)所有的主機(jī)(包括主從)都生成密鑰
ssh-keygen -t rsa? 回車三次生成密鑰對(duì)(ls -a ./.ssh 可以看到生成后的內(nèi)容)
2)所有主機(jī)的公鑰拷貝到master
scp ./.ssh/id_rsa.pub root@172.16.1.141:/root/id_rsa.pub.s141? ? (其它主機(jī)類同)
3)所有的公鑰追加到同一個(gè)自動(dòng)認(rèn)證文件內(nèi)
cat ./id_rsa.pub.s142 >> ./.ssh/authorized_keys? (其它類同)
4)將最終含有所有主機(jī)公鑰的自動(dòng)認(rèn)證文件authorized_keys復(fù)制到其它所有的主機(jī)上
scp ./.ssh/authorized_keys root@172.16.1.141:/root/.ssh/authorized_keys (其它類同)
7.配置NTP(時(shí)間同步服務(wù))
1)yum install ntp毙替;配置開(kāi)機(jī)啟動(dòng):chkconfig ntpd on;檢查是否設(shè)置成功:chkconfig --list ntpd 其中2-5為on狀態(tài)就代表成功旗吁;(其它主機(jī)類同)
ntpdate -u [時(shí)間服務(wù)器IP或域名地址(如0.cn.pool.ntp.org)] 看一下是否能校時(shí)成功
啟動(dòng) ntp服務(wù)
systemctl start ntpd
2)編輯配置 vi /etc/ntp.conf
# 中國(guó)這邊最活躍的時(shí)間服務(wù)器 : http://www.pool.ntp.org/zone/cn
# prefer 指的意思是以該ntp服務(wù)器為主,見(jiàn):http://blog.sina.com.cn/s/blog_6243051e0100q8ee.html
master 配置增加 server 0.cn.pool.ntp.org prefer? ?
#增加NTP自身同步停局,不可用時(shí)用local時(shí)間提供給ntp客戶端 見(jiàn):http://weigang-gao.iteye.com/blog/2266919
server 127.127.1.0
fudge 127.127.1.0 stratum 8
ntp客戶端(從機(jī) slave )與master 同步 ntp.conf 只需直接增加? server cdh0[master]
立馬同步時(shí)間可使用 ntpdate -u 0.cn.pool.ntp.org
8.安裝JDK很钓,配置Java環(huán)境變量
1)卸載自帶的OpenJdk香府,使用rpm -qa | grep java查詢java相關(guān)的包,使用rpm -e --nodeps 包名卸載之
2)mkdir /usr/java
tar -zxvf jdk-8u131-linux-x64.tar.gz
vi /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_131
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile 重啟后依然有效码倦,但當(dāng)前不立即重啟需要立即生效,所以使用source命令
(其它主機(jī)類同)
9.安裝MySQL(僅master)
1)yum install mysql-server (centos7 [yum install mysql-community-server])
2)chkconfig mysqld on? 設(shè)置開(kāi)機(jī)啟動(dòng)
3)service mysqld start? 啟動(dòng)mysql服務(wù)
4)mysqladmin -u root password '123456'? 設(shè)置管理員賬戶密碼
5)mysql -uroot -p123456? ? 進(jìn)入mysql命令行企孩,創(chuàng)建相應(yīng)數(shù)據(jù)庫(kù)(按實(shí)際需要安裝創(chuàng)建數(shù)據(jù)庫(kù))
create database repm DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
6)#授權(quán)root用戶在主節(jié)點(diǎn)擁有所有數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限
grant all privileges on *.* to 'root'@'cdhmaster' identified by '123456' with grant option;flush privileges;
10.安裝CDH
添加scm用戶
useradd --system --home=/opt/cm-5.11.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
(所有節(jié)點(diǎn)都需要)
1)上傳cloudera-manager*.tar.gz 到/opt,tar -zxvf解壓,將mysql-connector-java*.jar拷貝到opt/cm-*/share/cmf/lib/
2)為cm配置數(shù)據(jù)庫(kù)
/opt/cm-5.11.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p123456 --scm-host localhost scm scm scm
vi /opt/cm-5.11.0/etc/cloudera-scm-agent/config.ini [server_host改為主節(jié)點(diǎn)名]
scp -r /opt/cm-5.11.0 root@cdh1:/opt/? ? 【其它節(jié)點(diǎn)類同】
3)將*parcel袁稽、*parcel.sha1勿璃、mainfest.json拷貝到主節(jié)點(diǎn)的/opt/cloudera/parcel-repo? *parcel.sha1重命名為*parcel.sha
4)啟動(dòng)
/opt/cm-5.11.0/etc/init.d/cloudera-scm-server start? #only 主機(jī) master
/opt/cm-5.11.0/etc/init.d/cloudera-scm-agent start? #所有主機(jī) slave
5)登錄webCM管理安裝墨礁,逐一安裝組件(以便排查具體的錯(cuò)誤随珠,幸好這樣離線安裝幾乎不會(huì)有什么意外的錯(cuò)誤)
組件安裝順序 zookeeper、hdfs碳褒、yarn(include mapreduce2)歹撒、hive莲组、ooize、hue(這個(gè)順序看停止集群服務(wù)的關(guān)停順序時(shí)可以側(cè)面反映出),然后安裝 impala,hbase,spark(spark安裝直接選擇 spark [on yarn]),不要選擇什么 spark singlealone 安裝 hive和ooize時(shí)暖夭,
記得把 MySQL mysql-connector-java*.jar拷貝到/opt/cloudera/parcels/CDH-5.11.0-1.cdh5.11.0.p0.34/lib/hive/lib 和 /var/lib/oozie
參考推薦:http://www.cnblogs.com/codedevelop/p/6762555.html
安裝錯(cuò)誤排除:
一锹杈、常規(guī)排查法:
1.sysout,syseer,查看完整錯(cuò)誤信息->2.找到錯(cuò)誤處根據(jù)提示判斷出錯(cuò)是權(quán)限不夠還是文件缺失或信息不一致等準(zhǔn)確定位,可以大致鎖定錯(cuò)誤范圍迈着,看是否有
另外的輸入日志如 /var/log/X ,如果沒(méi)有則根據(jù)判斷的出錯(cuò)范圍方向google
二竭望、重復(fù)安裝導(dǎo)致的問(wèn)題
特別是重復(fù)安裝導(dǎo)致的問(wèn)題,由于刪除不干凈寥假,或用戶名遺留的問(wèn)題市框,需要定位出部位然后手工修改刪除
三、實(shí)在不行,可能原步驟錯(cuò)誤導(dǎo)致亂樣糕韧,重新安裝枫振,還是不行,只有換版本
安裝的幾個(gè)地方遇到的問(wèn)題集錦:
舊用戶名的問(wèn)題萤彩,/var/log/X 和/var/lib/X都有原來(lái)遺留的文件粪滤,導(dǎo)致新安裝的時(shí)候名稱不對(duì)或權(quán)限不夠
http://blog.sina.com.cn/s/blog_7ea3d46f0101ljlz.html
hdfs的目錄命名實(shí)際是和Linux的一致,/dfs/
舊版本安裝CDH 5.3.3或是不同于tar.gz解壓安裝的方式雀扶,安裝hive時(shí)mysql的jdbc包需要在/usr/share/java/mysql-connector-java.jar[jar重命名]
安裝迂回策略:
1.當(dāng)上傳權(quán)限不夠時(shí)杖小,如,電信WiFi集群里愚墓,只有WiFi賬戶可以上傳予权,但CDH實(shí)際操作是需要root權(quán)限,所以可以采用迂回策略浪册,先把jar等上傳到主機(jī)扫腺,然后用
mv 命令移動(dòng)到指定地點(diǎn),然后用chown修改所屬用戶和所屬用戶組村象,chmod修改用戶權(quán)限笆环;
2攒至、yum工具安裝軟件包
當(dāng)我們的集群內(nèi)網(wǎng)無(wú)法上外網(wǎng)時(shí),我們需要安裝一下軟件如ntp,但是這些安裝包郵很多依賴躁劣,為保證我們一次性有保證的找到所有包安裝迫吐,我們可以在其他可以上網(wǎng)的
機(jī)子上修改yum使用下載緩存,緩存安裝包到目錄账忘,yum安裝后將包拷貝到不能上網(wǎng)的集群志膀,設(shè)置yum安裝使用本地目錄,這樣就可以離線yum安裝了闪萄,同時(shí)可以使用httpd
配置梧却,使多個(gè)機(jī)子都到同一主機(jī)目錄獲取安裝包安裝;
centos 設(shè)置時(shí)間,分兩次設(shè)置败去,先設(shè)置年月日,然后設(shè)置時(shí)分秒
date -s 20170817
date -s 10:27:12
/opt/cm-5.12.2/etc/init.d/cloudera-scm-server: line 109: pstree: command not found
yum install psmisc
#yum -y install perl perl-devel
rm -rf /opt/cm-5.12.2/lib/cloudera-scm-agent/*
cdh 安裝時(shí)提示 ERROR? Failure due to stall on seeded torrent.
一個(gè)是要關(guān)閉 ipv6 ,一個(gè)是要必須先啟動(dòng)cm Server完成(能看到web管理頁(yè)面)烈拒,后再啟動(dòng)agent
=====================================================
rpm -qa | grep java
rpm -e --nodeps 包名
oracle 下載jdk rpm
rpm -ivh 包名
systemctl stop firewalld.service
systemctl disable firewalld.service
vi /etc/selinux/config
將SELINUX=enforcing改為SELINUX=disabled
修改主機(jī)名
hostnamectl set-hostname cdh0
http://archive.cloudera.com/cm5/cm/5/cloudera-manager-centos7-cm5.13.1_x86_64.tar.gz
創(chuàng)建目錄
/opt/cloudera/parcel-repo
/opt/cm-5.13.1/etc/init.d/cloudera-scm-server start
/opt/cm-5.13.1/etc/init.d/cloudera-scm-agent start