1. 程式人生 > 實用技巧 >Centos7 安裝CDH6.3.2 叢集

Centos7 安裝CDH6.3.2 叢集

CDH軟體準備

cdh6下載地址https://archive.cloudera.com/cdh6/6.3.2/parcels/

cm6下載地址https://archive.cloudera.com/cm6/6.3.1/redhat7/yum/RPMS/x86_64/

一、作業系統

1、虛擬機器設定 設定VMnet8,NAT模式

虛擬機器網路設定

2、系統安裝

系統最小安裝,設定IP地址,設定主機名稱 ,如果未設定下面步驟也可處理

主機名 IP

cdh01 192.168.230.101

cdh02 192.168.230.102

cdh03 192.168.230.102

3、系統設定 (每一臺主機)

1)設定主機名

檢視當前名稱
hostname
設定主機名稱(重啟後失效)
hostname cdh01


設定主機名稱 (永久修改)
vi /etc/hostname
重新生效
reboot

2)設定虛擬機器固定IP

#修改虛擬機器IP
vi /etc/sysconfig/network-scripts/ifcfg-ens33

#重啟
service network restart

檢視IP
ip addr

3)關閉防火牆

關閉防火牆
systemctl stop firewalld.service
禁止開機啟動
systemctl disable firewalld.service
檢視防火牆狀態
firewall
-cmd --state 開啟防火牆命令 systemctl start firewalld.service

4)配置主機對映

vi /etc/hosts
檔案最後加入
192.168.230.101 cdh01
192.168.230.102 cdh02
192.168.230.103 cdh03

5)Cloudera 建議將 /proc/sys/vm/swappiness 設定為最大值 10。當前設定為 30

臨時修改:
sysctl vm.swappiness=10
cat /proc/sys/vm/swappiness
這裡的修改已經生效,但是如果我們重啟了系統,又會變成30.

永久修改:

在/etc/sysctl.conf 檔案裡新增如下引數:
vm.swappiness
=10 或者: echo 'vm.swappiness=10'>> /etc/sysctl.conf

6)啟用透明大頁面壓縮設定

echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
以禁用此設定,然後將同一命令新增到 
/etc/rc.local 
等初始化指令碼中,以便在系統重啟時予以設定。
vi /etc/rc.local

echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled

4、設定SSH免密碼登陸

參考https://www.cnblogs.com/xuchen0117/p/12443347.html

二、軟體安裝

1、JDK安裝 安裝位置 /usr/java/jdk版本號. (所有節點)

參考https://www.cnblogs.com/xuchen0117/p/12939391.html

2、NTP安裝(所有節點)

參考https://www.cnblogs.com/xuchen0117/p/13455470.html

3、HTTPD安裝 (主節點)

參考https://www.cnblogs.com/xuchen0117/p/13455585.html

安裝後將CM6檔案複製,並能在瀏覽器訪問

#進入httpd目錄
cd /var/www/html/ 

#建立目錄cm6,上傳檔案
mkdir cm6

最終效果與檔案

4、createrepo安裝(主節點)

參考https://www.cnblogs.com/xuchen0117/p/13455585.html

安裝後

#進入到cm6安裝包的httpd資源位置
cd /var/www/html/cm6
#建立yum源的描述meta,執行後多一個資料夾
createrepo .
[root@cdh03 cloudera-repos]# cd /var/www/html
[root@cdh03 html]# mkdir cm6 
[root@cdh03 html]# cd cm6
[root@cdh03 cm6]# createrepo .
Spawning worker 0 with 1 pkgs
Spawning worker 1 with 1 pkgs
Spawning worker 2 with 1 pkgs
Spawning worker 3 with 1 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@cdh03 cm6]# 

每臺伺服器上增加以下內容到檔案:

[root@cdh03 cm6]# cat /etc/yum.repos.d/cloudera-repo.repo
[cloudera-repo]
name=cloudera-repo
baseurl=http://192.168.43.103/cm6/
enabled=1
gpgcheck=0

檢視yum配置是否生效

yum clean all && yum makecache
yum clean all
yum repolis
[root@cdh03 cm6]# yum clean all
已載入外掛:fastestmirror
正在清理軟體源: base cloudera-repo extras updates
Cleaning up list of fastest mirrors
[root@cdh03 cm6]# yum repolist
已載入外掛:fastestmirror
Determining fastest mirrors
 * base: mirrors.nju.edu.cn
 * extras: mirror01.idc.hinet.net
 * updates: mirror01.idc.hinet.net
