1.1 CentOS7安裝cdh6.0.1詳細文檔

首先,我強調(diào)一下,其實最主要的步奏都是參照 官網(wǎng)的 安裝步奏進行 配置的。官網(wǎng)是 最好的解決方案,網(wǎng)上的很多博文只是用來參考,這點大家切記切記。
https://www.cloudera.com/documentation/enterprise/6/6.0/topics/installation_reqts.html

0.安裝環(huán)境

0.1 安裝環(huán)境

1.安裝前準備

1.1 操作系統(tǒng)設(shè)置
1.1.1 配置固定IP 與 解析關(guān)系
1.1.2 關(guān)閉 SELINUX
1.1.3 關(guān)閉防火墻
1.1.4 配置時間同步 NTP
1.1.5 配置集群 ssh免密登錄

2.安裝

2.1 步驟1 Linux 下安裝JDK

2.2 步驟2 配置Repo

2.3 步驟3 安裝服務(wù)

2.4 步驟4 修改各節(jié)點配置 并啟動 cloudera-scm-agent

2.5 步驟5 安裝并配置MySQL

2.6 步驟6 配置CM 及其他服務(wù)的數(shù)據(jù)庫 基于 MySQL,增加mysql-connector 包

2.7 步驟7 初始化數(shù)據(jù)庫,啟動服務(wù)

2.8 步驟8 Parcel 安裝

3.常見問題詳解

3.1 安裝中斷,如何繼續(xù)

3.2 Inspector 檢測 出現(xiàn)各種錯誤警告

3.3 運行日志在哪里

4.幾種加快安裝的方式

4.1 啟動httpd 服務(wù),使用離線 parcel 包安裝

4.2 創(chuàng)建本地yum源,使用離線 rpm 包安裝

======================================================================

0.安裝環(huán)境

0.1 安裝環(huán)境
本文的安裝環(huán)境在 CentOS7 下 搭建完成

Linux 版本 : CentOS 7

CDH版本 :CM 6.0.1

1.安裝前準備

1.1 操作系統(tǒng)設(shè)置
1.1.1 配置固定IP 與 解析關(guān)系
1.1.2 關(guān)閉 SELINUX
1.1.3 關(guān)閉防火墻
1.1.4 配置時間同步 NTP
1.1.5 配置集群 ssh免密登錄
上述安裝前基礎(chǔ)配置參考我的簡書
http://www.itdecent.cn/p/52c6b3b4f519

2.安裝

2.1 步驟1 安裝Java

要求:
JDK必須是64位。不要使用32位JDK。
已安裝的JDK必須是受支持的版本java1.8以上。
在相同版本的JDK必須安裝在每個集群主機上。
必須安裝JDK在 /usr/java/jdk-versio (很重要注意)

安裝jdk流程參考http://www.itdecent.cn/p/456041b488c9

2.2 步驟2 配置Repo

該步驟建議替換從本地yum源安裝的方式 ?。。。。。?/code>
首先我們需要下載 Repo , Repo 是 yum 用來管理包的配置文件。
下載地址:
https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/cloudera-manager.repo

通過以下指令:
 
sudo wget <repo_file_url> -P /etc/yum.repos.d/

repo_file_url 換成以上的地址即可

-P LOCAL_DIR:保存所有的文件或目錄到指定的目錄下

之后我們還需要執(zhí)行以下指令,Import the repository signing GPG key:

sudo rpm --import https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/RPM-GPG-KEY-cloudera

2.3 步驟3 安裝服務(wù)

這個步驟主要用來 安裝 cloudera-manager-daemon 與 cloudera-manager-agent , cloudera-manager-server

其中 cloudera-manager-daemon 與 cloudera-manager-agent 是要每臺機器進行安裝的

cloudera-manager-server 只需要 在集群中想作為 未來管理節(jié)點的機器上安裝即可 .

我們先看下是否能找到這些包

我們執(zhí)行下面指令:

yum search cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server

這里,我們采用 yum 安裝。

安裝指令:

主節(jié)點:

yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server

其他節(jié)點:

yum install cloudera-manager-daemons cloudera-manager-agent

最后建議把這些服務(wù)設(shè)置為 開機啟動服務(wù),方便管理。在集群重啟的時候,可以不用擔心服務(wù)的問題。

主節(jié)點:

sudo systemctl enable cloudera-scm-agent

sudo systemctl enable cloudera-scm-server

其他節(jié)點:

sudo systemctl  enable  cloudera-scm-agent

2.4 步驟4 修改各節(jié)點配置 并啟動 cloudera-scm-agent

配置各個節(jié)點的 agent,使得各個節(jié)點的 agent 都指向 主節(jié)點:

主要通過以下步奏:

修改 /etc/cloudera-scm-agent/config.ini


image.png
[General]
# Hostname of the CM server.
#server_host=localhost
server_host=cdh-manager

# Port that the CM server is listening on.
server_port=7182

更多的配置 ,請參考以下文檔:
https://www.cloudera.com/documentation/enterprise/6/latest/topics/cm_ag_agent_config.html#cmug_topic_5_16__section_kw3_5rq_wm

