CDH安裝4-具體安裝

service cloudera-scm-server status

/opt/cloudera/cm/lib? ? 下添加mysql驅(qū)動

CDH 添加監(jiān)控


http://cdh-dev1:7180/cmf/home

選擇?添加 Cloudera Management Service

JAVA環(huán)境變量配置好,但是CDH無法識別,報錯NO JDK

find / -name cloudera-config.sh

配置在這里: cat? /opt/cm-5.13.2/lib64/cmf/service/common/cloudera-config.sh

其中可以看到:

local JAVA8_HOME_CANDIDATES=(

'/usr/java/jdk1.8'

'/usr/java/jre1.8'

'/usr/lib/jvm/j2sdk1.8-oracle'

'/usr/lib/jvm/j2sdk1.8-oracle/jre'

'/usr/lib/jvm/java-8-oracle'

)


于是,建立一個已經(jīng)有的JAVA_HOME ?鏈接到?/usr/java/jdk1.8 就好了!? jdk實際安裝在/usr/local/java/jdk1.8.0_111/下

ln -s /usr/java/jdk1.8/ /usr/local/java/jdk1.8.0_111/




安裝中遇到的問題1:CDH5.13.0的hue的load balance紅色警報,無法啟動

查看日志根本沒有生成


解決方案:

yum install?httpd?

yum install?mod_ssl


安裝中遇到的問題1:安裝hue時報錯

查看cm-server的log信息,報錯如下

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb

module: libmysqlclient.so.18: cannot open shared object file: No such

file or directory

解決方案:

因為centos7自帶mariaDB,需要刪除,在刪除mariaDB的時候,只需要在一臺機(jī)器上刪除即可。

從未刪除mariaDB的機(jī)器上的 /usr/lib64/mysql文件夾下拷貝libmysqlclient.so.18到安裝了mysql的機(jī)器上的

/usr/lib64/mysql文件夾下, 然后做軟連接

ln -s /usr/lib64/mysql/libmysqlclient.so.18.0.0 /usr/lib64/libmysqlclient.so.18

一、前期準(zhǔn)備

安裝環(huán)境

系統(tǒng)配置:

系統(tǒng):centos 7 最小安裝版 64位

內(nèi)存:10G 10G 10G 8G

四臺機(jī)器組成小集群(物理機(jī))

CDH-DEV1 CDH-DEV2 CDH-DEV3 CDH-DEV4

需要下載的安裝包

cloudera-manager-centos7-cm5.13.0_x86_64.tar.gz

CDH相關(guān)

注意下載相應(yīng)系統(tǒng)的安裝包

CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel

CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha1

manifest.json

jdk-8u144-linux-x64.tar.gz

mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar

mysql-connector-java-5.1.44-bin.jar

Installing Cloudera Manager and CDH

二、環(huán)境配置

注意所有操作都需要使用root權(quán)限操作

基本配置(所有節(jié)點)

修改 /etc/hostname

CDH-DEV1

修改 /etc/hosts,此處一定要注意,不要按照網(wǎng)上有的說明,將127.0.0.1那一行里的localhost.localdomain改成主機(jī)名稱,在安裝Cloudera Agent的時候會識別不出名稱和IP

修改 /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=CDH-DEV1

Java環(huán)境(所有節(jié)點)

下載jdk-8u144-linux-x64.tar.gz

解壓到/usr/java(可根據(jù)個人習(xí)慣創(chuàng)建目錄)

tar xzvf jdk-8u144-linux-x64.tar.gz

配置環(huán)境變量

[root@CDH-DEV1 .ssh]# vim /etc/profile #在文件末尾添加下面三行

export JAVA_HOME=/usr/java/jdk1.8.0_144

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

[root@CDH-DEV1 .ssh]# source /etc/profile #使生效

SSH無密碼登錄(集群內(nèi)節(jié)點能夠互相無密碼訪問)

思路:第一臺機(jī)器配置authorized_keys,scp到第二臺機(jī)器,將第二臺機(jī)器的公鑰添加到authorized_keys,然后將其scp到第三臺,以此類推,直到配置到最后一臺機(jī)器,將最后一臺機(jī)器的authorized_keys scp到所有節(jié)點,如下

1)在主節(jié)點(CDH-DEV1)執(zhí)行? 免密登錄步驟錯誤 待改

[root@CDH-DEV1 .ssh]# ssh-keygen -t rsa

[root@CDH-DEV1 .ssh]# cat id_rsa.pub >> authorized_keys

[root@CDH-DEV1 .ssh]# chmod 600 authorized_keys

[root@CDH-DEV1 .ssh]# scp authorized_keys root@CDH-DEV2:~/.ssh

2)在CDH-DEV2執(zhí)行

[root@CDH-DEV2 .ssh]# ssh-keygen -t rsa

[root@CDH-DEV2 .ssh]# cat id_rsa.pub >> authorized_keys

[root@CDH-DEV2 .ssh]# chmod 600 authorized_keys

[root@CDH-DEV2 .ssh]# scp authorized_keys root@CDH-DEV3:~/.ssh

3)在CDH-DEV3執(zhí)行

