Ambari2.7.1安裝

一、配置說明

1. 硬件環境
2. 軟件環境

二、修改主機名和hosts文件

1. 修改主機名(三臺主機都執行)
vim /etc/hostname   # 該命令需要重啓後生效# 還有另外一種方式,執行該命令後立即生效,只不過需要重啓Xshell連接hostnamectl set-hostname node1.ambari.com
2. 修改hosts文件
vim /etc/hosts

注:主機名修改後需要重啓機器纔可徹底生效。如果用戶不想重啓,可使用命令 hostnamectlset-hostname node1.ambari.com來修改主機名,可使用命令 hostname來檢驗主機名是否修改成功。這種修改方式只是暫時的,待機器重啓後就恢復原樣 localhost了。

三、關閉防火牆和selinux

1. 防火牆設置
# 查看防火牆狀態systemctl status firewalld# 查看開機是否啓動防火牆服務systemctl is-enabled firewalld# 關閉防火牆systemctl stop firewalldsystemctl disable firewalld# 再次查看防火牆狀態和開機防火牆是否啓動systemctl status firewalldsystemctl is-enabled firewalld
2. 禁用selinux
# 永久性關閉selinux(重啓服務器生效)sed -i 's/SELINUX=enforcing/SELINUX =disabled/' /etc/selinux/config# 臨時關閉selinux(立即生效,重啓服務器失效)setenforce 0# 查看selinux狀態getenforce# disabled爲永久關閉,permissive爲臨時關閉,enforcing爲開啓

四、免密登陸

各個主機均執行以下操作:

## 生成密鑰對ssh-keygen -t rsa   ## 一路回車即可## 進入.ssh目錄,如果目錄不存在則創建cd ~/.ssh## 將公鑰導入至authorized_keyscat id_rsa.pub >> authorized_keys## 修改文件權限chmod 700 ~/.sshchmod 600 authorized_keys

在node1.ambari.com上執行:

## 配置主從互相免密登陸[root@node1 ~]# cat ~/.ssh/id_rsa.pub | ssh [email protected] 'cat - >> ~/.ssh/authorized_keys'[root@node1 ~]# cat ~/.ssh/id_rsa.pub | ssh [email protected] 'cat - >> ~/.ssh/authorized_keys'ssh node2.ambari.com ssh node3.ambari.com # 驗證主機點是否可以免密登陸從節點,執行exit命令退出即可。

備註:要想實現多主機互相免密,可參考文章:Linux多臺主機互相免密登陸

五、安裝JDK

下載鏈接: https://pan.baidu.com/s/1rlqZejpZZqio9RPzgnGOEg 提取碼: j47n ;內有 jdk-8u151-linux-x64.tar.gzmysql-connector-java.jar文件。

  • mkdir /usr/java;將下載的壓縮包上傳到java文件夾內
  • 解壓壓縮包:tar zxvf jdk-8u151-linux-x64.tar.gz
  • 配置jdk環境變量:
# 編輯/etc/profile,文末插入以下內容:# set javaexport JAVA_HOME=/usr/java/jdk1.8.0_151export PATH=$JAVA_HOME/bin:$PATH
  • 使環境變量生效:source /etc/profile
  • 安裝驗證:java -version

六、安裝mysql

mysql5.7 centos7:

https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

mysql5.7 centos6:

https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm

mysql5.6 centos7:

https://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

mysql5.6 centos6:

https://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm

1. 檢查本地資源庫中是否有mysql的rpm包
rpm -qa | grep mysql# 刪除相關rpm包rpm -ev <rpm包名> --nodeps
2. 搭建mysql5.7的yum源
# 下載mysql5.7的rpm包wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm# 安裝第一步下載的rpm文件,安裝成功後/etc/yum.repos.d/目錄下會增加兩個文件yum -y install mysql57-community-release-el7-11.noarch.rpm# 查看mysql57的安裝源是否可用,如不可用請自行修改配置文件(/etc/yum.repos.d/mysql-community.repo)使mysql57下面的enable=1# 若有mysql其它版本的安裝源可用,也請自行修改配置文件使其enable=0yum repolist enabled | grep mysql
3. 安裝mysql
yum install mysql-community-server
4. 設置mysql
# 啓動mysql服務service mysqld start# 查看root密碼grep "password" /var/log/mysqld.log# 登陸mysqlmysql -u root -pEnter password: # 爲了可以設置簡單密碼set global validate_password_policy=0;set global validate_password_length=4;# 立即修改密碼,執行其他操作報錯:SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');# 我們創建密碼爲root123
5. 新增ambari用戶並增加權限
mysql -uroot -proot123CREATE USER 'ambari'@'%' IDENTIFIED BY 'ambari';GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'%';CREATE USER 'ambari'@'localhost' IDENTIFIED BY 'ambari';GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'localhost';CREATE USER 'ambari'@'node1.ambari.com' IDENTIFIED BY 'ambari';GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'node1.ambari.com';  //本地主機名FLUSH PRIVILEGES;