2.5 步驟5 安裝并配置 MySQL (只需要 主節(jié)點)

mysql安裝參考http://www.itdecent.cn/p/1c41ce3e9305

2.6 步驟6 配置CM 及其他服務(wù)的數(shù)據(jù)庫 基于 MySQL,增加mysql-connector 包

我們需要給 mysql 增加必要的用戶,用于其他組件 將 mysql 作為源數(shù)據(jù)庫。


image.png

我們登錄mysql 執(zhí)行以下指令,我們給每個數(shù)據(jù)庫設(shè)置密碼 123456 :

CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY '123456';
GRANT ALL ON amon.* TO 'amon'@'%' IDENTIFIED BY '123456';
GRANT ALL ON rman.* TO 'rman'@'%' IDENTIFIED BY '123456';
GRANT ALL ON hue.* TO 'hue'@'%' IDENTIFIED BY '123456';
GRANT ALL ON metastore.* TO 'metastore'@'%' IDENTIFIED BY '123456';
GRANT ALL ON sentry.* TO 'sentry'@'%' IDENTIFIED BY '123456';
GRANT ALL ON nav.* TO 'nav'@'%' IDENTIFIED BY '123456';
GRANT ALL ON navms.* TO 'navms'@'%' IDENTIFIED BY '123456';
GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456';

刷新權(quán)限:

FLUSH PRIVILEGES;

必須使用flush privileges的兩種情況

1)、改密碼。

2)、授權(quán)超用戶。

除此以外,我們需要

Installing the MySQL JDBC Driver

具體步驟如下:
Download the MySQL JDBC driver from http://www.mysql.com/downloads/connector/j/5.1.html (in .tar.gz format). As of the time of writing, you can download version 5.1.46 using wget as follows:

wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz

Extract the JDBC driver JAR file from the downloaded file. For example:

tar -zxvf mysql-connector-java-5.1.46.tar.gz

Copy the JDBC driver, renamed, to /usr/share/java/. If the target directory does not yet exist, create it. For example:

sudo mkdir -p /usr/share/java/
cd mysql-connector-java-5.1.46
sudo cp mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar

2.7 步驟7 初始化數(shù)據(jù)庫,啟動服務(wù)

由于這里我們用到了 cm 使用 mysql 作為源數(shù)據(jù)庫,所以我們應(yīng)該對 mysql 進行初始化,

初始化 的步奏 如下

The syntax for the scm_prepare_database.sh script is as follows:

sudo /opt/cloudera/cm/schema/scm_prepare_database.sh [options] <databaseType> <databaseName> <databaseUser> <password>

示例如下:

sudo /opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm 123456

該步驟做完之后,我們就可以啟動 cm 了

啟動命令如下:

sudo systemctl start cloudera-scm-server

開機啟動

 sudo systemctl enable cloudera-scm-server

2.8 步驟8 Parcel 安裝

如果這些步驟都順利進行的話,我們應(yīng)該可以訪問 cm 的 7180 端口 進行初始化配置了。

初始化界面如下:


image.png

我們進行下一步。如果 我們的 agent 配置合理,可以掃描到集群中的機器。 參考 2.4
然后我們選擇 parcel 6.0.1 網(wǎng)絡(luò)安裝 ,國內(nèi)大約要 8-10 h ,我們可以下載離線包的形式進行配置。參考 第4 章 ,加速安裝部分。
安裝最后,我們再登錄 cm 即可看到 管理界面了。

image

3.常見問題詳解

cdh環(huán)境安裝后只有hdfs用戶是supergroup組,每次操作要從root用戶切換到hdfs用戶,并且有的代碼操作比如Bulk Load大量數(shù)據(jù)插入到hbase操作時會報錯hbase用戶權(quán)限不夠,所以要把hbase用戶也加到supergroup組內(nèi)。索性把root和hbase用戶都加入supergroup組,以后再遇到哪個用戶權(quán)限不夠再加

操作步驟如下:

1、在Linux執(zhí)行如下命令增加supergroup

groupadd supergroup

2、如將用戶root增加到supergroup中,再執(zhí)行:

usermod -a -G supergroup root

3、同步系統(tǒng)的權(quán)限信息到HDFS:

su - hdfs -s /bin/bash -c "hdfs dfsadmin -refreshUserToGroupsMappings"

即可

3.1 安裝中斷,如何繼續(xù)

出現(xiàn)原因:

parcel 包下載自動安裝后,服務(wù)沒分配


image

Step1 :

在頂部狀態(tài)欄:

選擇繼續(xù)下一步安裝

Step2:

分配服務(wù):

3.2 Inspector 檢測 出現(xiàn)各種錯誤警告

CDH創(chuàng)建Mysql數(shù)據(jù)庫時能找到服務(wù)器找不到數(shù)據(jù)庫
在創(chuàng)建新的數(shù)據(jù)庫后應(yīng)運行以下語句來修改數(shù)據(jù)庫訪問權(quán)限