[root@CDH-DEV3 .ssh]# ssh-keygen -t rsa

[root@CDH-DEV3 .ssh]# cat id_rsa.pub >> authorized_keys

[root@CDH-DEV3 .ssh]# chmod 600 authorized_keys

[root@CDH-DEV3 .ssh]# scp authorized_keys root@CDH-DEV4:~/.ssh

4)在CDH-DEV4執(zhí)行

[root@CDH-DEV4 .ssh]# ssh-keygen -t rsa

[root@CDH-DEV4 .ssh]# cat id_rsa.pub >> authorized_keys

[root@CDH-DEV4 .ssh]# chmod 600 authorized_keys

[root@CDH-DEV4 .ssh]# scp authorized_keys root@CDH-DEV1:~/.ssh

[root@CDH-DEV4 .ssh]# scp authorized_keys root@CDH-DEV2:~/.ssh

[root@CDH-DEV4 .ssh]# scp authorized_keys root@CDH-DEV3:~/.ssh

安裝MySQL(主節(jié)點安裝即可)

安裝步驟:

(1)此處需要注意的是centos 7 默認(rèn)安裝的是mariadb,如果不卸載直接安裝的話會報錯,報錯信息mariadb-libs is obsoleted by mysql-community-libs-5.7.9-1.el7.x86_64

rpm -qa | grep mariadb #查看安裝信息

rpm -e mariadb-libs* --nodeps #根據(jù)查找到的軟件包信息卸載

(2)安裝MySQL(必須按以下順序安裝) 按照此法無法安裝

rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.9-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.9-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.9-1.el7.x86_64.rpm

(3)基本設(shè)置

service mysqld start #啟動服務(wù)

vim /var/log/mysqld.log? #查看初始密碼

mysql -uroot -p? #登錄

set password = password('test01.') #設(shè)置密碼? 密碼要

#授權(quán)用戶root使用密碼passwd從任意主機(jī)連接到mysql服務(wù)器

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'passwd' WITH GRANT OPTION;

flush privileges;

MYSQL 5.7 密碼要復(fù)雜

GRANT ALL PRIVILEGES ON *.* TO 'scm'@'%' IDENTIFIED BY 'passwd' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO 'scm'@'localhost' IDENTIFIED BY 'passwd' WITH GRANT OPTION;

flush privileges;

(4)建數(shù)據(jù)庫(用于后邊組件安裝)

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;

關(guān)閉防火墻(所有節(jié)點)

centos 7 默認(rèn)使用的是firewall,不是iptables

systemctl stop firewalld.service

systemctl stop firewalld.service #停止firewall

systemctl disable firewalld.service #禁止firewall開機(jī)啟動

systemctl mask firewalld.service? #

關(guān)閉SELinux(所有節(jié)點)

[root@CDH-DEV1 .ssh]# vim /etc/selinux/config

設(shè)置SELINUX=disabled

配置NTP服務(wù)(所有節(jié)點)

安裝

[root@CDH-DEV1 .ssh]# yum install ntp

設(shè)置開機(jī)啟動

[root@CDH-DEV1 .ssh]# chkconfig ntpd on

同步時間

ntpdate pool.ntp.org


服務(wù)啟動

[root@CDH-DEV1 .ssh]# service ntpd start

查看時間同步狀態(tài)

ntpstat

所有節(jié)點上創(chuàng)建用戶

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

三、安裝

安裝Cloudera Manager Server 和Agent

(1)將下載好的cloudera-manager-centos7-cm5.13.0_x86_64.tar.gz解壓到主節(jié)點的/opt/,解壓出來的文件夾為cloudera與cm-4.13.0

(2)為Cloudera Manager建立數(shù)據(jù)庫,此處需要前邊下載好的mysql-connector-java-5.1.44-bin.jar

scp mysql-connector-java-5.1.44-bin.jar root@CDH-DEV1:/opt/cm-5.13.0/share/cmf/lib/

scp mysql-connector-java-5.1.44-bin.jar root@CDH-DEV1:/usr/share/java/

/opt/cm-5.13.0/share/cmf/schema/scm_prepare_database.sh mysql -uroot -p scm scm

(3)配置Agent

vim opt/cm-5.1.3/etc/cloudera-scm-agent/config.ini

server_host=CDH-DEV1

#拷貝到其他節(jié)點

[root@CDH-DEV1 parcel-repo]# scp -r /opt/cm-5.13.0/ root@cdh-dev2:/opt/

[root@CDH-DEV1 parcel-repo]# scp -r /opt/cm-5.13.0/ root@cdh-dev3:/opt/

[root@CDH-DEV1 parcel-repo]# scp -r /opt/cm-5.13.0/ root@cdh-dev4:/opt/

(4)準(zhǔn)備parcels,將CDH相關(guān)文件拷貝到主節(jié)點/opt/cloudera/parcel-repo/

#相關(guān)文件?

CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel

CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha1

manifest.json

#操作

scp mysql-connector-java-5.1.44-bin.jar root@CDH-DEV1:/opt/cm-5.13.0/share/cmf/lib/

scp mysql-connector-java-5.1.44-bin.jar root@CDH-DEV1:/usr/share/java/

