ambari安裝筆記

Ambari安裝筆記java

1 準備工做

1.1 系統及版本選擇

1.1.1選用Centos6

緣由:node

一、   Ambari不支持ubuntu16,雖然最新的Ambari版本好像是支持的,可是沒有試過。python

二、   Python 2.7默認啓用SSL證書驗證。Ambari代理使用自簽名證書與服務器進行通訊,不能驗證。所以,若是在機器上安裝了Python 2.7,則代理程序沒法註冊到服務器。咱們須要在代理中手動禁用證書驗證,或者爲加密通訊找出不一樣的解決方案。mysql

這個問題能夠解決,經過改變python版本解決,可是比較麻煩。        linux

三、   在Ubuntu上安裝的時候Ambari版本使用的是2.2 可能最新版2.5以上問題已解決了。可是何嘗試。sql

1.1.2 選用高版本Ambari

緣由:數據庫

一、   曾經安裝2.0版本時,將Ambari建表語句導入到mysql數據庫中時遇到建表失敗(主鍵長度大於1000byte)。在2.2時這個建表語句已經改了,不會出現這個問題。ubuntu

二、   一個開源項目高版本的功能以和支持比低版本成熟完善多了,安裝起來應該會更爲容易、規避了不少低版本安裝遇到的問題。vim

1.1.3 選用Centos6.9和Ambari2.5

         如上,選擇合適的版本很重要,選擇不當就會掉入坑裏,浪費大量的時間。centos

1.1.4 安裝前說明

一、   本文如下內容都是以centos系統爲準。

二、   由於安裝時沒有截圖,而且部分設置規劃不完美,因此截圖來都是來自後期截圖或網絡上的圖片,和文字說明有所出入,我會在圖片上加上描述信息,應該不影響閱讀此文並進行安裝,之後如有時間再次安裝Ambari時會刷新此文檔。

1.2 集羣環境準備

1.2.1 主機環境

         準備4臺機子

192.168.0.160 #主機,ambari-server在這個機子上

192.168.0.161 #安裝hadoop01

192.168.0.162 #安裝hadoop02

192.168.0.163 #安裝hadoop03

         如下設定,如無特別說明以hadoop02(192.168.0.1)爲環境設定

1.2.1.1 設置靜態IP

一、   修改對應網卡ip地址

# vim /etc/sysconfig/network-scripts/ifcfg-eth0

修改內容:

DEVICE=eth0 #描述網卡對應的設備別名,例如ifcfg-eth0的文件中它爲eth0

HWADDR=08:00:27:3A:25:FE #對應的網卡物理地址

TYPE=Ethernet

UUID=8a1aa5eb-9d62-4dad-9c23-ccd0538700ca

ONBOOT=yes

NM_CONTROLLED=yes #系統啓動時是否設置此網絡接口,設置爲yes時,系統啓動時激活此設備

BOOTPROTO=static #設置網卡得到ip地址的方式,此處設爲static

BROADCAST=192.168.0.225 #對應的子網廣播地址

IPADDR=192.168.0.162 # IP地址

NETMASK=255.255.255.0 #網卡對應的網絡掩碼

NETWORK=192.168.0.0 #網卡對應的網絡地址

 

二、   修改網關的配置文件

# vim /etc/sysconfig/network

修改內容:

NETWORKING=yes #表示系統是否使用網絡,通常設置爲yes。

HOSTNAME=hadoop02.yjhh.com #設置本機的主機名,這裏設置的主機名要和/etc/hosts中設置的主機名對應

GATEWAY=192.168.0.1 #網關

 

三、   修改DNS的配置文件

# vim /etc/resolv.conf

修改內容:

nameserver 192.168.0.1 #DNS設置域名服務器

 

四、   重啓網絡配置

# /etc/init.d/network restart

最好重啓:reboot

1.2.1.2 hosts配置

         4臺機子hosts文件配置:

127.0.0.1 localhost

192.168.0.160 ambari.yjhh.com

192.168.0.161 hadoop01.yjhh.com

192.168.0.162 hadoop02.yjhh.com

192.168.0.163 hadoop03.yjhh.com

         hosts文件地址:/etc/hosts

1.2.1.3 hostname設置

一、   修改/etc/sysconfig/network 文件裏的HOSTNAME。