mysql -uroot -proot -e"GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;FLUSH PRIVILEGES;"

===============================

Cloudera 建議將 /proc/sys/vm/swappiness 設(shè)置為最大值 10。當前設(shè)置為 30。

echo "vm.swappiness=10" >> /etc/sysctl.conf

===========================

已啟用透明大頁面壓縮,可能會導致重大性能問題

echo "echo never > /sys/kernel/mm/transparent_hugepage/defrag" >> /etc/rc.local 
echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local 
chmod +x /etc/rc.d/rc.local

===================

自啟動CDH掛掉
原因:ip地址映射錯誤
Mysql服務(wù)未啟動

========================

CDH安裝Yarn時NodeManager啟動失敗
Error starting NodeManager
org.apache.hadoop.service.ServiceStateException: org.fusesource.leveldbjni.internal.NativeDB$DBException: IO error: /var/lib/hadoop-yarn/yarn-nm-recovery/yarn-nm-state/LOCK: 權(quán)限不夠

方法一:修改目錄權(quán)限

chmod -R 755 /var/lib/hadoop-yarn/

方法二:刪除該對應(yīng)子目錄重試CDH添加服務(wù)操作

CDH內(nèi)存不足超過閾值
調(diào)整主機配置參數(shù) 默認0.8 剩余內(nèi)存為系統(tǒng)占用(可調(diào)整優(yōu)化)

3.3 運行日志在哪里

運行日志 所在目錄

/var/log

下 cloudera 開頭的都是 目錄 ,重要的是 cloudera-scm-server

4.幾種加快安裝的方式

4.1 啟動httpd 服務(wù),使用離線 parcel 包安裝

這里我們需要借用httpd 搭建一個網(wǎng)絡(luò)服務(wù)

Httpd
CentOS7 默認是不安裝 httpd 的,我們通過以下指令先安裝下 httpd 服務(wù)

安裝:

yum install -y httpd

啟動httpd 服務(wù):

systemctl start httpd

開機啟動

systemctl enable httpd

啟動后,我們可以直接通過地址訪問一下,看下服務(wù)是否啟動正常: httpd 默認使用的就是 80端口


image

注意 httpd 有一定的公約,/var/www/html 是 httpd 的根目錄,

假設(shè)我們 將文件放在 /var/www/html/cdh6/parcels/6.0.1 下,我們可以通過頁面訪問到 :
http://192.168.75.134/cdh6/parcels/6.0.1/

image

==================================

這里我們需要從官網(wǎng)上下載對應(yīng)系統(tǒng)的 parcel,在安裝時候通過本地加速

6.0.1 版本的地址如下,

https://archive.cloudera.com/cdh6/6.0.1/parcels/

注意

manifest.json 與 sha256 校驗文件最好一并下載

4.2 創(chuàng)建本地數(shù)據(jù)源

step1 : 搭建httpd 服務(wù)

這里我們需要借鑒上一個小節(jié) 4.1 的 httpd 服務(wù),不熟悉的可以先看下 httpd 服務(wù)如何搭建。

搭建好服務(wù)后,啟動httpd

step2: 下載所需要的包

我們就從官網(wǎng)上下載對應(yīng)系統(tǒng) rpm 包

官網(wǎng)地址

https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/RPMS/x86_64/

將該目錄下的rpm全部下載。下載好后,我們將這些包放置在

/var/www/html/yum/centos7/repo/

目錄下。

step3: 創(chuàng)建本地 repo 源

首先,我們要為下載的這些rpm,生成一個依賴關(guān)系。

我們執(zhí)行以下指令

cd /var/www/html/yum/centos7/repo/

createrepo .
image

之后。會生成一個 repodata 文件夾

除此之外,我們還需要為源,編寫 .repo 文件來描述我們的源。

首先,我們切換到所有 源的配置目錄

cd /etc/yum.repos.d/

新建一個 localCDH.repo

內(nèi)容如下:

[localCDHRepo]
name=local_CDH_Repo
baseurl=http://192.168.75.134/yum/centos7/repo/
enabled=true
gpgcheck=false

最后,我們執(zhí)行下

yum makecache  
[root@cdh-repo yum.repos.d]# yum makecache
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.tuna.tsinghua.edu.cn
 * extras: mirrors.neusoft.edu.cn
 * updates: mirrors.tuna.tsinghua.edu.cn
base                                                                                                                                                 | 3.6 kB  00:00:00     
epel                                                                                                                                                 | 3.2 kB  00:00:00     
extras                                                                                                                                               | 3.4 kB  00:00:00     
localCDHRepo                                                                                                                                         | 2.9 kB  00:00:00     
updates                                                                                                                                              | 3.4 kB  00:00:00     
Metadata Cache Created

更新本地緩存,這樣就加載了我們新創(chuàng)建的源。
之后,我們把 localCDH.repo 放到其他機器的 /etc/yum.repos.d/ 目錄下,讓其他機器也可以通過 httpd 訪問到這些 rpm。

最后編輯于
?著作權(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ù)。

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