準備工做已經完成,接下來咱們就要正式的開始在咱們服務器集羣上搭建CDHhtml
附上:java
喵了個咪的博客:w-blog.cnpython
cloudera官網: https://www.cloudera.com/mysql
官方文檔地址: https://www.cloudera.com/documentation/enterprise/latest.htmllinux
不管是Hadoop相關組件仍是cm自己都須要使用到數據庫,cm默認會使用內嵌數據庫,可是這種方式並不推薦在生產環節使用web
(阿里雲RDS是沒法支持create table xxx select *from xxx的操做不能吧CM數據庫放到)sql
在生產環境儘可能使用外部數據庫,不要使用CM自帶數據庫
這裏使用oneinstack進行安裝能夠去官網選擇你要的組件一條命令搞定數據庫
wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh --db_option 2 --dbinstallmethod 1 --dbrootpwd Sunmi388
其餘服務器上均可以跑一下空的安裝指令進行軟件更新和基礎依賴的安裝(所有N便可)vim
wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh
PS:若是你們沒有使用oneinstack那麼須要自主安裝ntp來保證服務器直接的時間的一致性centos
卸載系統自帶JDK
rpm -qa |grep java #若是有就卸載。沒有就不用執行下面 yum remove java* #刪除自帶的java
在CM上解壓SDK配置環境變量
cd /app/install tar -zxvf jdk-8u101-linux-x64.tar.gz mv jdk1.8.0_101/ /usr/local/jdk1.8 # 拷貝到其餘節點 scp -r /usr/local/jdk1.8 master-1:/usr/local/ scp -r /usr/local/jdk1.8 master-2:/usr/local/ scp -r /usr/local/jdk1.8 slave-1:/usr/local/ scp -r /usr/local/jdk1.8 slave-2:/usr/local/ scp -r /usr/local/jdk1.8 slave-3:/usr/local/
全部節點都進行環境變量配置
vim /etc/profile # java export JAVA_HOME=/usr/local/jdk1.8 export CLASSPATH=.:$CLASSPTAH:$JAVA_HOME/lib export PATH=$PATH:$JAVA_HOME/bin source /etc/profile
查看JAVA安裝是否成功:
[root@cm install]# java -version java version "1.8.0_101" Java(TM) SE Runtime Environment (build 1.8.0_101-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
每臺服務器上安裝CM所須要的第三方依賴包
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs redhat-lsb
在cm服務器上解壓CM
mkdir -p /usr/local/cloudera-manager tar zxf /app/install/cloudera-manager-centos7-cm5.15.0_x86_64.tar.gz -C /usr/local/cloudera-manager/
修改CM的配置文件,agent從節點配置文件指定CM的主節點server的通信地址
vim /usr/local/cloudera-manager/cm-5.15.0/etc/cloudera-scm-agent/config.ini [General] # Hostname of the CM server. server_host=cm
將CM的安裝目錄拷貝給集羣的其餘節點
scp -r /usr/local/cloudera-manager/ master-1:/usr/local/ scp -r /usr/local/cloudera-manager/ master-2:/usr/local/ scp -r /usr/local/cloudera-manager/ slave-1:/usr/local/ scp -r /usr/local/cloudera-manager/ slave-2:/usr/local/ scp -r /usr/local/cloudera-manager/ slave-3:/usr/local/
配置CM訪問mysql的權限並初始化在mysql中的狀態
mysql -u root -p mysql> grant all privileges on *.* to 'root'@'%' identified by 'Sunmi388' with grant option; mysql> flush privileges;
CM要使用mysql做爲數據源的話須要對應的驅動包(最易每一個節點都須要增長這個JAR包)
mkdir /usr/share/java/ cd /usr/share/java/ wget http://pic.w-blog.cn/mysql-connector-java.jar
/usr/local/cloudera-manager/cm-5.15.0/share/cmf/schema/scm_prepare_database.sh mysql -h cm -uroot -pSunmi388 --scm-host % scm scm scm --force
在cm上執行
mkdir -p /opt/cloudera/parcel-repo
在所有節點執行
mkdir -p /opt/cloudera/parcel
將parcel包文件移動到cm節點的parcel-repo目錄下
cp /app/install/CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel* /opt/cloudera/parcel-repo
修改校驗碼文件的後綴
mv /opt/cloudera/parcel-repo/CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel.sha
cm執行:
/usr/local/cloudera-manager/cm-5.15.0/etc/init.d/cloudera-scm-server start
查看cm是否啓動
默認web頁面會在cm服務器上開發7180端口
[root@cm init.d]# netstat -nltp|grep 7180 tcp 0 0 0.0.0.0:7180 0.0.0.0:* LISTEN 7333/java
等CM啓動完成以後纔在全部節點執行(否則agent會掛掉):
/usr/local/cloudera-manager/cm-5.15.0/etc/init.d/cloudera-scm-agent start # 查看agent是否啓動成功,若是未啓動成功須要再次啓動 ps -ef | grep agent
訪問CM的web⻚⾯http://xxxxxxxxx.com:7180(因爲CM Server的啓動須要花點時間,這⾥可能要等待⼀會才能訪問),默認的⽤戶名和密碼均爲admin
接受條約
選擇版本
咱們能夠看到CDH中的軟件列表
到這裏cm-service的安裝工做就已經算結束了