天天看點

CDH | CDH6.3.1叢集離線部署

一.準備工作

  1. 離線部署:

    a. MySQL離線部署

    b. CM離線部署

    c. Parcel⽂檔案離線源部署

  2. 規劃:
節點 MySQL元件 Parcel檔案離線源 CM服務程序 大資料元件
cdh001

Activity

Monitor

NN RM DN NM
cdh002

Alert Publisher

Event Server

DN NM
cdh003 MySQL Parcel

Host Monitor

Service Monitor

3.下載下傳源:

CDH | CDH6.3.1叢集離線部署

二.叢集節點初始化

  1. 初始化虛拟機 設定ip 參考
  • cdh01 192.168.10.101
  • cdh02 192.168.10.102
  • cdh03 192.168.10.103
  1. 關閉所有節點的防⽕火牆及清空規則

    systemctl stop firewalld

    systemctl disable firewalld

    iptables -F

  2. 關閉所有節點的selinux

    vi /etc/selinux/config

    将SELINUX=enforcing改為SELINUX=disabled

    設定後需要重新開機才能⽣生效

  3. 設定所有節點的時區⼀一緻及時鐘同步 [安裝ntp服務]

    a. 時區設定

    [root@localhost ~]# date 2021年 10月 22日 星期五 11:33:29 CST [root@localhost ~]# timedatectl Local time: 五 2021-10-22 11:33:53 CST Universal time: 五 2021-10-22 03:33:53 UTC RTC time: 五 2021-10-22 03:33:54 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: n/a #檢視指令幫助,學習⾄至關重要 [root@localhost ~]# timedatectl --help timedatectl [OPTIONS...] COMMAND ... Query or change system time and date settings. -h --help Show this help message --version Show package version --no-pager Do not pipe output into a pager --no-ask-password Do not prompt for password -H --host=[USER@]HOST Operate on remote host -M --machine=CONTAINER Operate on local container --adjust-system-clock Adjust system clock when changing local RTC mode Commands: status Show current time settings set-time TIME Set system time set-timezone ZONE Set system time zone list-timezones Show known time zones set-local-rtc BOOL Control whether RTC is in local time set-ntp BOOL Control whether NTP is enabled #檢視哪些時區 [root@localhost ~]# timedatectl list-timezones Africa/Abidjan Africa/Accra Africa/Addis_Ababa Africa/Algiers Africa/Asmara Africa/Bamako Africa/Bangui Africa/Banjul Africa/Bissau Africa/Blantyre Africa/Brazzaville #所有節點設定亞洲上海海時區 [root@localhost ~]# timedatectl set-timezone Asia/Shanghai [root@localhost ~]# timedatectl set-timezone Asia/Shanghai [root@localhost ~]# timedatectl set-timezone Asia/Shanghai

    b. 時間同步

    #所有節點安裝ntp [root@localhost ~]# yum install -y ntp [root@localhost ~]# vi /etc/ntp.conf #time server 0.asia.pool.ntp.org server 1.asia.pool.ntp.org server 2.asia.pool.ntp.org server 3.asia.pool.ntp.org #當外部時間不可用時,可使用本地硬體時間 server 127.127.1.0 iburst local clock #允許哪些網段的機器來同步時間 restrict 172.21.230.0 mask 255.255.255.0 nomodify notrap #開啟ntpd及檢視狀态 [root@localhost ~]# systemctl start ntpd [root@localhost ~]# systemctl status ntpd ● ntpd.service - Network Time Service Loaded: loaded (/usr/lib/systemd/system/ntpd.service; disabled; vendor preset: disabled) Active: active (running) since 五 2021-10-22 15:07:19 CST; 9s ago Process: 3056 ExecStart=/usr/sbin/ntpd -u ntp:ntp $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 3057 (ntpd) CGroup: /system.slice/ntpd.service └─3057 /usr/sbin/ntpd -u ntp:ntp -g 10月 22 15:07:19 localhost.localdomain ntpd[3057]: Listen and drop on 1 v6wildcard :: UDP 123 10月 22 15:07:19 localhost.localdomain ntpd[3057]: Listen normally on 2 lo 127.0.0.1 UDP 123 10月 22 15:07:19 localhost.localdomain ntpd[3057]: Listen normally on 3 ens33 192.168.10.100 UDP 123 10月 22 15:07:19 localhost.localdomain ntpd[3057]: Listen normally on 4 ens33 fe80::9d10:ea4d:53ef:2156 UDP 123 10月 22 15:07:19 localhost.localdomain ntpd[3057]: Listen normally on 5 lo ::1 UDP 123 10月 22 15:07:19 localhost.localdomain ntpd[3057]: Listening on routing socket on fd #22 for interface updates 10月 22 15:07:24 localhost.localdomain ntpd[3057]: 0.0.0.0 c016 06 restart 10月 22 15:07:24 localhost.localdomain ntpd[3057]: 0.0.0.0 c012 02 freq_set kernel 0.000 PPM 10月 22 15:07:24 localhost.localdomain ntpd[3057]: 0.0.0.0 c011 01 freq_not_set 10月 22 15:07:24 localhost.localdomain ntpd[3057]: 0.0.0.0 c514 04 freq_mode #驗證 [root@localhost ~] ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== 62.201.225.9 62.201.214.162 2 u 11 64 3 377.993 14.886 1.241 139.199.214.202 100.122.36.196 2 u 22 64 1 45.016 2.133 0.000 ntp.nic.kz .SHM. 1 u 21 64 3 331.871 8.428 1.731 time4.isu.net.s 216.218.192.202 2 u 21 64 3 428.601 49.938 0.811 *LOCAL(0) .LOCL. 5 l 24 64 3 0.000 0.000 0.000 #其他從節點停⽌止禁⽤用ntpd服務 [root@cdh002 ~]# systemctl stop ntpd [root@cdh002 ~]# systemctl disable ntpd Removed symlink /etc/systemd/system/multi-user.target.wants/ntpd.service. [root@cdh002 ~]# /usr/sbin/ntpdate cdh001 11 May 10:29:22 ntpdate[9370]: adjust time server 172.19.7.96 offset 0.000867 sec #每天淩晨同步ruozedata001節點時間 [root@cdh003 ~]# crontab -e 00 00 * * * /usr/sbin/ntpdate cdh001 [root@cdh003 ~]# systemctl stop ntpd [root@cdh003 ~]# systemctl disable ntpd Removed symlink /etc/systemd/system/multi-user.target.wants/ntpd.service. [root@cdh003 ~]# /usr/sbin/ntpdate ruozedata001 11 May 10:29:22 ntpdate[9370]: adjust time server 172.19.7.96 offset 0.000867 sec #每天淩晨同步cdh001 節點時間 [root@cdh003 ~]# crontab -e 00 00 * * * /usr/sbin/ntpdate cdh001

  4. 每個節點部署JDK(記住部署在

    /usr/java

    下 不然cdh會報錯找不到java)

    mkdir /usr/java tar -xzvf jdk-8u181-linux-x64.gz -C /usr/java/ #切記必須修正所屬⽤使用者及⽤使用者組 chown -R root:root /usr/java/jdk1.8.0_181 echo "export JAVA_HOME=/usr/java/jdk1.8.0_181" >> /etc/profile echo "export PATH=/usr/java/jdk1.8.0_181/bin:${PATH}" >> /etc/profile source /etc/profile which java

  5. MySQL部署

    MySQL5.7部署

    登入mysql

  6. 建立CDH的中繼資料庫和⽤使用者、amon服務的資料庫及⽤使用者

    create database cmf DEFAULT CHARACTER SET utf8; create database amon DEFAULT CHARACTER SET utf8; grant all on cmf.* TO 'cmf'@'%' IDENTIFIED BY '1234'; grant all on amon.* TO 'amon'@'%' IDENTIFIED BY '1234'; flush privileges;

  7. 部署MySQL節點部署mysql jdbc jar

    mkdir -p /usr/share/java/

    重命名不不能帶版本号

    cp mysql-connector-java-5.1.47.jar /usr/share/java/mysql-connector-java.jar