base                                                                                            | 3.6 kB  00:00:00     
cloudera-repo                                                                                   | 2.9 kB  00:00:00     
http://mirror01.idc.hinet.net/centos/7.8.2003/extras/x86_64/repodata/repomd.xml: [Errno 12] Timeout on http://mirror01.idc.hinet.net/centos/7.8.2003/extras/x86_64/repodata/repomd.xml: (28, 'Operation too slow. Less than 1000 bytes/sec transferred the last 30 seconds')
正在嘗試其它映象。
extras                                                                                          | 2.9 kB  00:00:00     
updates                                                                                         | 2.9 kB  00:00:00     
(1/5): cloudera-repo/primary_db                                                                 | 6.6 kB  00:00:00     
(2/5): base/7/x86_64/group_gz                                                                   | 153 kB  00:00:00     
(3/5): updates/7/x86_64/primary_db                                                              | 3.8 MB  00:00:01     
(4/5): base/7/x86_64/primary_db                                                                 | 6.1 MB  00:00:05     
(5/5): extras/7/x86_64/primary_db                                                               | 206 kB  00:01:15     
源標識                                                 源名稱                                                    狀態
base/7/x86_64                                          CentOS-7 - Base                                           10,070
cloudera-repo                                          cloudera-repo                                                  4
extras/7/x86_64                                        CentOS-7 - Extras                                            413
updates/7/x86_64                                       CentOS-7 - Updates                                         1,112
repolist: 11,599
[root@cdh03 cm6]#

5、MySql安裝(主節點)

MySql5.7 參考https://www.cnblogs.com/xuchen0117/p/13470690.html(本文使用MySql5.7.30)

MySql8 參考https://www.cnblogs.com/xuchen0117/p/13456037.html

注:CDH官方給的有一份推薦的MySQL的配置內容

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
transaction-isolation = READ-COMMITTED
# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
symbolic-links = 0
key_buffer_size = 32M
max_allowed_packet = 32M
thread_stack = 256K
thread_cache_size = 64
query_cache_limit = 8M
query_cache_size = 64M
query_cache_type = 1
max_connections = 550
#expire_logs_days = 10
#max_binlog_size = 100M
#log_bin should be on a disk with enough free space.
#Replace '/var/lib/mysql/mysql_binary_log' with an appropriate path for your
#system and chown the specified folder to the mysql user.
log_bin=/var/lib/mysql/mysql_binary_log
#In later versions of MySQL, if you enable the binary log and do not set
#a server_id, MySQL will not start. The server_id must be unique within
#the replicating group.
server_id=1
binlog_format = mixed
read_buffer_size = 2M
read_rnd_buffer_size = 16M
sort_buffer_size = 8M
join_buffer_size = 8M
# InnoDB settings
innodb_file_per_table = 1
innodb_flush_log_at_trx_commit  = 2
innodb_log_buffer_size = 64M
innodb_buffer_pool_size = 4G
innodb_thread_concurrency = 8
innodb_flush_method = O_DIRECT
innodb_log_file_size = 512M
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
sql_mode=STRICT_ALL_TABLES

建立CDH所需要的資料庫

根據所需要安裝的服務參照下表建立對應的資料庫以及資料庫使用者,資料庫必須使用utf8編碼,建立資料庫時要記錄好使用者名稱及對應密碼

服務名資料庫名使用者名稱
Cloudera Manager Server scm scm
Activity Monitor amon amon
Reports Manager rman rman
Hue hue hue
Hive Metastore Server metastore hive
Sentry Server sentry sentry
Cloudera Navigator Audit Server nav nav
Cloudera Navigator Metadata Server navms navms
Oozie oozie oozie

建立資料庫及對應使用者

# scm
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY 'scm';

# amon
CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON amon.* TO 'amon'@'%' IDENTIFIED BY 'amon';

# rman
CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON rman.* TO 'rman'@'%' IDENTIFIED BY 'rman';

# hue
CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; 
GRANT ALL ON hue.* TO 'hue'@'%' IDENTIFIED BY 'hue';

# hive
CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON metastore.* TO 'hive'@'%' IDENTIFIED BY 'hive';

# sentry
CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;   
GRANT ALL ON sentry.* TO 'sentry'@'%' IDENTIFIED BY 'sentry';

