準備工做html
1.服務器java
關鍵詞:mysql
3臺服務器linux
配置要求至少2核8Ggit
選擇同地域同區域服務器,保證內網通暢github
我的學習,推薦使用阿里雲按量付費的服務器,在使用時候開啓,不適用的時候關機中止收費。web
需注意兩點:sql
(1)服務器配置至少2核8G,不然CDH集羣可能沒法正常運行shell
(2)服務器要保證在同一地域的同一可用卻,切記必定不能使用隨機分配區域,不然不一樣地域的實例之間內網互不相通json
阿里雲的使用細節不作過多描述,不清楚的能夠查看若澤數據課程:https://www.bilibili.com/video/av52167219/?p=3
按照操做,最終的配置以下:
2.安裝包準備
CM
cloudera-manager-centos7-cm5.16.1x8664.tar.gz Parcel
CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha1 manifest.json
JDK
https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html
下載jdk-8u202-linux-x64.tar.gz
MySQL https://dev.mysql.com/downloads/mysql/5.7.html#downloads
下載mysql-5.7.26-el7-x86_64.tar.gz
MySQL jdbc jar
mysql-connector-java-5.1.47.jar
下載完成後要重命名去掉版本號,
mv mysql-connector-java-5.1.47.jar mysql-connector-java.jar
2.規劃
節點 |
MySQL部署組件 |
Parcel文件離線元 |
CM服務進程 |
大數據組件 |
hadoop001 |
MySQL |
Parcel |
Activity Monitor |
NN RM DN NM |
hadoop002 |
Alert Publisher Event Server |
DN NM |
||
hadoop003 |
Host Monitor Service Monitor |
DN NM |
3.集羣節點初始化
1.配置host
vim /etc/hosts
172.26.84.187 hadoop001
172.26.84.188 hadoop002
172.26.84.189 hadoop003
2.配置防火牆(詳細介紹阿里雲服務器)
(1)若是使用內部服務器,建議先關閉防火牆,集羣搭建起以後,再開啓相關端口。防火牆相關命令,自行查找。
(2)阿里雲服務器默認防火牆爲關閉狀態,在阿里雲的web界面,找到服務器的安全組,對服務器的安全組進行配置,操做以下
1.進入服務器列表,找到 安全組配置
2.點擊配置規則
3.添加配置規則
圖中的規則表明:開啓7180到7180直接的端口號,受權對象,即訪問限制的ip爲0.0.0.0/0,即全部ip地址都可訪問該web端口。
3.時區設置,timezone和datatime同步(阿里雲時間基本不會出問題,方法二可跳過)
(1) 經過date命令以及timedatectl,查找集羣每臺機器時間是否一致、時區是否一致以及是否爲CST格式的時間。
CST被視爲美國、澳大利亞、古巴或中國的標準時間
若是時區不一致,使用timedatectl --help查看相關命令
使用list-timezones查看時區列表
set-timezone Asia/Shanghai
(2)使用ntp服務設置時區
yum install -y ntp
使用hadoop001 做爲時間同步的主節點
hadoop002-003做爲時間同步的從節點
設置主節點
vim /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
#這個是容許客戶端172.26.84段的地址能夠同步該時間同步服務器。
restrict 172.26.84.0 mask 255.255.255.0 nomodify notrap
systemctl start ntpd 重啓ntpdfuwu
systemctl status ntpd 查看ntpd服務狀態,當現實爲runnig的時候,說明已經開始服務
ntpq -p 查看驗證結果
三條命令的操做結果以下
設置從節點
關閉從節點ntpd服務,不然從節點也是使用ntpd網絡設置時間
systemctl stop ntpd
systemctl disable ntpd
在從節點使用 /usr/bin/ntpstat hadoop001 表示同步hadoop001節點時間
4.JDK安裝
路徑:/usr/java
解壓以後的用戶及用戶組的修正
配置環境變量
tar -zxvf jdk包 -C /usr/java
chown -R root:root /usr/java/jdk1.8.0_45/
vim /etc/profile
#env環境變量
export JAVA_HOME=/usr/java/jdk1.8.0_45
export PATH=$JAVA_HOME/bin:$PATH
source /etc/profile
java -version檢查
5.MySQL離線部署
https://github.com/Hackeruncle/MySQL/blob/master/MySQL%205.7.11%20Install.txt
6.準備mysql相關jar包
mkdir -p /usr/share/java
cp mysql-connector-java-5.1.47.jar /usr/share/java/mysql-connector-java.jar
jar包的名稱必定要把版本號去掉,不然將不會識別
cmf
amon
都要部署在hadoop001節點上 那麼此節點就要部署jar包
7.離線部署CM
解壓
tar -zxvf cloudera-manager-centos7-cm5.16.1_x86_64.tar.gz -C /opt/cloudera-manager/
agent配置 (所有機器)
cd /opt/cloudera-manager/cm-5.16.1/etc/cloudera-scm-agent
vim config.inc 將server_host修改爲主節點的域名
server配置(主節點)
選取hadoop001做爲server端,修改server端配置文件
cd /opt/cloudera-manager/cm-5.16.1/etc/cloudera-scm-server
vim db.properties
# Copyright (c) 2012 Cloudera, Inc. All rights reserved.
#
# This file describes the database connection.
#
# The database type
# Currently 'mysql', 'postgresql' and 'oracle' are valid databases.
com.cloudera.cmf.db.type=mysql
# The database host
# If a non standard port is needed, use 'hostname:port'
com.cloudera.cmf.db.host=hadoop001
# The database name
com.cloudera.cmf.db.name=cmf
# The database user
com.cloudera.cmf.db.user=cmf
# The database user's password
com.cloudera.cmf.db.password=mysql的密碼
# The db setup type
# By default, it is set to INIT
# If scm-server uses Embedded DB then it is set to EMBEDDED
# If scm-server uses External DB then it is set to EXTERNAL
com.cloudera.cmf.db.setupType=EXTERNAL
三臺機器建立爲cdh運行的用戶,用戶不須要獨立的根目錄以及登陸,這個用戶只是給cdh作啓動使用
useradd --system --home=/opt/cloudera-manager/cm-5.16.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false cloudera-scm
修改三臺機器目錄權限
chown -R cloudera-scm:cloudera-scm /opt/cloudera-manager
8.parcel文件離線源 hadoop001
mkdir -p /opt/cloudera/parcel-repo
mv CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel /opt/cloudera/parcel-repo/
mv CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha (注意須要給文件重命名 去掉1)
mv manifest.json /opt/cloudera/parcel-repo/
校驗文件是否有問題:/usr/bin/sha1sum CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel
對比返回的值 和 CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha 的值是否一致
更改用戶組:
chown -R cloudera-scm:cloudera-scm /opt/cloudera
這樣 hadoop001的離線源部署完成
9.全部節點建立大數據軟件的安裝目錄 用戶和用戶組
[root@hadoop001 parcel-repo]# mkdir -p /opt/cloudera/parcels
[root@hadoop001 parcel-repo]# chown -R cloudera-scm:cloudera-scm /opt/cloudera
10.啓動服務
hadoop001啓動server:
/opt/cloudera-manager/cm-5.16.1/etc/init.d/cloudera-scm-server start --啓動server端
cd /opt/cloudera-manager/cm-5.16.1/log/cloudera-scm-server 進入server端日誌,查看日誌文件
全部服務器,啓動scm:
/opt/cloudera-manager/cm-5.16.1/etc/init.d/cloudera-scm-agent start
11.打開防火牆,開啓7180端口
默認用戶名:admin
默認密碼:admin
選擇免費版本便可