CDH安裝教程
本篇是剛進入公司安裝CDH的記錄,遠程服務器3臺,用Xshell6 工具連接

虛擬的環境準備
1、主機名設定(每一臺服務器都設定:后面沒有單獨說明的每臺都要進行配置):
hostnamectl set-hostname dsy0
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=dsy0
cat /etc/sysconfig/network

2、網路配置:
vim /etc/hosts
cat /etc/hosts

3、禁用ipv6網路協議
沒有安裝 ipconfig模塊,需要用戶手動安裝
yum -y install net-tools
禁用Ipv6(直接復制下方代碼進行粘貼回車)
echo -e "
# 禁用整個系統所有介面的IPv6
net.ipv6.conf.all.disable_ipv6 = 1
# 禁用某一個指定介面的IPv6(eth0,lo)
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
" >> /etc/sysctl.conf

重啟sysctl:
sudo sysctl -p
4、關閉防火墻
查看防火墻的狀態
systemctl status firewalld.service

安裝iptables-services模塊
yum -y install iptables-services
圖片過長也沒必要,就不截圖了
關閉防火墻
service iptables stop

再次查看防火墻的狀態
service iptables status

關閉防火墻,防止開機自啟
systemctl stop firewalld.service
systemctl disable firewalld.service

5、同步時間
安裝NTP模塊
yum -y install ntp
設定開機自啟
chkconfig ntpd on

查看ntp是否開機自啟
systemctl is-enabled ntpd

設定 NTP 服務半個小時同步一次(時間自定)
echo '0,30 * * * * root ntpdate -u ntp.aliyun.com' >> /etc/crontab
cat /etc/crontab

查看時間是否準確
date
6、關閉SELINUX
setenforce 0

把 SELINUX=enforcing 改成 SELINUX=disable
vim /etc/selinux/config

重啟服務器,虛擬機準備就結束了
reboot
準備Java環境
mkdir /usr/java
cd /usr/java/
下載 oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
wget https://archive.cloudera.com/cm6/6.3.1/redhat7/yum/RPMS/x86_64/oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
解壓 oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
rpm -ivh oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm

創建軟連接
ln -s /usr/java/jdk1.8.0_181-cloudera /usr/java/jdk1.8
洗掉 oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
rm -rf oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
產看軟連接

配置環境變數
echo '
export JAVA_HOME=/usr/java/jdk1.8
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=${JAVA_HOME}/bin:${PATH}:${CLASSPATH}
' >> /etc/profile
查看是否更改成功
tail -n 10 /etc/profile

重新加載檔案
source /etc/profile
驗證是否配置成功
java -version
which java

安裝MySQL(一個節點上進行安裝)
先檢驗服務器上有沒有殘留的Mysql
1.查看Mysql的安裝情況
rpm -qa|grep -i mysql

2.依次洗掉上述檔案
rpm -ev mysql-community-release-el7-5.noarch --nodeps
rpm -ev mysql-community-common-5.6.50-2.el7.x86_64 --nodeps
rpm -ev mysql-community-libs-5.6.50-2.el7.x86_64 --nodeps
rpm -ev mysql-community-client-5.6.50-2.el7.x86_64 --nodeps
rpm -ev mysql-community-server-5.6.50-2.el7.x86_64 --nodeps
3.再次確認Mysql安裝情況
rpm -qa|grep -i mysql
4.find命令查看Mysql相關檔案并全部洗掉
find / -name mysql
5.再次檢查有無Mysql殘留檔案
find / -name mysql
yum 設定阿里源 (阿里鏡像MySQL下載快)
# 1. 備份原先的鏡像檔案
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.backup
# 2. 下載阿里云的 CentOS-Base.repo 到 /etc/yum.repos.d/ 目錄下
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 3. 清理 yum 軟體源快取
yum clean all
# 4. 生成新的 yum 元資料快取
yum makecache
CDH官方安裝檔案:https://docs.cloudera.com/documentation/enterprise/6/6.3/topics/cm_ig_mysql.html#cmig_topic_5_5

