1. 程式人生 > >新聞網大數據實時分析可視化系統項目——3、Hadoop2.X分布式集群部署

新聞網大數據實時分析可視化系統項目——3、Hadoop2.X分布式集群部署

執行命令 yarn output ntpd cloudera arch 部署 試用 tput

(一)hadoop2.x版本下載及安裝

Hadoop 版本選擇目前主要基於三個廠商(國外)如下所示:

1.基於Apache廠商的最原始的hadoop版本, 所有發行版均基於這個版本進行改進。

2.基於HortonWorks廠商的開源免費的hdp版本。

3.基於Cloudera廠商的cdh版本,Cloudera有免費版和企業版, 企業版只有試用期。不過cdh大部分功能都是免費的。

(二)hadoop2.x分布式集群配置

1.集群資源規劃設計

技術分享圖片

2.hadoop2.x分布式集群配置

1)hadoop2.x分布式集群配置-HDFS

安裝hdfs需要修改4個配置文件:hadoop-env.sh、core-site.xml、hdfs-site.xml和slaves

2)hadoop2.x分布式集群配置-YARN

安裝yarn需要修改4個配置文件:yarn-env.sh、mapred-env.sh、yarn-site.xml和mapred-site.xml

(三)分發到其他各個機器節點

hadoop相關配置在第一個節點配置好之後,可以通過腳本命令分發給另外兩個節點即可,具體操作如下所示。

#將安裝包分發給第二個節點

scp -r hadoop-2.5.0 [email protected]:/opt/modules/

#將安裝包分發給第三個節點

scp -r hadoop-2.5.0 [email protected]:/opt/modules/

(四)HDFS啟動集群運行測試

hdfs相關配置好之後,可以啟動hdfs集群。

1.格式化NameNode

通過命令:bin/hdfs namenode -format 格式化NameNode。

2.啟動各個節點機器服務

1)啟動NameNode命令:sbin/hadoop-daemon.sh start namenode

2) 啟動DataNode命令:sbin/hadoop-daemon.sh start datanode

3)啟動ResourceManager命令:sbin/yarn-daemon.sh start resourcemanager

4)啟動NodeManager命令:sbin/yarn-daemon.sh start resourcemanager

5)啟動log日誌命令:sbin/mr-jobhistory-daemon.sh start historyserver

(五)YARN集群運行MapReduce程序測試

前面hdfs和yarn都啟動起來之後,可以通過運行WordCount程序檢測一下集群是否能run起來。

集群自帶的WordCount程序執行命令:bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar wordcount input output

(六)ssh無秘鑰登錄

在集群搭建的過程中,需要不同節點分發文件,那麽節點間分發文件每次都需要輸入密碼,比較麻煩。另外在hadoop 集群啟動過程中,也需要使用批量腳本統一啟動各個節點服務,此時也需要節點之間實現無秘鑰登錄。具體操作步驟如下所示:

1.主節點上創建 .ssh 目錄,然後生成公鑰文件id_rsa.pub和私鑰文件id_rsa

mkdir .ssh

ssh-keygen -t rsa

2.拷貝公鑰到各個機器

ssh-copy-id bigdata-pro1.kfk.com

ssh-copy-id bigdata-pro2.kfk.com

ssh-copy-id bigdata-pro3.kfk.com

3.測試ssh連接

ssh bigdata-pro1.kfk.com

ssh bigdata-pro2.kfk.com

ssh bigdata-pro3.kfk.com

4.測試hdfs

ssh無秘鑰登錄做好之後,可以在主節點通過一鍵啟動命令,啟動hdfs各個節點的服務,具體操作如下所示:

sbin/start-dfs.sh

如果yarn和hdfs主節點共用,配置一個節點即可。否則,yarn也需要單獨配置ssh無秘鑰登錄。

(七)配置集群內機器時間同步(使用Linux ntp進行)

選擇一臺機器作為時間服務器,比如bigdata-pro1.kfk.com節點。

1.查看ntp服務是否已經存在

sudo rpm -qa|grep ntp

2.ntp服務相關操作

1)查看ntp狀態

sudo service ntpd status

2)啟動ntp

sudo service ntpd start

3)關閉ntp

sudo service ntpd stop

3.設置ntp隨機器啟動

sudo chkconfig ntpd on

4.修改ntp配置文件

vi /etc/ntp.conf

#釋放註釋並將ip地址修改為

restrict 192.168.31.151 mask 255.255.255.0 nomodify notrap

#註釋掉以下命令行

server 0.centos.pool.ntp.org iburst

server 1.centos.pool.ntp.org iburst

server 2.centos.pool.ntp.org iburst

server 3.centos.pool.ntp.org iburst

#釋放以下命令行

server 127.127.1.0 #local clock

fudge 127.127.1.0 stratum 10

重啟ntp服務

sudo service ntpd restart

5.修改服務器時間

#設置當前日期

sudo date -s 2017-06-16

#設置當前時間

sudo date -s 22:06:00

6.其他節點手動同步主服務器時間

#查看ntp位置

which ntpdate

/usr/sbin/ntpdate

1)手動同步bigdata-pro2.kfk.com節點時間

sudo /usr/sbin/ntpdate bigdata-pro2.kfk.com

2)手動同步bigdata-pro3.kfk.com節點時間

sudo /usr/sbin/ntpdate bigdata-pro3.kfk.com

7.其他節點定時同步主服務器時間

bigdata-pro2.kfk.com和bigdata-pro3.kfk.com節點分別切換到root用戶, 通過crontab -e 命令,每10分鐘同步一次主服務器節點的時間。

crontab -e

#定時,每隔10分鐘同步bigdata-pro1.kfk.com服務器時間

0-59/10 * * * * /usr/sbin/ntpdate bigdata-pro1.kfk.com

新聞網大數據實時分析可視化系統項目——3、Hadoop2.X分布式集群部署