CDH6 離線安裝

Corwien發表於2022-02-28

一、環境準備

1、CM簡介

Cloudera Manager是一個擁有叢集自動化安裝、中心化管理、叢集監控、報警功能的一個工具,使得安裝叢集從幾天的時間縮短在幾個小時內,運維人員從數十人降低到幾人以內,極大的提高叢集管理的效率。

本篇就介紹如何安裝CDH,選擇的版本為6.3.1

2、環境準備

準備三臺測試機,分別為centos01,centos02,centos04。我這裡的測試機器的配置為16g記憶體,4CPU。

序號IPhostname
1192.168.222.10centos01
2192.168.222.11centos02
3192.168.222.13centos04

說明:centos03(192.168.222.12)節點被徵用做其他服務部署。

軟體版本
作業系統CentOS 7.6
ClouderaManager6.3.1
CDH6.3.2
JDK1.8
MySQL(MariaDB)5.7

虛擬機器搭建執行環境,請參考前幾篇文章:
大資料之 Hadoop-2-執行環境搭建之虛擬機器安裝
大資料之 Hadoop-3-執行環境搭建之克隆虛擬機器

2.1 關閉防火牆(所有節點)

systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld

2.2 關閉SeLinux(所有節點)

執行getenforce指令檢視selinux狀態,如果輸出為:enforcing,則需要處理一下,否則可以跳過這一步。

[root@centos01 ~]# getenforce
Enforcing
[root@centos01 ~]# 

修改 /etc/selinux/config 檔案(在某些系統中,可能是 /etc/sysconfig/selinux 檔案)

vi /etc/selinux/config

SELINUX=enforcing修改為

SELINUX=disabled

更新配置之後要重啟伺服器生效,或者執行:setenforce 0,使其立即生效。

setenforce 0

注意:也可以使用 sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config

再次檢視:

[root@centos01 ~]# getenforce
Permissive

3、配置yum源

配置yum源
(1)、備份,將 CentOS-Base.repo 為CentOS-Base.repo.backup

cp /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.backup

(2)、下載新的 http://mirrors.aliyun.com/rep...,並命名為CentOS-Base.repo

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

或者

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

(3)、清除快取

yum clean all # 清除系統所有的yum快取
yum makecache # 生成yum快取

4、NTP服務安裝和設定

Hadoop對叢集中各個機器的時間同步要求比較高,要求各個機器的系統時間不能相差太多,不然會造成很多問題。可以配置叢集中各個機器和網際網路的時間伺服器進行時間同步,但是在實際生產環境中,叢集中大部分伺服器是不能連線外網的,這時候可以在內網搭建一個自己的時間伺服器(NTP伺服器),叢集的各個機器與這個時間伺服器進行時間同步。我們選擇其中一個節點centos01機器作為NTP伺服器,其他機器和它自動同步。

4.1 安裝NTP(所有節點)

yum -y install ntp

4.2 Manager節點(centos01):

設定指向NTP伺服器,如果區域網內有時間伺服器,可以指向時間伺服器(manager節點-centos01)

vi /etc/ntp.conf

註釋掉之前的server,然後新增以下NTP伺服器

server http://ntp.aliyun.com

file

4.2 其他節點:

vi /etc/ntp.conf

叢集的其他節點指向第一個(centos02、centos04)

server centos01

重新啟動 ntp 服務和設定開機自啟(所有節點):

service ntpd restart
systemctl enable ntpd.service

檢視和測試:

ntpdc -c loopinfo #檢視與時間同步伺服器的時間偏差
ntpq -p #檢視當前同步的時間伺服器
ntpstat #檢視狀態定時同步crontab
crontab -e #可以不用設定
10 * * * * /usr/sbin/ntpdate centos1

二、配置和安裝CDH

CDH官方的網站已經無法直接下載安裝包了(需要賬號密碼),需要找一些之前下載過的人索取。

連結:https://pan.baidu.com/s/1dpyhF6TRXaqryab6ZVVXfw 
提取碼:1cuo 

官網下載包(比較慢):

http://ro-bucharest-repo.bigstepcloud.com/cloudera-repos/cm6/redhat/7/x86_64/cm/6.2.0/RPMS/x86_64/

https://archive.cloudera.com/cm6/6.3.1/

1.配置CM源

注意:作業系統可以先配置本地yum。CDH的安裝包都是rpm包。如果使用rpm安裝方式安裝起來是比較複雜的,會有很多依賴問題需要解決,就需要使用yum幫助我們解決依賴問題。(也可以是線上的阿里yum源,之前在按照好作業系統之後已經設定了aliyun的yum,所有這裡省略centos yum源)

配置CM源:
在centos01節點上安裝並啟動 httpd

#安裝
yum install httpd
#啟動
service httpd start
#開機自啟
systemctl enable httpd
或者chkconfig httpd on

1.2 將埠號修改為:6789 (可選項操作,預設是80,這裡使用預設的埠)

$ vi /etc/httpd/conf/httpd.conf

增加/修改埠號如下:

Listen 6789

file

1.3 進入到這個目錄下,新建目錄:

cd /var/www/html/
mkdir cm6
mkdir cdh6