# nav
CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;      
GRANT ALL ON nav.* TO 'nav'@'%' IDENTIFIED BY 'nav';

# navms
CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON navms.* TO 'navms'@'%' IDENTIFIED BY 'navms';

# oozie
CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY 'oozie';

# flush
FLUSH PRIVILEGES;

注:MySql8.0命令注意

MySQL 8.0已經不支援下面這種命令寫法
grant all privileges on *.* to root@"%" identified by ".";

all privileges:表示將所有許可權授予給使用者。也可指定具體的許可權,如:SELECT、CREATE、DROP等。
on:表示這些許可權對哪些資料庫和表生效,格式:資料庫名.表名,這裡寫“*”表示所有資料庫,所有表。如果我要指定將許可權應用到test庫的user表中,可以這麼寫:test.user
to:將許可權授予哪個使用者。格式:”使用者名稱”@”登入IP或域名”。%表示沒有限制,在任何主機都可以登入。比如:”yangxin”@”192.168.0.%”,表示yangxin這個使用者只能在192.168.0IP段登入
identified by:指定使用者的登入密碼

正確的寫法是先建立使用者
CREATE USER 'root'@'%' IDENTIFIED BY 'Hadoop3!';
再給使用者授權
grant all privileges on *.* to 'root'@'%' ;
CREATE USER 'scm'@'%' IDENTIFIED BY 'scm';
grant all privileges on scm.* to 'scm'@'%' ;
CREATE USER 'amon'@'%' IDENTIFIED BY 'amon';
grant all privileges on amon.* to 'amon'@'%' ;
CREATE USER 'rman'@'%' IDENTIFIED BY 'rman';
grant all privileges on rman.* to 'rman'@'%' ;

CREATE USER 'hue'@'%' IDENTIFIED BY 'hue';
grant all privileges on hue.* to 'hue'@'%' ;
CREATE USER 'metastore'@'%' IDENTIFIED BY 'metastore';
grant all privileges on metastore.* to 'metastore'@'%' ;
CREATE USER 'sentry'@'%' IDENTIFIED BY 'sentry';
grant all privileges on sentry.* to 'sentry'@'%' ;

CREATE USER 'nav'@'%' IDENTIFIED BY 'nav';
grant all privileges on nav.* to 'nav'@'%' ;
CREATE USER 'navms'@'%' IDENTIFIED BY 'navms';
grant all privileges on navms.* to 'navms'@'%' ;
CREATE USER 'oozie'@'%' IDENTIFIED BY 'oozie';
grant all privileges on oozie.* to 'oozie'@'%' ;

注意:使用者賦權問題

#建立表
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

#建立使用者並賦權
 GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY 'scm';
報錯:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
檢視許可權規則
SHOW VARIABLES LIKE 'validate_password%';

#檢視許可權是否正確
SHOW GRANTS FOR 'myscm'@'%';
+------------------------------------------------+
| Grants for myscm@%                             |
+------------------------------------------------+
| GRANT USAGE ON *.* TO 'myscm'@'%'              |
| GRANT ALL PRIVILEGES ON `scm`.* TO 'myscm'@'%' |
+------------------------------------------------+

關於 mysql 密碼策略相關引數;
1)、validate_password_length  固定密碼的總長度;
2)、validate_password_dictionary_file 指定密碼驗證的檔案路徑;
3)、validate_password_mixed_case_count  整個密碼中至少要包含大/小寫字母的總個數;
4)、validate_password_number_count  整個密碼中至少要包含阿拉伯數字的個數;
5)、validate_password_policy 指定密碼的強度驗證等級,預設為 MEDIUM;
關於 validate_password_policy 的取值:
0/LOW:只驗證長度;
1/MEDIUM:驗證長度、數字、大小寫、特殊字元;
2/STRONG:驗證長度、數字、大小寫、特殊字元、字典檔案;
6)、validate_password_special_char_count 整個密碼中至少要包含特殊字元的個數;set global validate_password_policy=LOW;set global validate_password_length=1;
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON scm.* TO 'myscm'@'%' IDENTIFIED BY 'myscm';
CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON metastore.* TO 'metastore'@'%' IDENTIFIED BY 'metastore';

6、MySql驅動

將Mysql驅動包mysql-connector-java-8.0.16.jar拷貝到每臺伺服器下的目錄: /usr/share/java/ 並修改名稱

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