需要將CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha1改成CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha,否則安裝時會重新下載,很重要?。?/p>

[root@CDH-DEV1 parcel-repo]# mv CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha1 CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha

(5)啟動

#主節(jié)點

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

#主節(jié)點及其他節(jié)點

/opt/cm-5.13.0/etc/init.d/cloudera-scm-agent start

啟動需要點時間,可以查看數(shù)據(jù)庫scm中的hosts表,如果里面出現(xiàn)節(jié)點信息表示server啟動完成

2. 開始安裝Hadoop集群

登錄界面,默認(rèn)登錄用戶名和密碼都是admin

選擇安裝版本

為CDH群集安裝指定主機(jī)

此處是在當(dāng)前管理的主機(jī)里選擇機(jī)器,不要在新主機(jī)里查找,另外這個地方顯示的主機(jī)信息一定要對,我開始的時候因為主機(jī)名配置出問題,導(dǎo)致無法識別主機(jī)名稱和IP,雖然agent的uuid是分配到了四臺機(jī)器上,但是后邊的安裝無法進(jìn)行。

群集安裝

群集安裝--安裝指定parcel

分配時間受帶寬影響,我的是千兆交換機(jī)組成的局域網(wǎng),速度還可以,應(yīng)該不到十分鐘

檢查主機(jī)正確性

第一個警告直接在所有節(jié)點上執(zhí)行echo 10 > /proc/sys/vm/swappiness

第二個警告按照上面的說明,在所有節(jié)點上執(zhí)行這兩條命令

echo never > /sys/kernel/mm/transparent_hugepage/defrag >> /etc/rc.local

echo never > /sys/kernel/mm/transparent_hugepage/enabled >> /etc/rc.local

群集設(shè)置--選擇安裝服務(wù)--按需選擇

群集設(shè)置--自定義角色--默認(rèn)即可

群集設(shè)置--數(shù)據(jù)庫設(shè)置

此處hue老出問題,一直解決不了,為了整條線走下去,而且目測hue基本用不到,所以選擇了放棄安裝hue.

貼一下網(wǎng)上找的幾個解決方法,我都試了,沒有解決,不知道什么問題,以后研究研究

缺少mysql-community-libs-compat-5.7.20-1.el7.x86_64.rpm

缺少python-lxml,yum install python-lxml

群集設(shè)置--審查--默認(rèn)即可

群集設(shè)置--首次設(shè)置--默認(rèn)即可

開始安裝服務(wù)

此處hive ,oozie會安裝失敗,失敗信息如下。因為我們使用了MySQL作為hive元數(shù)據(jù)存儲,需要將mysql驅(qū)動拷貝到hive和oozie目錄下

解決方法(需要在所有節(jié)點上執(zhí)行)

cp /opt/cm-5.13.0/share/cmf/lib/mysql-connector-java-5.1.44-bin.jar /opt/cloudera/parcels/CDH-5.13.0-1.cdh5.13.0.p0.29/lib/hive/lib/

cp /opt/cm-5.13.0/share/cmf/lib/mysql-connector-java-5.1.44-bin.jar /var/lib/oozie/? ? ?

安裝完成

四、踩過的坑

數(shù)據(jù)庫配置

問題描述:開始給Cloudera Manager配置數(shù)據(jù)庫的時候,找的是網(wǎng)上的命令,/opt/cm-5.13.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p --scm-host localhost scm scm scm,一直報錯,不知道什么問題,報錯信息java.sql.SQLException: Your password does not satisfy the current policy requirements,各種改密碼復(fù)雜度及降低數(shù)據(jù)庫密碼復(fù)雜度要求都不行,懷疑是CDH版本更新命令參數(shù)發(fā)生了變化

解決方法,去掉部分參數(shù),

/opt/cm-5.13.0/share/cmf/schema/scm_prepare_database.sh mysql -uroot -p scm scm

cloudera-scm-server啟動,cm-5.13.0/etc/init.d/cloudera-scm-server:行109: pstree: 未找到命令,centos最小安裝版缺少軟件包,安裝即可,yum install psmisc

中途安裝失敗,重新安裝

關(guān)閉所有服務(wù)

#主節(jié)點

[root@CDH-DEV1 opt]# /opt/cm-5.13.0/etc/init.d/cloudera-scm-server stop

#主節(jié)點及其他節(jié)點

[root@CDH-DEV1 opt]# /opt/cm-5.13.0/etc/init.d/cloudera-scm-agent stop

刪除agent uuid

rm -rf /opt/cm-5.13.0/lib/cloudera-scm-agent/*

刪除數(shù)據(jù)庫scm

重新配置數(shù)據(jù)庫

/opt/cm-5.13.0/share/cmf/schema/scm_prepare_database.sh mysql -hlocalhost -uroot -p scm scm

啟動Cloudera server和agent,按照之前步驟安裝即可

五、參考網(wǎng)站

Installing Cloudera Manager and CDH

Cloudera Manager 5和CDH5離線安裝,CDH-5.7.1

離線安裝Cloudera Manager 5和CDH5(最新版5.1.3) 完全教程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容