Ambari及其HDP集群安裝及其配置教程

Ambari及其HDP集群安裝及其配置教程

來自專欄機器學習/圖像處理4 人贊了文章

轉載請私信。

在Ambari出現前,我們配置安裝hadoop整個集群生態圈時非常的不方便,需要修改眾多的配置文件,然後再複製粘貼到其他機器上,而且如果配置時某一步出錯就得重來。Ambari是一種基於Web的工具,支持Apache Hadoop集群的供應、管理和監控,也就是說在安裝Ambari後,提供Web UI進行可視化的集群管理,簡化了大數據平台的安裝、安裝hadoop、spark、hbase只需要在web界面操作即可。

lets start

  • 安裝前準備

集群環境

機器名 IP 備註master 192.168.192.154 主節點 centos 7node 192.168.192.155 子節點 centos 7

這裡僅作演示,因此整個集群一個主節點,一個子節點(多個子節點的安裝配置類似)

首先利用VMware安裝一台centos7,作為主節點,取名master

VMware虛擬機IP的設置參考其他教程,或者直接使用NAT模式

安裝centos7時,請不要選擇最小化安裝,否則在進行接下來的步驟時會缺少各種組件和依賴,省去再次安裝組件的麻煩。

子節點虛擬機先不用安裝,因為主節點和子節點的許多配置需要保持一致,因此為了方便,在master上配置好後,直接克隆該master虛擬機作為子節點node即可,在子節點node上只需更改主機名,IP地址、MAC地址等即可,不需要再重複配置。

虛擬機配置

集群配置

  1. 修改主機名

centos 7 [root@localhost ~]# hostnamectl set-hostname mastercentos6 [root@localhost ~]# hostname master#---------------------------------------------------#[root@localhost ~]# vim /etc/sysconfig/network

添加如下信息

# Created by anaconda

NETWORKING=yes

HOSTNAME=master

2.配置hosts

[root@localhost ~]# vi /etc/hosts

添加如下信息

192.168.192.154 master

192.168.192.155 node

3.關閉防火牆

centos7[root@localhost ~]# systemctl disable firewalld.service [root@localhost ~]# systemctl stop firewalld.service centos6$ chkconfig iptables off $ service iptables stop $ chkconfig --list iptables

4.關閉SElinux

[root@localhost ~]# vi /etc/sysconfig/selinux

將SELINUX=enforcing改為SELINUX=disabled

5.更改yum源 CentOS鏡像使用幫助

#備份原鏡像[root@localhost ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup[root@localhost ~]# cd /etc/yum.repos.d/#centos 7 [root@localhost yum.repos.d]# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo#centos 6 [root@localhost yum.repos.d]# wget http://mirrors.163.com/.help/CentOS6-Base-163.repo#------------------------#[root@localhost yum.repos.d]# yum clean all[root@localhost yum.repos.d]# yum makecache

6.時鐘同步

[root@localhost ~] yum install -y ntp [root@localhost ~] chkconfig --list ntpd [root@localhost ~] systemctl is-enabled ntpd [root@localhost ~] systemctl enable ntpd [root@localhost ~] systemctl start ntpd

7.安裝JDK1.8

#檢查系統JDK版本

[root@master jdk8]# java -version

#查看java安裝包

[root@master jdk8]# rpm -qa | grep java

#卸載openjdk

[root@master jdk8]# yum remove *openjdk*

#安裝oracle JDK1.8

[root@localhost ~]# cd /usr/local[root@localhost local]# mkdir jdk8

#複製下載好的linux版JDK1.8到 /usr/local/jdk8目錄

#解壓

[root@localhost local]# cd jdk8[root@master jdk8]# tar -zxvf jdk-8u151-linux-x64.tar.gz

#配置jdk環境變數

[root@master jdk8]# vim /etc/profile#javaexport JAVA_HOME=/usr/local/jdk8/jdk1.8.0_151export JRE_HOME=$JAVA_HOME/jreexport CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/libexport PATH=$PATH:$JAVA_HOME/bin