三、CDH安裝 (只在CM Server節點)

1、安裝Cloudera Manager Server

# 安裝 cm manager(只需在server節點安裝)
yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
[root@cdh03 software]# yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
已載入外掛:fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.nju.edu.cn
 * extras: mirror01.idc.hinet.net
 * updates: mirror01.idc.hinet.net
正在解決依賴關係
--> 正在檢查事務
---> 軟體包 cloudera-manager-agent.x86_64.0.6.3.1-1466458.el7 將被 安裝
cloudera-repo/filelists_db                                                                      | 102 kB  00:00:00     
--> 正在處理依賴關係 python-psycopg2,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
base/7/x86_64/filelists_db                                                                      | 7.1 MB  00:00:02     
--> 正在處理依賴關係 psmisc,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
--> 正在處理依賴關係 portmap,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
--> 正在處理依賴關係 openssl-devel,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
--> 正在處理依賴關係 mod_ssl,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
--> 正在處理依賴關係 cyrus-sasl-plain,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
--> 正在處理依賴關係 cyrus-sasl-gssapi,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
--> 正在處理依賴關係 bind-utils,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
updates/7/x86_64/filelists_db                                                                   | 2.1 MB  00:00:00     
--> 正在處理依賴關係 MySQL-python,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
--> 正在處理依賴關係 /lib/lsb/init-functions,它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
extras/7/x86_64/filelists_db                                                                    | 217 kB  00:01:34     
--> 正在處理依賴關係 libpq.so.5()(64bit),它被軟體包 cloudera-manager-agent-6.3.1-1466458.el7.x86_64 需要
---> 軟體包 cloudera-manager-daemons.x86_64.0.6.3.1-1466458.el7 將被 安裝
---> 軟體包 cloudera-manager-server.x86_64.0.6.3.1-1466458.el7 將被 安裝
--> 正在檢查事務
---> 軟體包 MySQL-python.x86_64.0.1.2.5-1.el7 將被 安裝
--> 正在處理依賴關係 libmysqlclient.so.18(libmysqlclient_18)(64bit),它被軟體包 MySQL-python-1.2.5-1.el7.x86_64 需要
--> 正在處理依賴關係 libmysqlclient.so.18()(64bit),它被軟體包 MySQL-python-1.2.5-1.el7.x86_64 需要
---> 軟體包 bind-utils.x86_64.32.9.11.4-16.P2.el7_8.6 將被 安裝
--> 正在處理依賴關係 bind-libs-lite(x86-64) = 32:9.11.4-16.P2.el7_8.6,它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
--> 正在處理依賴關係 bind-libs(x86-64) = 32:9.11.4-16.P2.el7_8.6,它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
--> 正在處理依賴關係 liblwres.so.160()(64bit),它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
--> 正在處理依賴關係 libisccfg.so.160()(64bit),它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
--> 正在處理依賴關係 libisc.so.169()(64bit),它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
--> 正在處理依賴關係 libirs.so.160()(64bit),它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
--> 正在處理依賴關係 libdns.so.1102()(64bit),它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
--> 正在處理依賴關係 libbind9.so.160()(64bit),它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
--> 正在處理依賴關係 libGeoIP.so.1()(64bit),它被軟體包 32:bind-utils-9.11.4-16.P2.el7_8.6.x86_64 需要
---> 軟體包 cyrus-sasl-gssapi.x86_64.0.2.1.26-23.el7 將被 安裝
---> 軟體包 cyrus-sasl-plain.x86_64.0.2.1.26-23.el7 將被 安裝
---> 軟體包 mod_ssl.x86_64.1.2.4.6-93.el7.centos 將被 安裝
---> 軟體包 openssl-devel.x86_64.1.1.0.2k-19.el7 將被 安裝
--> 正在處理依賴關係 zlib-devel(x86-64),它被軟體包 1:openssl-devel-1.0.2k-19.el7.x86_64 需要
--> 正在處理依賴關係 krb5-devel(x86-64),它被軟體包 1:openssl-devel-1.0.2k-19.el7.x86_64 需要
---> 軟體包 postgresql-libs.x86_64.0.9.2.24-4.el7_8 將被 安裝
---> 軟體包 psmisc.x86_64.0.22.20-16.el7 將被 安裝
---> 軟體包 python-psycopg2.x86_64.0.2.5.1-4.el7 將被 安裝
---> 軟體包 redhat-lsb-core.x86_64.0.4.1-27.el7.centos.1 將被 安裝
--> 正在處理依賴關係 redhat-lsb-submod-security(x86-64) = 4.1-27.el7.centos.1,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
--> 正在處理依賴關係 spax,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
--> 正在處理依賴關係 /usr/bin/time,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
--> 正在處理依賴關係 /usr/bin/lpr,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
--> 正在處理依賴關係 /usr/bin/lp,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
--> 正在處理依賴關係 /usr/bin/bc,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
--> 正在處理依賴關係 /usr/bin/batch,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
--> 正在處理依賴關係 /usr/bin/at,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
--> 正在處理依賴關係 /bin/ed,它被軟體包 redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要
---> 軟體包 rpcbind.x86_64.0.0.2.0-49.el7 將被 安裝
--> 正在處理依賴關係 libtirpc >= 0.2.4-0.7,它被軟體包 rpcbind-0.2.0-49.el7.x86_64 需要
--> 正在處理依賴關係 libtirpc.so.1()(64bit),它被軟體包 rpcbind-0.2.0-49.el7.x86_64 需要
--> 正在檢查事務
---> 軟體包 GeoIP.x86_64.0.1.5.0-14.el7 將被 安裝
--> 正在處理依賴關係 geoipupdate,它被軟體包 GeoIP-1.5.0-14.el7.x86_64 需要
---> 軟體包 at.x86_64.0.3.1.13-24.el7 將被 安裝
---> 軟體包 bc.x86_64.0.1.06.95-13.el7 將被 安裝
---> 軟體包 bind-libs.x86_64.32.9.11.4-16.P2.el7_8.6 將被 安裝
--> 正在處理依賴關係 bind-license = 32:9.11.4-16.P2.el7_8.6,它被軟體包 32:bind-libs-9.11.4-16.P2.el7_8.6.x86_64 需要
---> 軟體包 bind-libs-lite.x86_64.32.9.11.4-16.P2.el7_8.6 將被 安裝
---> 軟體包 cups-client.x86_64.1.1.6.3-43.el7 將被 安裝
---> 軟體包 ed.x86_64.0.1.9-4.el7 將被 安裝
---> 軟體包 krb5-devel.x86_64.0.1.15.1-46.el7 將被 安裝
--> 正在處理依賴關係 libkadm5(x86-64) = 1.15.1-46.el7,它被軟體包 krb5-devel-1.15.1-46.el7.x86_64 需要
--> 正在處理依賴關係 libverto-devel,它被軟體包 krb5-devel-1.15.1-46.el7.x86_64 需要
--> 正在處理依賴關係 libselinux-devel,它被軟體包 krb5-devel-1.15.1-46.el7.x86_64 需要
--> 正在處理依賴關係 libcom_err-devel,它被軟體包 krb5-devel-1.15.1-46.el7.x86_64 需要
--> 正在處理依賴關係 keyutils-libs-devel,它被軟體包 krb5-devel-1.15.1-46.el7.x86_64 需要
---> 軟體包 libtirpc.x86_64.0.0.2.4-0.16.el7 將被 安裝
---> 軟體包 mariadb-libs.x86_64.1.5.5.65-1.el7 將被 安裝
---> 軟體包 redhat-lsb-submod-security.x86_64.0.4.1-27.el7.centos.1 將被 安裝
---> 軟體包 spax.x86_64.0.1.5.2-13.el7 將被 安裝
---> 軟體包 time.x86_64.0.1.7-45.el7 將被 安裝
---> 軟體包 zlib-devel.x86_64.0.1.2.7-18.el7 將被 安裝
--> 正在檢查事務
---> 軟體包 bind-license.noarch.32.9.11.4-16.P2.el7_8.6 將被 安裝
---> 軟體包 geoipupdate.x86_64.0.2.5.0-1.el7 將被 安裝
---> 軟體包 keyutils-libs-devel.x86_64.0.1.5.8-3.el7 將被 安裝
---> 軟體包 libcom_err-devel.x86_64.0.1.42.9-17.el7 將被 安裝
---> 軟體包 libkadm5.x86_64.0.1.15.1-46.el7 將被 安裝
---> 軟體包 libselinux-devel.x86_64.0.2.5-15.el7 將被 安裝
--> 正在處理依賴關係 libsepol-devel(x86-64) >= 2.5-10,它被軟體包 libselinux-devel-2.5-15.el7.x86_64 需要
--> 正在處理依賴關係 pkgconfig(libsepol),它被軟體包 libselinux-devel-2.5-15.el7.x86_64 需要
--> 正在處理依賴關係 pkgconfig(libpcre),它被軟體包 libselinux-devel-2.5-15.el7.x86_64 需要
---> 軟體包 libverto-devel.x86_64.0.0.2.5-4.el7 將被 安裝
--> 正在檢查事務
---> 軟體包 libsepol-devel.x86_64.0.2.5-10.el7 將被 安裝
---> 軟體包 pcre-devel.x86_64.0.8.32-17.el7 將被 安裝
--> 解決依賴關係完成