在安裝的程序中可以自己選擇,如果不懂就一路 yes ,安裝程序中它本身就會自己進行相關的配置,然后啟用用戶密碼登陸進入MySQL,使用MySQL資料庫
update user set password=password("root") where user="root";

給root用戶賦權,添加遠程訪問權限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
FLUSH PRIVILEGES;

創建大資料集群所需要的資料庫

CREATE DATABASE <database> DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON <database>.* TO '<user>'@'%' IDENTIFIED BY '<password>';
-- 創建 Cloudera Manager Server 用戶和資料庫
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'scm'@'%' IDENTIFIED BY 'scm';
GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY 'scm';
-- 創建 Activity Monitor 用戶和資料庫
CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'amon'@'%' IDENTIFIED BY 'amon';
GRANT ALL ON amon.* TO 'amon'@'%' IDENTIFIED BY 'amon';
-- 創建 Reports Manager 用戶和資料庫
CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'rman'@'%' IDENTIFIED BY 'rman';
GRANT ALL ON rman.* TO 'rman'@'%' IDENTIFIED BY 'rman';
-- 創建 Hue 用戶和資料庫
CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'hue'@'%' IDENTIFIED BY 'hue';
GRANT ALL ON hue.* TO 'hue'@'%' IDENTIFIED BY 'hue';
-- 創建 Hive 元資料 用戶和資料庫
CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'hive'@'%' IDENTIFIED BY 'hive';
GRANT ALL ON hive.* TO 'hive'@'%' IDENTIFIED BY 'hive';
-- 創建 Sentry Server 用戶和資料庫
CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'sentry'@'%' IDENTIFIED BY 'sentry';
GRANT ALL ON sentry.* TO 'sentry'@'%' IDENTIFIED BY 'sentry';
-- 創建 Cloudera Navigator Audit Server 用戶和資料庫
CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'nav'@'%' IDENTIFIED BY 'nav';
GRANT ALL ON nav.* TO 'nav'@'%' IDENTIFIED BY 'nav';
-- 創建 Cloudera Navigator Metadata Server 用戶和資料庫
CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'navms'@'%' IDENTIFIED BY 'navms';
GRANT ALL ON navms.* TO 'navms'@'%' IDENTIFIED BY 'navms';
-- 創建 Oozie 用戶和資料庫
CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE USER 'oozie'@'%' IDENTIFIED BY 'oozie';
GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY 'oozie';
flush privileges;
停止MySQL重新啟動MySQL
sudo systemctl stop mysqld
service mysql start
配置本地Parcel倉庫(主節點上其實這一步可以省略,但是Httpd還是要裝的)
1、安裝Apache HTTP Server,并且啟動開機自啟服務
yum -y install httpd
chkconfig httpd on
service httpd start
查看是否開機自啟
systemctl is-enabled httpd.service
systemctl is-active httpd

查看httpd狀態
service httpd status

在電腦瀏覽器上訪問主節點的ip,訪問的目錄默認是/var/www/html/下的檔案也可以去改httpd.config 的檔案存放路徑,如果沒有修改該路徑,默認的路徑是/var/www/html/,修改默認檔案存放路徑修改這個檔案/etc/httpd/conf/httpd.conf 將這個檔案里的DocumentRoot,<Directory “/var/www/html”> 這些地方的路徑都改掉;我是沒又改的,接下來就是在/var/www/html/目錄下創建目錄/var/www/html/Parcel/CDH和/var/www/html/Parcel/CM通過http://+ip地址+/Parcel可以訪問到,如果需要通過主機名訪問需要在電腦的C:\Windows\System32\drivers\etc\hosts檔案中配置!

mkdir /var/www/html/Parcel
mkdir /var/www/html/Parcel/CDH
mkdir /var/www/html/Parcel/CM
在mkdir /var/www/html/Parcel/CDH目錄下通過wget+下載地址來下載,我用的是公司的資源CDH和CM,所以你們需要自己去找下載地址進行下載,下載完成后