#環境變數生效

[root@master jdk8]# source /etc/profile

#檢查是否安裝成功

[root@master jdk8]# java -version

8.相關服務安裝

#設定用戶所創建目錄的初始許可權[root@localhost ~]# umask 0022[root@ambari01 ~]# yum -y install lrzsz[root@ambari01 ~]# yum install -y openssh-clients

以上配置為基本配置,每個節點都需要上述的相同配置,因此配置好主節點後,克隆該虛擬機,避免重複配置


9.克隆子節點(教程只克隆一個子節點 多個子節點克隆多個即可)

#關機[root@localhost ~]# poweroff

9.1 關機後,右鍵master

9.2 選擇創建完整克隆

9.3 設置虛擬機名字

9.4 等待克隆完成

9.5 克隆完成啟動node,修改其主機名(步驟1)即可


10.免密碼登陸

#測試各個節點互通master主機:ping node 或 ping 192.168.192.155node 主機:ping master 或 ping 192.168.192.154

(以下步驟僅在主節點master中操作)

#生成密鑰文件[root@master ~]# ssh-keygen -t rsa

[root@master ~]# cd .ssh[root@master .ssh]# lsid_rsa id_rsa.pub

id_rsa為私鑰文件,id_rsa.pub為公鑰文件

#將公鑰文件複製到子節點[root@master ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.192.155

#在master測試免密碼登陸node[root@master ~]# ssh 192.168.192.155

#退出登陸[root@node ~]# exit


  • Ambari離線安裝 (在線安裝Ambari太慢)

(以下步驟僅在主節點master中操作)

部署本地庫

1.下載 Ambari與HDP 官網:Hortonworks

CentOS 6:http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.5.0.3/ambari-2.5.0.3-centos6.tar.gzhttp://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.6.0.3/HDP-2.6.0.3-centos6-rpm.tar.gzhttp://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos6/HDP-UTILS-1.1.0.21-centos6.tar.gzCentOS 7:http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.5.0.3/ambari-2.5.0.3-centos7.tar.gzhttp://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.0.3/HDP-2.6.0.3-centos7-rpm.tar.gzhttp://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7/HDP-UTILS-1.1.0.21-centos7.tar.gz

複製以上地址到瀏覽器即可下載.

或自行選擇版本下載:

選擇Apache Ambari Installation

下載地址

HDP的下載類似.不再贅述.


2.複製文件

下載完成後將這個三個文件複製到虛擬機


3.安裝本地源工具

[root@master ~]# yum install yum-utils createrepo yum-plugin-priorities -y#添加gpgcheck=0[root@master ~]# vi /etc/yum/pluginconf.d/priorities.conf


4.配置http服務

#檢查是否安裝httpd [root@master ~]# yum list httpd#未安裝則安裝httpd[root@master ~]# yum install httpd#配置HTTP 服務到系統層使其隨系統自動啟動[root@master ~]# chkconfig httpd on[root@master ~]# service httpd start

5.創建本地源

#將下載的3個tar包解壓到/var/www/html 相應目錄下

[root@master ~]# cd /var/www/html/[root@master html]# mkdir ambari[root@master ambari]# cd ..[root@master html]# mkdir hdp

[root@master Downloads]# lsambari-2.5.0.3-centos7.tar.gz HDP-UTILS-1.1.0.21-centos7.tar.gzHDP-2.6.0.3-centos7-rpm.tar.gz[root@master Downloads]# tar -zxvf ambari-2.5.0.3-centos7.tar.gz -C /var/www/html/ambari[root@master Downloads]# tar -zxvf HDP-2.6.0.3-centos7-rpm.tar.gz -C /var/www/html/hdp[root@master Downloads]# tar -zxvf HDP-UTILS-1.1.0.21-centos7.tar.gz -C /var/www/html/hdp

#createrepo

[root@master Downloads]# cd /var/www/html/ambari/[root@master ambari]# createrepo ./


