centos6.5 無網環境下利用ambari搭建HDP環境

1 安裝前服務器環境準備

1.1 環境規劃

實驗機器總數3臺。html

IPjava

主機名node

部署環境python

192.168.1.223mysql

223linux

Ambari-server、ambari-agent、yum源sql

192.168.1.224apache

224vim

Ambari-agentcentos

192.168.1.225

225

Ambari-agent

1.2 配置hosts

在三臺主機中添加主機名與IP之間的對應關係。

vim /etc/hosts

將如下內容添加進去

192.168.1.223 223

192.168.1.224 224

192.168.1.225 225

1.3 關閉防火牆

在全部的主機上,執行以下命令,關閉防火牆。

chkconfig iptables off

service iptables stop

1.4 關閉SELINUX和PackageKit

在全部的主機上,執行以下命令

SELINUX修改

vim /etc/selinux/config

作以下更改:SELINUX=disabled

PackageKit(系統中已經安裝了PackageKit)

 vim /etc/yum/pluginconf.d/refresh-packagekit.conf 

作以下更改:enabled=0

1.5 安裝NTP時鐘同步

在全部的主機上,執行以下操做

安裝NTP服務

yum install -y ntp

chkconfig ntpd on

啓動NTP服務

service ntpd start

1.6 創建SSH互信

在全部的主機上創建互信,要求全部的機器必須可以項目無密碼登錄。

首先,登錄ambari-server機器,執行以下命令生成公鑰

//首先切換到當前登陸用戶的用戶目錄下

cd ~/

mkdir .ssh

ssh-keygen -t rsa

cd .ssh

cat id_rsa.pub >> authorized_keys

chmod 700 ~/.ssh

chmod 600 ~/.ssh/authorized_keys

將authorized_keys中的祕鑰分發到全部ambari-agent節點上。

ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.224

ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.225

在其它ambari-agent節點上也一樣利用上面的命令生成公鑰,而後將公鑰分發給ambari-server。而後,兩個agent相互信任。

1.7 關閉Transparent HugePages

echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag

echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled

echo never > /sys/kernel/mm/transparent_hugepage/enabled

echo never > /sys/kernel/mm/transparent_hugepage/defrag

1.8 安裝JDK

卸載自帶的Open-jdk

rpm -qa | grep java

rpm -e –nodeps 加上查詢出來的名字

從官網下載JDK安裝包

利用終端工具將安裝包上傳至服務器

執行以下命令

mkdir /usr/local/jdk

tar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/local/jdk/

vim /etc/profile

將以下內容放到文件底部,保存

export JAVA_HOME=/usr/local/jdk/jdk1.8.0_181

export JRE_HOME=$JAVA_HOME/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin

使環境變量生效

source /etc/profile

檢查是否安裝成功

java -version

2 本地ambari yum源搭建

2.1 安裝建立本地源的工具

yum install yum-utils createrepo

2.2 安裝httpd

yum install httpd

2.3 託管ambari安裝包到apache服務器

將本地安裝包上傳服務器後,解壓到/var/www/html目錄下。若是解壓後的目錄中沒有repodata文件夾,則用如下命令生成repodata。

cd /root/HDP/

tar -vzxf ambari.tar.gz -C /var/www/html/ambari/

tar -vzxf HDP.tar.gz -C /var/www/html/HDP/

tar -vzxf  HDP-UTILS.tar.gz -C /var/www/html/hdp-util/

# 若是解壓後的目錄中沒有repodata才執行 createrepo操做

createrepo /var/www/html/ambari/centos6/

2.4 啓動httpd服務

chkconfig httpd on

service httpd start

2.5 添加ambari+HDP源配置

添加源的時候baseurl填寫安裝包託管到apache服務器的地址

添加ambari源

cd /etc/yum.repos.d/

vim ambari.repo

將如下內容添加進ambari.repo

baseurl爲當前ambari安裝包託管到apache服務器的地址

gpgkey填寫當前GPGKEY託管到apache服務器的地址

#VERSION_NUMBER=2.6.2.0-155

[ambari-2.6.2.0]

name=ambari Version - ambari-2.6.2.0

baseurl=http://192.168.1.223/ambari/centos6/

gpgcheck=1

gpgkey=http://192.168.1.223/ambari/centos6/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

enabled=1

priority=1

添加HDP源

cd /etc/yum.repos.d/

vim hdp.repo

將如下內容添加進hdp.repo

baseurl爲當前hdp安裝包託管到apache服務器的地址

gpgkey填寫當前GPGKEY託管到apache服務器的地址

#VERSION_NUMBER=2.6.5.0-292

[HDP-2.6.5.0]

name=HDP Version - HDP-2.6.5.0

baseurl=http://192.168.1.223/hdp/centos6

gpgcheck=1