命令如:

# vim /etc/sysconfig/network

         設置和前面講過的同樣:

NETWORKING=yes #表示系統是否使用網絡,通常設置爲yes。

HOSTNAME=hadoop02.yjhh.com #設置本機的主機名,這裏設置的主機名要和/etc/hosts中設置的主機名對應

GATEWAY=192.168.0.1 #網關

二、   使用命令hostname 設置hostname

命令如:

# hostname hadoop02.yjhh.com

1.2.1.4 重啓機子,命令 reboot

         hostname設置很差安裝集羣時就不能成功,而且使用/etc/init.d/network restart 命令重啓機子有時並無論用。

1.2.2 ssh免密

1.2.2.1 SSH配置

每臺主機上打開配置

# vim /etc/ssh/sshd_config

修改下面選項:

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile      .ssh/authorized_keys

 

設置完成後重啓ssh

# /etc/init.d/ssh restart

1.2.2.2生成SSH密鑰

# ssh-keygen -t rsa

執行完成在~/.ssh/目錄下會生成公匙文件id_rsa.pub,私匙文件id_rsa

1.2.2.3把公鑰寫入主機authorized_keys文件

         主機即 ambari安裝的機子192.168.0.160hostnane爲ambari.yjhh.com

         依次在主機和其餘三個hadoop機子執行下面命令

# ssh-copy-id root@ambari.yjhh.com

1.2.2.4 將主機的authorized_keyscopy到三個hadoop機子

# scp ~/.ssh/uthorized_keys root@hadoop01.yjhh.com:~/.ssh/

# scp ~/.ssh/uthorized_keys root@hadoop02.yjhh.com:~/.ssh/

# scp ~/.ssh/uthorized_keys root@hadoop03.yjhh.com:~/.ssh/

1.2.3 關閉防火牆

關閉命令:  service iptables stop

永久關閉防火牆:chkconfig iptables off

兩個命令同時運行,運行完成後查看防火牆關閉狀態

service iptables status

相關命令參考:

1 關閉防火牆-----service iptables stop

2 啓動防火牆-----service iptables start

3 重啓防火牆-----service iptables restart

4 查看防火牆狀態--service iptables status

5 永久關閉防火牆--chkconfig iptables off

6 永久關閉後啓用--chkconfig iptables on

1.2.4 啓動ntp

啓動命令:

# /etc/init.d/ntpd start

配置啓動項:

# chkconfig ntpd on

1.2.5關閉 selinux

打開selinux cofnig 文件:

# vim /etc/selinux/config

修改SELINUX 爲disabled

SELINUX=disabled

         重啓機子。

1.2.6 安裝jdk

1.        下載到jdk-8u131-linux-x64.tar.gz

2.        在/usr/目錄下建立java目錄

mkdir /usr/java

cd /usr/java

3.        將下載的tar包拷貝到/usr/java 目錄下而後解壓

# tar -zvxf jdk-8u131-linux-x64.tar.gz

4.        設置環境變量

# vim /etc/profile

用vim 打開profile增長以下內容:

#set java environment

JAVA_HOME=/usr/java/jdk1.8.0_131

JRE_HOME=/usr/java/jdk1.8.0_131/jre

CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

export JAVA_HOME JRE_HOME CLASS_PATH PATH

讓修改生效:

# source /etc/profile

5.        驗證java是否安裝成功

# java -version

1.2.7 安裝mysql(僅在ambari主機安裝)

1.2.7.1卸載掉原有mysql

查看系統上是否已經安裝了mysql數據庫:

        

# rpm -qa | grep mysql  // 這個命令就會查看該操做系統上是否已經安裝了mysql數據庫

有的話,咱們就經過 rpm -e 命令或者 rpm -e --nodeps 命令來卸載掉

# rpm -e mysql  // 普通刪除模式

# rpm -e --nodeps mysql  // 強力刪除模式,若是使用上面命令刪除時,提示有依賴的其它文件,則用該命令能夠對其進行強力刪除

刪除完之後咱們能夠經過 rpm -qa | grep mysql 命令來查看mysql是否已經卸載成功!!

1.2.7.2經過yum來進行mysql的安裝

#yum install -y mysql-server mysql mysql-devel