通過Ip+Parcel進行訪問

能訪問到就ok了
安裝 cloudera-manager-daemons
(1)創建 /opt/cloudera-manager 目錄,用于存放 cdh的安裝檔案
mkdir /opt/cloudera-manager
將CM下的檔案復制一份到/opt/cloudera-manager


安裝 cloudera-manager-daemons
如果直接安裝不成功,則使用 --nodeps --force 命令安裝
--nodeps:安裝時不檢查依賴關系 --force:強制安裝
rpm -ivh cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
安裝完之后,會在 /opt 下生成目錄cloudera目錄

安裝 cloudera-manager-agent
cd /opt/cloudera-manager
rpm -ivh cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm --nodeps

配置agent的server節點
修改 /etc/cloudera-scm-agent/config.ini 檔案,將server_host=localhost 改成server_host=主機名(server節點的主機名我的就是dsy0,三臺都一樣)
vim /etc/cloudera-scm-agent/config.ini
head -n 20 /etc/cloudera-scm-agent/config.ini

主節點上安裝 cloudera-manager-server
rpm -ivh cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm
安裝完server之后,主節點的cdh安裝算完成了
安裝路徑都在
/opt/cloudera/cm
/opt/cloudera/agent
/etc/cloudera-scm-agent
/etc/cloudera-scm-server
下載的離線安裝包parcel系統已經創建好目錄了,我們直接移動到 /opt/parcel-repo 就可以了

為CM使用,安裝MySQL連接驅動
#沒有這個目錄自己創建一個當然也可以自己定義存盤位置
cd /home/resources/mysql/jdbc
# 下載連接驅動
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
# 提取jar檔案
tar zxvf mysql-connector-java-5.1.46.tar.gz
復制MySQL的驅動jar包到 /usr/share/java 目錄下,若不存在 /usr/share/java 目錄,則手動創建一個
cp mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar

設定Cloudera Manager資料庫
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm scm

期間遇到的問題

解決用root用戶進入Mysql使用MySQL資料庫
GRANT ALL ON scm.* TO 'scm'@'localhost' IDENTIFIED BY 'scm';
關于這個用戶權限是%它是不包含localhost的%是遠程訪問,localhost是本地訪問因為我的mysql是和server裝在一個節點上的屬于本地訪問所以它就會報沒有這個權限.
然后就是啟動CM
啟動主節點上的server
service cloudera-scm-server start
進入server log目錄,查看日志,日志生產則代表服務已經正常啟動成功
ll /var/log/cloudera-scm-server/

查看server狀態
sudo systemctl status cloudera-scm-server
查看 server 日志
tail -F /var/log/cloudera-scm-server/cloudera-scm-server.log
查看 agent 日志
tail -F /var/log/cloudera-scm-agent/cloudera-scm-agent.log
查看7182埠是否被占用
netstat -anp | grep 7180
所有節點啟動agent
sudo systemctl start cloudera-scm-agent
sudo systemctl status cloudera-scm-agent
安裝CDH服務
1、登錄cdh安裝界面
(1)瀏覽器訪問 http://dsy0:7180
,進入cdh登錄界面,默認賬戶密碼 admin admin



一直就默認

全選,必須要三臺服務都有,之前的步驟才正確,沒有的去檢查agent是否啟動,主機名映射,agent的組態檔是否指向server節點,

這一步在有網的情況下默認就行了,沒網的情況下就需要配置Parcel倉庫,進行下面幾步


我這是有網默認

等待安裝CDH

點擊這兩處進行檢查,檢查完畢后,解決報告中的問題,若無法解決,直接選擇第三項,“我理解風險,讓我繼續創建集群”,然后點擊繼續

選擇要安裝的服務,CDH安裝基本上就結束了
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/240037.html
標籤:其他