gpgkey=http://192.168.1.223/hdp/centos6/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

enabled=1

priority=1

[HDP-UTILS-1.1.0.22]

name=HDP-UTILS Version - HDP-UTILS-1.1.0.22

baseurl=http://192.168.1.223/hdp-util

gpgcheck=1

gpgkey=http://192.168.1.223/hdp-util/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

enabled=1

priority=1

查看是否添加成功

yum clean all

yum repolist

2.6 準備系統yum源

從網上下載相對應linux版本的完整版安裝包

在服務器上建立相應yum源託管目錄。因爲文件較大,咱們經過軟鏈接方式託管到服務器。

mkdir -p /var/www/html/centos/7/os/

mkdir -p /opt/centos/7/os/x86_64/Packages

ln -s /opt/centos/7/os/x86_64/ /var/www/html/centos/7/os/


解壓linux安裝包,將Packages目錄下的文件拷貝到/opt/centos/7/os/x86_64/Packages目錄下,將RPM-GPG-KEY-CentOS-7拷貝到/opt/centos/7/os/x86_64/目錄下。

2.8 添加系統yum配置

執行以下命令

createrepo /var/www/html/centos/7/os/x86_64/

vim /etc/yum.repos.d/local.repo

將以下內容拷貝到local.repo而後保存

#LOCAL

[local]

name=local

baseurl=http://服務器IP地址/centos/$releasever/os/$basearch/

gpgcheck=1

gpgkey=http://服務器IP地址/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-7

enabled=1

priority=1

執行以下命令進行測試

yum clean all

yum makecache

yum repolist

2.9 配置說明

首先,在一臺機器上製做好局域網本地源後,其它機器只須要按照2.52.8步驟進行相應的配置便可。

3 Ambari-Server搭建

3.1 安裝ambari-server

yum install ambari-server

3.2 配置ambari-server

注意加粗地方的選擇

ambari-server setup

Using python  /usr/bin/python2

Setup ambari-server

Checking SELinux...

SELinux status is 'disabled'

Customize user account for ambari-server daemon [y/n] (n)? y

Enter user account for ambari-server daemon (root):root

Adjusting ambari-server permissions and ownership...

Checking firewall status...

Checking JDK...

[1] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8

[2] Oracle JDK 1.7 + Java Cryptography Extension (JCE) Policy Files 7

[3] Custom JDK

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

Enter choice (1): 3

WARNING: JDK must be installed on all hosts and JAVA_HOME must be valid on all hosts.

WARNING: JCE Policy files are required for configuring Kerberos security. If you plan to use Kerberos,please make sure JCE Unlimited Strength Jurisdiction Policy Files are valid on all hosts.

Path to JAVA_HOME: /usr/local/jdk/jdk1.8.0_60

Validating JDK on Ambari Server...done.

Completing setup...

Configuring database...

Enter advanced database configuration [y/n] (n)? n

3.3 啓動ambari-server

ambari-server start

訪問服務器IP地址+8080端口,看到ambari界面,則安裝成功。

4 利用Ambari部署HDP

4.1 準備mysql驅動

將驅動更名爲mysql-connector-java.jar複製到ambari-server服務器的/var/lib/ambari-server/resources目錄下

4.2 按照界面提示進行操做

進入管理界面後,點擊這個按鈕

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331150917055-1746046615.png

輸入集羣名字

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331152022258-818696897.png

選擇HDP版本,填寫HDP,和相應本地yum源地址

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331152540039-1721527540.png

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331152820117-1842676794.png

填寫目標機器主機名,和ambari-server的私鑰

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331153412555-313415848.png

Ambari-server私鑰查看

cat ~/.ssh/id_rsa

等待安裝

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331154539211-1006199950.png

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331162416086-2064780404.png

選擇須要服務

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331162857180-1077130978.png

默認安裝就好,後期能夠改,一路next。

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331163937805-1766923576.png

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331164053305-1707593932.png

注意在進行這一步操做時,須要填寫幾種環境的用戶名和密碼

https://images2015.cnblogs.com/blog/855959/201703/855959-20170331164153039-1889106704.png

最終安裝成功後,跳轉到主頁

5 遇到的問題

5.1 修改SSL驗證

當ambari-agent向ambari-server註冊時出現以下錯誤,則執行此步驟。

NetUtil.py:96 - EOF occurred in violation of protocol (_ssl.c:579)

NetUtil.py:97 - SSLError: Failed to connect. Please check openssl library versions.

執行以下步驟解決

vim /etc/ambari-agent/conf/ambari-agent.ini

相應位置配置作出以下修改

[security]

force_https_protocol=PROTOCOL_TLSv1_2

若是python版本爲2.7那麼還須要進行以下修改

vim /etc/python/cert-verification.cfg

將以下內容進行修改

[https]

verify=disable
相關文章
相關標籤/搜索