1.4 將cdh的安裝包和cm的包拷貝到建立的目錄

1.4.1 拷貝cm安裝包和jdk到cm6

#拷貝cm安裝包和jdk到cm6
cp cloudera-manager-* /var/www/html/cm6/
cp enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm /var/www/html/cm6
cp oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm /var/www/html/cm6

cm6目錄拷貝的檔案:

[root@centos01 cm6]# ls -l
總用量 1380408
-rw-r--r--. 1 root root   10483568 2月  27 14:11 cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root 1203832464 2月  27 14:12 cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root      10996 2月  27 14:12 cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root   14209868 2月  27 14:12 enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm
-rw-r--r--. 1 root root  184988341 2月  27 14:12 oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
[root@centos01 cm6]#

file

1.4.2 拷貝cdh安裝包和後設資料檔案

# 拷貝cdh安裝包和後設資料檔案
cp CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel /var/www/html/cdh6/
cp manifest.json /var/www/html/cdh6/

拷貝到cdh6目錄的檔案:

[root@centos01 cdh6]# ls -l
總用量 2033424
-rw-r--r--. 1 root root 2082186246 2月  27 14:08 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel
-rw-r--r--. 1 root root      33887 2月  27 14:08 manifest.json

1.5 安裝createrepo命令,然後進入到cm6目錄建立yum源

[root@centos01 cdh6]# yum install -y createrepo  #下載createrepo
[root@centos01 cdh6]# cd /var/www/html/cm6  #命令進入到cm6安裝包的httpd資源位置
[root@centos01 cdh6]# createrepo .  #建立yum源的描述meta

file

1.6 配置yum源(每個節點

cat >> /etc/yum.repos.d/cm.repo << EOF

[CM]
name=cm6
baseurl=http://centos01:6789/cm6/
gpgcheck=0
EOF

file

然後再其他節點:centos02,centos04 節點執行上述命令;

檢視yum配置源是否生效

yum clean all
yum repolist

file

可以看到cm源已經配置成功了。

2.安裝

2.1 安裝依賴(所有節點)

yum install -y bind-utils libxslt cyrus-sasl-plain cyrus-sasl-gssapi portmap fuse-libs /lib/lsb/init-functions httpd mod_ssl openssl-devel python-psycopg2 Mysql-python fuse

file

2.2 安裝cloudera-manager和agent(centos01 節點)

#安裝JDK
yum install -y oracle-j2sdk1.8.x86_64
#安裝cloudera-manager
yum install -y cloudera-manager-agent cloudera-manager-daemons cloudera-manager-server cloudera-manager-server-db-2 postgresq-server

在安裝JDK時出現這樣的錯誤:
file

然後去官網重新下載了一個包:
http://ro-bucharest-repo.bigs...

file

將新下載的 oracle-j2sdk1.8.x86_64 檔案放到cm6 目錄下,然後重新建立yum源:

[root@centos01 cdh6]# cd /var/www/html/cm6  #命令進入到cm6安裝包的httpd資源位置
[root@centos01 cdh6]# createrepo .  #建立yum源的描述meta

file

接著繼續安裝cloudera-manager:

#安裝cloudera-manager
yum install -y cloudera-manager-agent cloudera-manager-daemons cloudera-manager-server cloudera-manager-server-db-2 postgresq-server

又報這樣的錯誤:
file

2.3 安裝Mariadb(cdh01)

#安裝
yum install -y mariadb-server
#啟動和開機自啟
systemctl start mariadb && systemctl enable mariadb
#配置Mariadb資料庫
mysql_secure_installation #可以在遇[Y/n]輸入y設定密碼 [賬號/密碼:root/123456]

2.4 修改配置檔案(所有節點)

修改Cloudera Agent配置檔案/etc/cloudera-scm-agent/config.ini,配置server_host為主節點cdh01

#通過vi命令修改
vi /etc/cloudera-scm-agent/config.ini
server_host=centos01
# ------------- 第二種方法
#也可以通過sed命令修改(推薦)
sed -i "s/server_host=localhost/server_host=centos01/g" /etc/cloudera-scm-agent/config.ini

配置JAVA_HOME(所有節點)

vi /etc/profile
#add for JAVA_HOME
export JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera/
export PATH=PATH:PATH:PATH:JAVA_HOME/bin

3、啟動CDH

3.1.啟動Cloudera Manager(centos01)

#啟動
service cloudera-scm-server start //systemctl start cloudera-scm-server
#設定開機自啟???
chkconfig cloudera-scm-server on //systemctl enable cloudera-scm-server

3.2.啟動Cloudera Agent(所有節點

#啟動
service cloudera-scm-agent start //systemctl start cloudera-scm-agent
#開機自啟
//systemctl enable cloudera-scm-agent

可以訪問http://192.168.222.10:7180 進行元件服務的安裝操作了
使用者名稱/密碼: admin/admin


相關文章:
知乎|CDH6.3.2離線安裝(附百度網盤CDH安裝包)
尚矽谷|CDH6.3.2之安裝與使用(一))
離線安裝部署CDH6.3.2叢集
CDH6.1.0離線安裝

相關文章