6.下載ambari.repo HDP.repo,配置為本地源

[root@master Downloads]# cd /etc/yum.repos.d/[root@master yum.repos.d]# lsCentOS7-Base-163.repo CentOS-Debuginfo.repo CentOS-Sources.repoCentOS-Base.repo.backup CentOS-fasttrack.repo CentOS-Vault.repoCentOS-CR.repo CentOS-Media.repo

#-------------------------------------------------------------------------------------------#

[root@master yum.repos.d]# wget -nv http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.5.0.3/ambari.repo[root@master yum.repos.d]# vim ambari.repo #VERSION_NUMBER=2.5.0.3-7[ambari-2.5.0.3]name=ambari Version - ambari-2.5.0.3baseurl=http://master/ambari/ambari/centos7/gpgcheck=0gpgkey=http://master/ambari/ambari/centos7/RPM-GPG-KEY/RPM-GPG-KEY-Jenkinsenabled=1priority=1

#-------------------------------------------------------------------------------------------#

[root@master yum.repos.d]# wget -nv http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.0.3/hdp.repo[root@master yum.repos.d]# vim hdp.repo #VERSION_NUMBER=2.6.0.3-8[HDP-2.6.0.3]name=HDP Version - HDP-2.6.0.3baseurl=http://master/hdp/HDP/centos7/gpgcheck=0gpgkey=http://master/hdp/HDP/centos7/HDP/centos7/RPM-GPG-KEY/RPM-GPG-KEY-Jenkinsenabled=1priority=1[HDP-UTILS-1.1.0.21]name=HDP-UTILS Version - HDP-UTILS-1.1.0.21baseurl=http://master/hdp/gpgcheck=0gpgkey=http://master/hdp/RPM-GPG-KEY/RPM-GPG-KEY-Jenkinsenabled=1priority=1

7.執行yum命令

[root@master yum.repos.d]# yum clean all[root@master yum.repos.d]# yum makecache


8.查看本地源


安裝ambari-server

1.檢查倉庫是否可用

[root@master ~]# yum repolist

2.安裝

[root@master ~]# yum install ambari-server

3.配置Ambari-server

[root@master ~]# ambari-server setup

Note:Ambari默認使用postgreSQL

4.查看並啟動Ambari-server

[root@master ~]# service ambari-server start

5.登陸Ambari 默認用戶名/密碼:admin/admin 地址:master:8080

C:WindowsSystem32driversetc目錄下配置hosts文件192.168.192.154 master

Ambari安裝配置完成!


hadoop生態集群安裝

1.創建集群

2.集群名稱

3.版本選擇 (和下載版本一致)

4.選擇本地庫

5.配置本地源地址

6.配置子節點 上傳master私鑰

單個節點

多個子節點

連續多個子節點

7.master主節點私鑰上傳

8.正在安裝

9.失敗處理情況的處理

#點擊failed 查看日誌錯誤信息

#錯誤信息

處理:修改 /etc/hosts

添加如下信息:

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

#更新 openssl (所有主機)

[root@master ~]# yum install openssl

#更新openssl後仍出現

SSLError:Failed to connect.Please check openssl library versions.

則禁用ssl檢查

vim /etc/python/cert-verification.cfg

#重啟ambari

[root@master ~]# service ambari-server restart

#-------------------------------------------------------------------------------------------#

10.點擊 retry failed 重新安裝註冊

#安裝註冊成功後 查看檢查的結果

檢查結果應全為綠勾 否則按提示依次進行處理


11.安裝服務

#繼續下一步

#依次選擇具有紅色提示的列

#設置Ambari Metrics 密碼

#設置密碼

#設置完畢後 點擊下一步

#等待安裝

#點擊 installing ...可查看服務安裝信息

#安裝成功後 所有服務會自動啟動 如下圖 節點的服務信息

至此 教程完畢

接下來便是基於hadoop spark 等的編程開發


推薦閱讀:

TAG:Hadoop | Spark | Linux集群 |