您好,登錄后才能下訂單哦!
主機(jī)列表
基礎(chǔ)環(huán)境
集群主機(jī)基礎(chǔ)配置
配置 NTP 服務(wù)
安裝 Cloudera Manager Server 和 AgentServer
配置 Server 端
配置 Agent 端
安裝 CDH
配置并分配 CDH5 parcel 包
安裝 Hadoop 集群及相關(guān)組件
瀏覽 CDH Web 端相關(guān)布局
安裝 Kafka 組件
配置并分配 Kafka parcel 包
集群內(nèi)安裝 Kafka 服務(wù)
配置 HDFS LZO 壓縮
配置并分配 LZO parcel 包
HDFS 相關(guān) LZO 配置
YARN 相關(guān) LZO 配置
|主機(jī)名 | IP |Memory| CPU | 角色及服務(wù) | | :------- | ----: |:---: |:--- |:--- | | test1.lan | 192.168.22.11 |9G |4核 | cm-agent, Namenode, YARN | | test2.lan | 192.168.22.12 |9G |4核 | cm-agent, SecondNameode, HBase-Master | | test3.lan |192.168.22.13 |9G |4核 | cm-agent, Datanode, zk-server, kafka-broker, Regionserver | | test4.lan |192.168.22.14 |9G |4核 | cm-agent, Datanode, zk-server, kafka-broker, Regionserver | | test5.lan | 192.168.22.15 |9G |4核 | cm-agent, Datanode, zk-server, kafka-broker, Regionserver | | test6.lan |192.168.22.16 |9G |4核 | cm-server, MySQL-Server |
CentOS 6 x86_64
jdk-8u101-linux-x64.rpm
MySQL-5.6.x
NTPd => On
CDH-5.12.0-1.cdh6.12.0.p0.29-el6.parcel(離線parcel)
cloudera-manager-el6-cm5.12.0x8664.tar.gz
KAFKA-2.2.0-1.2.2.0.p0.68-el6.parcel
確保 /
目錄至少100G以上
SELinux 關(guān)閉
iPtables 關(guān)閉
禁用 Transparent Hugepage Compaction
設(shè)置 vm.swapiness 為 1
ntp 服務(wù)開啟,時(shí)間同步(不推薦用ntpdate)
以下配置集群內(nèi)每臺(tái)主機(jī)均要做一次
```
vim /etc/sysconfig/ntpdate SYNC_HWCLOCK=yes // 打開硬件時(shí)鐘同步保存 ntpdate time.windows.com
// 首次手動(dòng)同步時(shí)鐘,避免首次ntpd服務(wù)因時(shí)間偏差過大導(dǎo)致無法同步 vim /etc/ntp.conf server time.windows.com prefer // 添加時(shí)間同步服務(wù)器 service ntpd start && chkconfig ntpd on // 運(yùn)行時(shí)間同步服務(wù) ```
該 MySQL 服務(wù)即可安裝在 cm-server 服務(wù)器上,也可以與其他服務(wù)共用
> rpm -qa | grep -i -E "mysql-libs|mariadb-libs" > yum remove -y mysql-libs mariadb-libs && yum install -y -q crontabs postfix > tar xf MySQL-5.6.35-1.el6.x86_64.rpm-bundle.tar > rpm -ivh MySQL-client-5.6.35-1.el6.x86_64.rpm \ MySQL-shared-* \ MySQL-server-5.6.35-1.el6.x86_64.rpm \ MySQL-devel-5.6.35-1.el6.x86_64.rpm
安裝 MySQL-Server ```
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.44.tar.gz tar xf mysql-connector-java-5.1.44.zip ``` 下載 mysql-connector.jar (用于安裝在 cm-server 服務(wù)器上)
> vim /etc/my.cnf [mysqld] character-set-server = utf8
// 初始密碼在 ~/.mysql-secret
文件之中> mysql -p`default_secret` sql_cli > SET PASSWORD = PASSWORD("new_secret") sql_cli > exit
Cloudera Manager Server 安裝在 test6.lan AgentServer 在集群內(nèi)每臺(tái)主機(jī)均需要單獨(dú)安裝 下載地址:http://archive-primary.cloudera.com/cm5/cm/5/cloudera-manager-el6-cm5.12.0x8664.tar.gz
cloudera-manager 下載完成后上傳到 test6.lan
即可 然后解壓到 /opt
目錄下(只能是該目錄下),因?yàn)閏dh6的源會(huì)默認(rèn)在 /opt/cloudera/parcel-repo
尋找
> tar xf cloudera-manager-el6-cm5.12.0_x86_64.tar.gz -C /opt/
給集群內(nèi)所有節(jié)點(diǎn)添加 cloudera-scm
用戶 ```
useradd --system --home=/opt/cm-5.12.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm ```
在 cm-server 節(jié)點(diǎn)配置 mysql-connector-java
,并且為 Cloudera Manager 5 創(chuàng)建初始數(shù)據(jù)庫> cp /path/to/mysql-connector-java-5.1.44-bin.jar /opt/cm-5.12.0/share/cmf/lib/
然后,創(chuàng)建初始數(shù)據(jù)庫(-psecret 為數(shù)據(jù)庫對(duì)應(yīng)賬戶的密碼) ```
/opt/cm-5.12.0/share/cmf/schema/scmpreparedatabase.sh mysql cm -hlocalhost -uroot -psecret --scm-host localhost scm scm scm ``` 見 Successfully connected to database. All done, you SCM database is configured correctly! 即庫結(jié)構(gòu)表結(jié)構(gòu)配置成功。
運(yùn)行 Cloudera Manager 5 的 Server 端:
> /opt/cm-5.12.0/etc/init.d/cloudera-scm-server start
注意:首次運(yùn)行 Server 端,會(huì)有大概5-10分鐘的數(shù)據(jù)初始化時(shí)間(服務(wù)端進(jìn)程內(nèi)存占用大概1.5G左右),初始化完成后會(huì)有 java 程序監(jiān)聽在 7180 7182 端口之上。
在 Server 端修改 Agent 配置文件中 server_host 的主機(jī)地址
> vi /opt/cm-5.12.0/etc/cloudera-scm-agent/config.ini server_host=test6.lan
在 Server 端復(fù)制 Agent 程序到集群內(nèi)所有節(jié)點(diǎn) /opt/ 目錄下
> for i in {1..5}; do echo "--------- Start scp to test${i}.lan --------" scp -r -q /opt/cm-5.12.0/ test${i}.lan:/opt/ echo "######### Done ##########" done
等待復(fù)制成功,即可在 Agent 所有節(jié)點(diǎn)中啟動(dòng) Agent 程序
> /opt/cm-5.12.0/etc/init.d/cloudera-scm-agent start
Agent 端程序?yàn)?Python 進(jìn)程,會(huì)主動(dòng)到配置文件中的 server_host 節(jié)點(diǎn)注冊(cè)信息,該 Agent 也是用于后續(xù)接受 Server 端發(fā)送的相關(guān)指令,以及心跳信息監(jiān)控。
需要單獨(dú)回到 test6.lan shell終端,配置 CDH5 的 parcel
包(cloudera 采用預(yù)編譯捆綁安裝包的方式,以支持 Hadoop 離線安裝)。 對(duì)應(yīng) CDH parcel
包下載地址為:http://archive-primary.cloudera.com/cdh6/parcels/5.12.0/ ```
cd /opt/cloudera/parcel-repo curl -O http://fileserver.lan/CDH5/CDH5-5.12.0-1.cdh6.12.0.p0.29-el6.parcel curl -O http://fileserver.lan/CDH5/CDH5-5.12.0-1.cdh6.12.0.p0.29-el6.parcel.sha1 mv CDH5-5.12.0-1.cdh6.12.0.p0.29-el6.parcel.sha1 \ CDH5-5.12.0-1.cdh6.12.0.p0.29-el6.parcel.sha ``` 此處需要把對(duì)應(yīng) parcel 包的 sha1 文件改名為 CDH5-5.12.0-1.cdh6.12.0.p0.29-el6.parcel.sha,不然 cm-server 識(shí)別不了該 parcel 包。
重啟 cloudera-scm-server 服務(wù)端
> /opt/cm-5.12.0/etc/init.d/cloudera-scm-server restart
打開 http://test6.lan:7180/ 開始安裝 CDH默認(rèn)登陸用戶名密碼為 admin admin
同意相關(guān)條款
選擇相關(guān)服務(wù)版本
該版本相關(guān)服務(wù)包及信息
添加集群主機(jī) 此處有當(dāng)前管理的主機(jī)(5)
表示 Agent 端注冊(cè)到 Server 端正常。 如果此處只有一個(gè)選項(xiàng),即 新主機(jī)
,那么表示 Agent 注冊(cè)不正常,請(qǐng)檢查網(wǎng)絡(luò)或服務(wù)是否正常。 你亦可以選擇通過指定主機(jī)名或IP的方式連接遠(yuǎn)程節(jié)點(diǎn)。
選擇主機(jī)
選擇集群安裝的相關(guān)配套組件 parcel 包。
開始集群內(nèi)節(jié)點(diǎn)的 parcel 包部署
此圖最后的部署告警提示 cloudera-scm 用戶未創(chuàng)建,確實(shí)是節(jié)點(diǎn)忘記創(chuàng)建,用戶創(chuàng)建完畢后重新驗(yàn)證即可。
部署信息概覽
CDH 官方有已經(jīng)打包好的配套匹配方案,也可以自行搭配組件
此處暫且選擇幾個(gè)組件,包括 HBase、HDFS、YARN 和 Zookeeper (Kafka屬于另外一個(gè)單獨(dú)的parcel包提供,后面再單獨(dú)安裝)
相關(guān)組件的配置參數(shù)
部署中....
其中各相關(guān)服務(wù)組件在服務(wù)器文件系統(tǒng)中的安裝路徑如下
安裝完成
修改 NameNode 關(guān)于 Heapsize 大小的初始默認(rèn)配置(推薦設(shè)置為 1-4G 大小) 修改配置后,需要重啟服務(wù),重啟服務(wù)后稍等片刻,等待服務(wù)的相關(guān)附屬子進(jìn)程啟動(dòng)完畢,告警即消失。 (修改 NameNode 的 Heapsize 大小,當(dāng)然也需要修改 SecondaryNameNode 的 Heapsize)
在 Web 頁面中,主機(jī) -> Parcel 里面會(huì)列出當(dāng)前集群以配置和分配的 parcel 包,目前只配置了 CDH5,Kafka 單獨(dú)存在于其他 parcel 包中,所以需要單獨(dú)加載 parcel ,然后分配到集群內(nèi)各節(jié)點(diǎn)。
Cloudera官方Kafka組件的parcel包下載地址為:http://archive.cloudera.com/kafka/parcels/latest/ 照舊下載 percel 文件,以及該文件的 sha1 串,然后重命名 ***.sha1
為 ***.sha
方可。
下載好以上兩個(gè)文件后,放到 cm-server 節(jié)點(diǎn)的 /opt/cloudera/parcel-repo/
目錄下 無需重啟 server 守護(hù)進(jìn)程,在頁面即可在線刷新、分配、激活。
這里需要確認(rèn)和修改 2 個(gè)默認(rèn)配置
復(fù)制進(jìn)程,默認(rèn)為1,修改為 3(視業(yè)務(wù)量而定)
分區(qū)數(shù),默認(rèn)分區(qū)數(shù)為 50,這里暫且保留。
刪除舊topic,默認(rèn)打開,不做更改。
業(yè)務(wù)端口為 9092 。
LZO 功能也是封裝在單獨(dú)的 parcel 包中,選擇對(duì)應(yīng)平臺(tái)的包。 下載地址為:http://archive-primary.cloudera.com/gplextras/parcels/latest/ 這里并沒有直接的提供 sha 文件,所以需要查看 manifest.json
文件,找到對(duì)應(yīng) parcel 包的 hash 值,手動(dòng)保存至本地文件即可。
下載 parcel 包及其 sha 文件,存放至 cm-server 的 /opt/cloudera/parcel-repo/
目錄下。 同安裝 Kafka 捆綁包一樣,在頁面上即可完成刷新,注冊(cè),分配,激活操作。
激活好 LZO 之后,有幾個(gè)為之依賴的服務(wù)會(huì)提示重啟載入新配置。 先別急重啟,還有幾個(gè)配置需要單獨(dú)手動(dòng)修改。
將 io.compression.codecs
新增一行,填入 com.Hadoop.compression.lzo.LzopCodec
保存配置。
將 mapreduce.application.classpath
的屬性值新增一行,填入 /opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/*
將 mapreduce.admin.user.env
的屬性值,后補(bǔ)入 /opt/cloudera/parcels/HADOOP_LZO/lib/hadoop/lib/native
保存,重啟相關(guān)依賴的服務(wù)即可。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。