依賴關係解決

=======================================================================================================================
 Package                              架構             版本                              源                       大小
=======================================================================================================================
正在安裝:
 cloudera-manager-agent               x86_64           6.3.1-1466458.el7                 cloudera-repo            10 M
 cloudera-manager-daemons             x86_64           6.3.1-1466458.el7                 cloudera-repo           1.1 G
 cloudera-manager-server              x86_64           6.3.1-1466458.el7                 cloudera-repo            11 k
為依賴而安裝:
 GeoIP                                x86_64           1.5.0-14.el7                      base                    1.5 M
 MySQL-python                         x86_64           1.2.5-1.el7                       base                     90 k
 at                                   x86_64           3.1.13-24.el7                     base                     51 k
 bc                                   x86_64           1.06.95-13.el7                    base                    115 k
 bind-libs                            x86_64           32:9.11.4-16.P2.el7_8.6           updates                 156 k
 bind-libs-lite                       x86_64           32:9.11.4-16.P2.el7_8.6           updates                 1.1 M
 bind-license                         noarch           32:9.11.4-16.P2.el7_8.6           updates                  90 k
 bind-utils                           x86_64           32:9.11.4-16.P2.el7_8.6           updates                 259 k
 cups-client                          x86_64           1:1.6.3-43.el7                    base                    152 k
 cyrus-sasl-gssapi                    x86_64           2.1.26-23.el7                     base                     41 k
 cyrus-sasl-plain                     x86_64           2.1.26-23.el7                     base                     39 k
 ed                                   x86_64           1.9-4.el7                         base                     72 k
 geoipupdate                          x86_64           2.5.0-1.el7                       base                     35 k
 keyutils-libs-devel                  x86_64           1.5.8-3.el7                       base                     37 k
 krb5-devel                           x86_64           1.15.1-46.el7                     base                    272 k
 libcom_err-devel                     x86_64           1.42.9-17.el7                     base                     32 k
 libkadm5                             x86_64           1.15.1-46.el7                     base                    179 k
 libselinux-devel                     x86_64           2.5-15.el7                        base                    187 k
 libsepol-devel                       x86_64           2.5-10.el7                        base                     77 k
 libtirpc                             x86_64           0.2.4-0.16.el7                    base                     89 k
 libverto-devel                       x86_64           0.2.5-4.el7                       base                     12 k
 mariadb-libs                         x86_64           1:5.5.65-1.el7                    base                    759 k
 mod_ssl                              x86_64           1:2.4.6-93.el7.centos             base                    113 k
 openssl-devel                        x86_64           1:1.0.2k-19.el7                   base                    1.5 M
 pcre-devel                           x86_64           8.32-17.el7                       base                    480 k
 postgresql-libs                      x86_64           9.2.24-4.el7_8                    updates                 234 k
 psmisc                               x86_64           22.20-16.el7                      base                    141 k
 python-psycopg2                      x86_64           2.5.1-4.el7                       base                    132 k
 redhat-lsb-core                      x86_64           4.1-27.el7.centos.1               base                     38 k
 redhat-lsb-submod-security           x86_64           4.1-27.el7.centos.1               base                     15 k
 rpcbind                              x86_64           0.2.0-49.el7                      base                     60 k
 spax                                 x86_64           1.5.2-13.el7                      base                    260 k
 time                                 x86_64           1.7-45.el7                        base                     30 k
 zlib-devel                           x86_64           1.2.7-18.el7                      base                     50 k