三.CDH部署

  1. 離線部署cm server及agent

    1.1.所有節點建立⽬目錄及解壓 mkdir /opt/cloudera-manager tar -xzvf cm6.3.1-redhat7.tar.gz -C /opt/cloudera-manager/ 1.2.選擇cdh01為cm server,不下載下傳依賴包直接部署 cd /opt/cloudera-manager/cm6.3.1/RPMS/x86_64 rpm -ivh cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm --nodeps --force rpm -ivh cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm --nodeps --force 1.3.所有節點(包含cdh01)的cm agent,不下載下傳依賴包直接部署 cd /opt/cloudera-manager/cm6.3.1/RPMS/x86_64 rpm -ivh cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm --nodeps --force rpm -ivh cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm --nodeps --force 1.4.所有節點修改agent的配置,指向server的節點 cdh01 sed -i "s/server_host=localhost/server_host=ruozedata001/g" /etc/cloudera-scm-agen t/config.ini 1.5.主節點修改server的配置: vi /etc/cloudera-scm-server/db.properties com.cloudera.cmf.db.type=mysql #資料庫類型 com.cloudera.cmf.db.host=cdh01 #主機 com.cloudera.cmf.db.name=cmf #資料庫名稱 com.cloudera.cmf.db.user=cmf #資料庫使用者 不建議root但是可以 com.cloudera.cmf.db.password=1234 #資料庫密碼 com.cloudera.cmf.db.setupType=EXTERNAL

  2. cdh01節點部署離線parcel源

    2.1.安裝httpd服務 yum install -y httpd 2.2.部署離線parcel源 $ mkdir -p /var/www/html/cdh6_parcel [root@cdh01 CDH6.3.1]# cp CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel /var/ www/html/cdh6_parcel/ [root@cdh01 CDH6.3.1]# mv CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha1 / var/www/html/cdh6_parcel/CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha [root@cdh01 CDH6.3.1]# mv manifest.json /var/www/html/cdh6_parcel/ $ ll total 3081664 -rw-r--r-- 1 root root 2083878000 Oct 23 13:44 CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7 .parcel -rw-r--r-- 1 root root 40 Oct 23 13:44 CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7 .parcel.sha1 -rw-r--r-- 1 root root 1411444147 Oct 23 13:43 cm6.3.1-redhat7.tar.gz -rw-r--r-- 1 root root 173271626 Oct 23 13:43 jdk-8u45-linux-x64.gz -rw-r--r-- 1 root root 33887 Oct 23 13:43 manifest.json -rw-r--r-- 1 root root 548193637 Oct 23 13:42 mysql-5.7.11-linux-glibc2.5-x86_64. tar.gz -rw-r--r-- 1 root root 1007502 Sep 1 12:31 mysql-connector-java-5.1.47.jar $ mv CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel /var/www/html/cdh6_parcel/ $ mv CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha1 /var/www/html/cdh6_parcel/CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha $ mv manifest.json /var/www/html/cdh6_parcel/ sha1名稱⽂檔案時,重命名去掉1,不不然在部署過程CM認為如上⽂檔案下載下傳未完整,會持續下載下傳 2.3.啟動httpd,window檢視 systemctl start httpd #檢驗 window/mac: http://ruozedata001/cdh6_parcel/ 檢視是否可以通路

  3. cdh01 節點啟動Server

    3.1.啟動server systemctl start cloudera-scm-server 檢視⽇日志: cd /var/log/cloudera-scm-server/ $ ll total 20 -rw-r----- 1 cloudera-scm cloudera-scm 18265 Oct 23 15:37 cloudera-scm-server.log -rw-r----- 1 cloudera-scm cloudera-scm 0 Oct 23 15:37 cmf-server-nio.log -rw-r----- 1 cloudera-scm cloudera-scm 0 Oct 23 15:37 cmf-server-perf.log $ tail -F cloudera-scm-server.log 有錯誤就根據錯誤解決,沒有錯誤,等待1min,出現7180端⼝口,表明是成功的。 3.2.等待1min,打開 http://cdh01:7180 賬号密碼:admin/admin 3.4.假如打不不開,去看server的log,根據錯誤仔細排查錯誤

  4. 所有節點啟動Agent

    ​systemctl start cloudera-scm-agent​

  5. Web界⾯面操作

    ​http://ruozedata001:7180/​

    賬号密碼:admin/admin

  6. 歡迎使⽤用Cloudera Manager--最終⽤使用者許可條款與條件。勾選
  7. 歡迎使⽤用Cloudera Manager--您想要部署哪個版本?選擇Cloudera Express免費版本
  8. 歡迎:在CM⾥裡里添加⼀一個叢集
  9. 修改叢集名稱:(随意起名)
  10. 叢集搭建完成