1.2.7.3 mysql數據庫的初始化及相關配置

啓動命令:

# service mysqld start

1.2.7.4設置開機啓動

# chkconfig mysqld on

1.2.7.5查看mysql服務是否是開機自動啓動

# chkconfig --list | grep mysqld

1.2.7.6設置root密碼

/usr/bin/mysqladmin -u root password 'root'  // 爲root帳號設置密碼,此處密碼爲root

1.2.7.7建立ambari庫,並受權

# mysql -uroot -proot

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 7

Server version: 5.1.73 Source distribution

 

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

 

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

mysql> create database ambari character set utf8 ; # 建立ambari庫

Query OK, 1 row affected (0.00 sec)

 

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

Query OK, 0 rows affected (0.00 sec) #受權外網經過root用戶 以root密碼訪問

 

mysql> use mysql;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

 

Database changed

mysql> SELECT User, Password, Host FROM user; #查看 用戶名密碼

+------+-------------------------------------------+-----------+

| User | Password                                  | Host      |

+------+-------------------------------------------+-----------+

| root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | localhost |

| root |                                           | ambari    |

| root |                                           | 127.0.0.1 |

|      |                                           | localhost |

|      |                                           | ambari    |

| root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | %         |

+------+-------------------------------------------+-----------+

6 rows in set (0.00 sec)

 

mysql> flush privileges; # 刷新受權信息

Query OK, 0 rows affected (0.00 sec)

1.2.7.8下載mysql的驅動jar把jdbc驅動放到如下幾個目錄中

/usr/share/java/

/var/lib/ambari-server/resources #等ambari安裝後再copy到這個目錄下

/usr/lib/ambari-server #等ambari安裝後再copy到這個目錄下

 

2安裝Ambari Server

         登陸ambari-server主機(192.168.0.160)

2.1添加 yum 源

# cd /etc/yum.repos.d/

#wget -nv http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.5.0.3/ambari.repo -O /etc/yum.repos.d/ambari.repo

檢查是否安裝成功:

# yum repolist

可看到列表:

2.2 安裝ambari

命令:

# yum install ambari-server

2.3 設置ambari

1.        安裝命令

# ambari-server setup

2.        檢查SELinux是否關閉,若是關閉不用操做

Using python  /usr/bin/python

Setup ambari-server

Checking SELinux...

SELinux status is 'disabled'

3.        提示是否自定義設置。輸入:y

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

4.        ambari-server 帳號。輸入:root或回車默認即爲root

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

Adjusting ambari-server permissions and ownership...

5.        設置JDK。輸入:3

Checking JDK...

Do you want to change Oracle JDK [y/n] (n)? y

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

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

[] Custom JDK

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

Enter choice (1): 3

6.        若是上面選擇3自定義JDK,則輸入: /usr/java/jdk1.8.0_131

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/java/jdk1.8.0_131

Validating JDK on Ambari Server...done.

Completing setup...

7.        數據庫配置。選擇:y

Configuring database...

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

8.        選擇數據庫類型。輸入:3

Configuring database...

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

Choose one of the following options:

[1] - PostgreSQL (Embedded)

[2] - Oracle

[3] - MySQL

[4] - PostgreSQL

[5] - Microsoft SQL Server (Tech Preview)

[6] - SQL Anywhere

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

Enter choice (3): 3

9.        設置數據庫的具體配置信息,根據實際狀況輸入,若是和括號內相同,則能夠直接回車。

Hostname (localhost):

Port (3306):

Database name (ambari):

Username (root):

Enter Database Password (root)

10.    提示必須安裝MySQL JDBC,回車結束ambari配置

WARNING: Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java.

Press <enter> to continue.

11.    提示將Ambari數據庫腳本導入到數據庫

WARNING: Before starting Ambari Server, you must copy the MySQL JDBC driver JAR file to /usr/share/java.

Press <enter> to continue.

12.    將Ambari數據庫腳本導入到數據庫

用Ambari用戶(上面設置的用戶)登陸mysql

mysql -uroot –proot

use ambari

source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql

2.4 啓動Amabri

# ambari-server start

 

成功啓動後在瀏覽器輸入Ambari地址:

http://192.168.0.160:8080/

出現登陸界面

 

3部署集羣

相關文章
相關標籤/搜索