事務概要
=======================================================================================================================
安裝  3 軟體包 (+34 依賴軟體包)

總下載量:1.1 G
安裝大小:1.4 G

完成後/opt/cloudera/ 目錄會有檔案生成

建立CM的資料庫(執行初始化指令碼)

sh scm_prepare_database.sh mysql scm scm scm 

2、配置本地Parcel儲存庫

Cloudera Manager Server安裝完成後,進入到本地Parcel儲存庫目錄:
cd /opt/cloudera/parcel-repo
將CDH檔案上傳到此目錄

#最終/opt/cloudera/parcel-repo目錄內容如下:
  [root@cdh03 parcel-repo]# ll
  總用量 2033432
  -rw-r--r-- 1 root root 2082186246 8月 8 01:53 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel
  -rw-r--r-- 1 root root 40 8月 8 01:52 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha
  -rw-r--r-- 1 root root 64 8月 8 01:52 CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel.sha256
  -rw-r--r-- 1 root root 33887 8月 8 01:52 manifest.json

3、啟動ClouderaManagerServer,並登入到ClouderaManager管理控制檯

#可以檢視執行情況
journalctl -xe

1) 啟動ClouderaManagerServer ,啟動時,會建立SCM表

systemctl start cloudera-scm-server

2)等待ClouderaManagerServer啟動幾分鐘。要觀察啟動過程,請在ClouderaManagerServer主機上執行以下命令