注:刪除用戶命令:

Delete FROM user Where User='your_user' and Host='your_host';FLUSH PRIVILEGES;
6. 使用ambari用戶登陸並創建數據庫
mysql -uambari -pambariCREATE DATABASE ambari;exit;

七、設置時鐘同步

自己寫了一個腳本,前提條件是獲取 /etc/hosts文件內的主機ip

腳本如下:

#!/usr/bin/env bashhost_list=$(sed -n '3,$p' /etc/hosts | awk '{print $1}')master_hostip=$(sed -n 3p /etc/hosts | awk '{print $1}')ips_no_host=$(sed -n '4,$p' /etc/hosts | awk '{print $1}')# 遍歷所有節點for host in $host_listdo    # 設置時區    ssh $host ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime    # 同步硬件時間    ssh $host hwclock --systohc    # 開機自啓動    ssh $host echo service ntpd restart >> /etc/rc.d/rc.local    ssh $host echo "hwclock --systohc" >> /etc/rc.d/rc.local    ssh $host chmod +x /etc/rc.d/rc.local    # 安裝ntp服務    ssh $host yum install -y -q ntpdone# 主節點操作,修改配置文件sed -i -e '21 s/^/# /' -i -e '22 s/^/# /' -i -e '23 s/^/# /' -i -e '24 s/^/# /' /etc/ntp.confecho server 127.127.1.0 >> /etc/ntp.confecho fudge 127.127.1.0 stratum 10 >> /etc/ntp.confservice ntpd start# 從節點操作,開啓ntp服務,使用ntpdate命令進行時鐘同步for slave in $ips_no_hostdo    ssh $slave service ntpd start    ssh $slave ntpdate -u $master_hostipdone

八、搭建yum本地源

1. 安裝httpd和wget服務
# 安裝httpdyum -y install httpd.x86_64systemctl enable httpd.servicesystemctl start httpd.service# 安裝wgetyum -y install wget
2. 下載ambari和hdp包
# 將tar包下載到/var/www/htmlcd /var/www/htmlwget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.7.1.0/ambari-2.7.1.0-centos7.tar.gzwget http://public-repo-1.hortonworks.com/HDP/centos7/3.x/updates/3.0.1.0/HDP-3.0.1.0-centos7-rpm.tar.gzwget http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.22/repos/centos7/HDP-UTILS-1.1.0.22-centos7.tar.gz# 解壓上面三個包tar zxvf ambari-2.7.1.0-centos7.tar.gztar zxvf HDP-3.0.1.0-centos7-rpm.tar.gztar zxvf HDP-UTILS-1.1.0.22-centos7.tar.gz
3. 新建repo文件
  • 新建ambari.repo文件
[ambari]name=ambaribaseurl=http://node1.ambari.com/CentOS-7/ambari-2.6.0.0enabled=1gpgcheck=0
  • 新建HDP.repo文件
[HDP]name=HDPbaseurl=http://node1.ambari.com/CentOS-7/HDPpath=/enabled=1gpgcheck=0
  • 新建HDP-UTILS.repo文件
[HDP-UTILS]name=HDP-UTILSbaseurl=http://liuyzh1.xdata/CentOS-7/HDP-UTILSpath=/enabled=1gpgcheck=0

將以上文件放入 /etc/yum.repos.d/目錄下。

九、在主節點安裝ambari-server

1. 安裝
yum -y install ambari-server
2. 將mysql-connector-java.jar拷貝到/usr/share/java目錄下
3. 修改配置文件
echo server.jdbc.driver.path=/usr/share/java/mysql-connector-java.jar >> /etc/ambari-server/conf/ambari.properties
4. 安裝ambari-server
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar
5. 初始化數據庫
mysql -uambari -pambariuse ambari;source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
6. 啓動ambari-server
ambari-server start

登陸瀏覽器訪問: http://192.168.162.41:8080/,利用界面部署集羣。

默認登陸賬號/密碼爲:admin/admin。


更多精彩內容,請關注微信公衆號,歡迎您的關注

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章