sudo tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log

當看到這個日誌條目時,Cloudera Manager管理控制檯準備就緒:

2020-08-11 12:28:49,440 INFO WebServerImpl:com.cloudera.server.cmf.WebServerImpl: Started Jetty server.

3) 在web瀏覽器中

4)登入到Cloudera Manager管理控制檯。預設憑據是:
Username: admin
Password: admin

歡迎頁面

首先是Cloudera Manager的歡迎頁面,點選頁面右下角的【繼續】按鈕進行下一步:

接受條款

勾選接受條款,點選【繼續】進行下一步:

第二個歡迎介面

選擇版本以後會出現第二個歡迎介面,不過這個是安裝叢集的歡迎頁:

選擇主機

這一步是要搜尋並選擇用於安裝CDH叢集的主機,在主機名稱後面的輸入框中輸入各個節點的hostname,中間使用英文逗號分隔開,然後點選搜尋,在結果列表中勾選要安裝CDH的節點即可:

指定儲存庫

Cloudera Manager Agent

這裡選擇自定義,填寫上面使用httpd搭建好的Cloudera Manager YUM 庫URL

CDH and other software

如果之前的【配置本地Parcel儲存庫】步驟操作無誤的話,這裡會自動選擇【使用Parcel】,並加載出CDH版本,確認無誤後點擊【繼續】:

JDK安裝選項

這一步驟就不再勾選安裝JDK了,因為在環境準備部分已經安裝過了。取消勾選,然後繼續:

SSH登入配置

用於配置叢集主機之間的SSH登入,填寫root使用者的密碼,根據叢集配置填寫合適的【同時安裝數量】值即可:

安裝Agent

到這一步會自動進行節點Agent的安裝,稍等一會兒,即可安裝完成:

安裝Parcels

這一步同樣是自動安裝,分配步驟的速度主要取決於網路環境,耐心等待即可:

主機檢查

等待檢查完成即可:

檢視明細

注意問題

1、Cloudera 建議將 /proc/sys/vm/swappiness 設定為最大值 10。當前設定為 30。使用 sysctl 命令在執行時更改該設定並編輯 /etc/sysctl.conf,以在重啟後儲存該設定。您可以繼續進行安裝,但 Cloudera Manager 可能會報告您的主機由於交換而執行狀況不良。以下主機將受到影響:

解決方案

2、已啟用透明大頁面壓縮,可能會導致重大效能問題。請執行“echo never > /sys/kernel/mm/transparent_hugepage/defrag”和“echo never > /sys/kernel/mm/transparent_hugepage/enabled”以禁用此設定,然後將同一命令新增到 /etc/rc.local 等初始化指令碼中,以便在系統重啟時予以設定。以下主機將受到影響:

解決方案

3、時間不同步

解決方案

執行後,再次檢查

安裝CDH叢集

選擇服務型別

角色分配

CDH會自動給出一個角色分配,如果覺得不合理,我們可以手動調整一下,注意角色分配均衡:

資料庫設定

安裝HIVE,只要配置HIVE資料庫配置

稽核更改

開始安裝

安裝完成

設定外部可以訪問虛擬機器