1.安裝環境說明

三台機器安裝好CentOS-7-x86_64-Minimal-1708.iso
下載地址:https://www.centos.org/download/
最好在安裝時設置好IP和HOSTNAME
三台機器的IP和HOSTNAME下載如下
主 192.168.31.11 SY-001.hadoop
從 192.168.31.12 SY-002.hadoop
從 192.168.31.13 SY-003.hadoop
每個節點設置host
[root@SY-001 ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.31.11 SY-001 SY-001.hadoop
192.168.31.12 SY-002 SY-002.hadoop
192.168.31.13 SY-003 SY-003.hadoop
2.操作系統環境准備
2.1 配置SSH免密碼登錄
主節點里root用戶登錄執行如下步驟
[root@SY-001 ~]# ssh-keygen
[root@SY-001 ~]# cd ~/.ssh/
[root@SY-001 ~]# cat id_rsa.pub >>authorized_keys
[root@SY-001 ~]# chmod 600 ~/.ssh
[root@SY-001 ~]# chmod 600 ~/.ssh/authorized_keys
先在從節點登錄root執行命令
[root@SY-002 ~]# mkdir ~/.ssh/
[root@SY-003 ~]# mkdir ~/.ssh/
分發主節點里配置好的authorized_keys到各從節點
[root@SY-001 ~]# scp /root/.ssh/authorized_keys root@192.168.31.12:/root/.ssh/authorized_keys
[root@SY-001 ~]# scp /root/.ssh/authorized_keys root@192.168.31.13:/root/.ssh/authorized_keys
2.2 創建ambari系統用戶和用戶組
只在主節點操作
添加ambari安裝、運行用戶和用戶組,也可以不創建新用戶,直接使用root,我是直接用的root
[root@SY-001 ~]# adduser ambari
[root@SY-001 ~]# passwd ambari
2.3 開啟NTP服務
所有節點都需要操作
[root@SY-001 ~]# yum install ntp
[root@SY-001 ~]# systemctl is-enabled ntpd
[root@SY-001 ~]# systemctl enable ntpd
[root@SY-001 ~]# systemctl start ntpd
2.4 檢查DNS和NSCD
所有節點都要設置
ambari在安裝時需要配置全域名,所以需要檢查DNS。為了減輕DNS的負擔, 建議在節點里用 Name Service Caching Daemon (NSCD)
[root@SY-001 ~]# vi /etc/hosts
192.168.131.11 SY-001 SY-001.hadoop
192.168.131.12 SY-002 SY-002.hadoop
192.168.131.13 SY-003 SY-003.hadoop
每台節點里配置FQDN,如下以主節點為例
[root@SY-001 ~]# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=SY-001.hadoop
2.5 關閉防火牆
所有節點都要設置
[root@SY-001 ~]# systemctl disable firewalld
[root@SY-001 ~]# systemctl stop firewalld
2.6 關閉SELinux
所有節點都要設置
查看SELinux狀態:
[root@SY-001 ~]# sestatus
SELinux status: enabled
[root@SY-001 ~]# sestatus
SELinux status: disabled
臨時關閉,不用重啟機器:
[root@SY-001 ~]# setenforce 0
修改配置文件需要重啟機器:
[root@SY-001 ~]# vi /etc/sysconfig/selinux
SELINUX=disabled
3.制作本地源
制作本地源只需在主節點上進行即可
3.1 相關准備工作
3.1.1安裝 Apache HTTP 服務器
安裝HTTP 服務器,允許 http 服務通過防火牆(永久)
[root@SY-001 ~]# yum install httpd
[root@SY-001 ~]# firewall-cmd --add-service=http
[root@SY-001 ~]# firewall-cmd --permanent --add-service=http
添加 Apache 服務到系統層使其隨系統自動啟動
[root@SY-001 ~]# systemctl start httpd.service
[root@SY-001 ~]# systemctl enable httpd.service
3.1.2 安裝本地源制作相關工具
[root@SY-001 ~]# yum install yum-utils createrepo
3.2 下載安裝資源
下載 Ambari 2.6.0 , HDP 2.6.3 的安裝資源,本次安裝是在CentOS 7 上,只列出CentOS 7的資源,其他系統的請現在對用系統的資源
Ambari 2.6.0 下載資源
| RedHat 7 CentOS 7 Oracle Linux 7 |
Base URL |
http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.6.0.0 |
| Repo File |
http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.6.0.0/ambari.repo |
|
| Tarball |
http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.6.0.0/ambari-2.6.0.0-centos7.tar.gz |
HDP 2.6.3 下載資源
| RedHat 7 CentOS 7 Oracle Linux 7 |
HDP-2.6.3.0 |
HDP |
Version Definition File (VDF) |
http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0/HDP-2.6.3.0-235.xml |
| Base URL |
http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0 |
|||
| Repo File |
http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0/hdp.repo |
|||
| Tarball |
http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0/HDP-2.6.3.0-centos7-rpm.tar.gz |
|||
| HDP-UTILS |
Base URL |
http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7 |
||
| Tarball |
http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7/HDP-UTILS-1.1.0.21-centos7.tar.gz |
下載上面列表的中的壓縮包,
需要下載的壓縮包如下:
Ambari2.6.0
http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.6.0.0/ambari-2.6.0.0-centos7.tar.gz
HDP2.6.3
http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0/HDP-2.6.3.0-centos7-rpm.tar.gz
HDP-UTILS1.1.0.21
在httpd網站根目錄,默認是即/var/www/html/,創建目錄ambari,
並且將下載的壓縮包解壓到/var/www/html/ambari目錄
HDP-UTILS需要先建立一個HDP-UTILS文件夾並將HDP-UTILS-1.1.0.21-centos7.tar.gz放到HDP-UTILS目錄下再解壓
[root@SY-001 ~]# cd /var/www/html/
[root@SY-001 html]# mkdir ambari
[root@SY-001 html]# cd /var/www/html/ambari/
[root@SY-001 ambari]# wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.6.0.0/ambari-2.6.0.0-centos7.tar.gz
[root@SY-001 ambari]# wget http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.3.0/HDP-2.6.3.0-centos7-rpm.tar.gz
[root@SY-001 ambari]# wget http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7/HDP-UTILS-1.1.0.21-centos7.tar.gz
[root@SY-001 ambari]# tar -zxvf ambari-2.6.0.0-centos7.tar.gz
[root@SY-001 ambari]# tar -zxvf HDP-2.6.3.0-centos7-rpm.tar.gz
[root@SY-001 ambari]# mkdir HDP-UTILS
[root@SY-001 ambari]# mv HDP-UTILS-1.1.0.21-centos7.tar.gz /var/www/html/ambari/HDP-UTILS/
[root@SY-001 ambari]# tar -zxvf HDP-UTILS-1.1.0.21-centos7.tar.gz
驗證httpd網站是否可用,用瀏覽器直接訪問下面的地址,如果能看到目錄列表就表示成功:
http://192.168.31.1/ambari/
3.3 配置ambari、HDP、HDP-UTILS的本地源
首先下載上面資源列表中的相應repo文件,修改其中的URL為本地的地址,相關配置如下:
ambari.repo
[root@SY-001 yum.repos.d]# vi ambari.repo
#VERSION_NUMBER=2.6.0.0-267
[ambari-2.6.0.0]
name=ambari Version - ambari-2.6.0.0
baseurl=http://192.168.31.11/ambari/ambari/centos7/2.6.0.0-267
gpgcheck=1
gpgkey=http://192.168.31.11/ambari/ambari/centos7/2.6.0.0-267/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
hdp.repo
[root@SY-001 yum.repos.d]# vi hdp.repo
#VERSION_NUMBER=2.6.3.0-235
[HDP-2.6.3.0]
name=HDP Version - HDP-2.6.3.0
baseurl=http://192.168.31.11/ambari/HDP/centos7/2.6.3.0-235
gpgcheck=1
gpgkey=http://192.168.31.11/ambari/HDP/centos7/2.6.3.0-235/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
[HDP-UTILS-1.1.0.21]
name=HDP Utils Version - HDP-UTILS-1.1.0.21
baseurl=http://192.168.31.11/ambari/HDP-UTILS
gpgcheck=1
gpgkey=http://192.168.31.11/ambari/HDP-UTILS/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
將上面的修改過的源放到/etc/yum.repos.d/下面
[root@SY-001 yum.repos.d]# yum clean all
[root@SY-001 yum.repos.d]# yum list update
[root@SY-001 yum.repos.d]# yum makecache
[root@SY-001 yum.repos.d]# yum repolist
3.4 安裝Mysql數據庫
Ambari安裝會將安裝等信息寫入數據庫,建議使用MariaDB數據庫,也可以不安裝而使用默認數據庫PostgreSQL
[root@SY-001 ~]# yum install mariadb-server
[root@SY-001 ~]# systemctl start mariadb
[root@SY-001 ~]# systemctl enable mariadb
#數據庫初始化設置
[root@SY-001 ~]# mysql_secure_installation
#首先是設置密碼,會提示先輸入密碼
Enter current password for root (enter for none):<–初次運行直接回車
#設置密碼
Set root password? [Y/n] <– 是否設置root用戶密碼,輸入y並回車或直接回車
New password: <– 設置root用戶的密碼
Re-enter new password: <– 再輸入一次你設置的密碼
#其他配置
Remove anonymous users? [Y/n] <– 是否刪除匿名用戶,回車
Disallow root login remotely? [Y/n] <–是否禁止root遠程登錄,回車,
Remove test database and access to it? [Y/n] <– 是否刪除test數據庫,回車
Reload privilege tables now? [Y/n] <– 是否重新加載權限表,回車
#初始化MariaDB完成,接下來測試登錄,輸入密碼能正常登陸就完成了
[root@SY-001 ~]# mysql -uroot -p
安裝完成后創建ambari數據庫及用戶,登錄數據庫root用戶執行下面語句:
[root@SY-001 ~]# mysql -uroot -p
createdatabase ambari characterset utf8 ;
CREATEUSER'ambari'@'%'IDENTIFIED BY'Ambari-123';
GRANTALLPRIVILEGESON *.* TO'ambari'@'%';
FLUSH PRIVILEGES;
如果要安裝Hive,再創建Hive數據庫和用戶再執行下面的語句:
createdatabase hive characterset utf8 ;
CREATEUSER'hive'@'%'IDENTIFIED BY'Hive-123';
GRANTALLPRIVILEGESON *.* TO'hive'@'%';
FLUSH PRIVILEGES;
如果要安裝Oozie,再創建Oozie數據庫和用戶再執行下面的語句:
createdatabase oozie characterset utf8 ;
CREATEUSER'oozie'@'%'IDENTIFIED BY'Oozie-123';
GRANTALLPRIVILEGESON *.* TO'oozie'@'%';
FLUSH PRIVILEGES;
安裝mysql jdbc 驅動
[root@SY-001 ~]# yum install mysql-connector-java
3.5 安裝JDK
Java SE Development Kit 8u152下載地址:http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html
下載解壓版jdk-8u152-linux-x64.tar.gz,再執行下面命令:
[root@SY-001 ~]# tar -zxvf jdk-8u152-linux-x64.tar.gz -C /opt/java/
[root@SY-001 ~]# vi /etc/profile
export JAVA_HOME=/opt/java/jdk1.8.0_152
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
source /etc/profile
4.進行安裝Ambari
4.1 安裝Ambari2.6.0
4.1.1安裝Ambari
[root@SY-001 ~]# yum install ambari-server
4.1.2配置Ambari
[root@SY-001 ~]# ambari-server setup
下面是配置執行流程,按照提示操作
1.檢查SELinux是否關閉,如果關閉不用操作
Using python /usr/bin/python
Setup ambari-server
Checking SELinux...
SELinux status is'disabled'
2.提示是否自定義設置。輸入:y
Customize user account for ambari-server daemon [y/n] (n)? y
3.ambari-server 賬號。輸入:ambari
Enter user account for ambari-server daemon (root):ambari
Adjusting ambari-server permissions and ownership...
4.檢查防火牆,如果關閉則不用操作
Checking firewall status...
Redirecting to /bin/systemctl status iptables.service
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,則需要設置JAVA_HOME。輸入:/opt/java/jdk1.8.0_152
WARNING: JDK must be installed onall hosts and JAVA_HOME must be valid onall 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 onall hosts.
Path to JAVA_HOME: /opt/java/jdk1.8.0_152
Validating JDK on Ambari Server...done.
Completing setup...
7.數據庫配置。選擇:y
Configuringdatabase...
Enteradvanceddatabaseconfiguration[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 (ambari):
Enter Database Password (Ambari-123):
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數據庫腳本導入到數據庫
如果使用自己定義的數據庫,必須在啟動Ambari服務之前導入Ambari的sql腳本
#用Ambari用戶(上面設置的用戶)登錄mysql
mysql -u ambari -p
use ambari;
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
4.1.3啟動Amabri
執行啟動命令,啟動Ambari服務
[root@SY-001 ~]# ambari-server start
成功啟動后在瀏覽器輸入Ambari地址:
http://192.168.31.1:8080/
出現登錄界面,默認管理員賬戶登錄,賬戶:admin 密碼:admin
以下圖片用的別人的圖片,版本較低,僅供參考

登錄成功后出現下面的界面,至此Ambari的安裝成功

4.2 安裝安裝HDP 2.6.3 配置集群
點擊上面登錄成功頁面的Launch Install Wizard 按鈕進行集群配置
4.2.1設置集群名稱

4.2.2設置HDP 安裝源
選擇HDP2.6 ,並且設置Advanced Repository Options 的信息,本次使用本地源,所以修改對用系統的安裝源為本地源地址。

4.2.3設置集群機器

4.2.4 Host 確認
確認前面配置集群中hosts列表中的機器是否都可用,也可以移除相關機器,集群中機器Success后進行下一步操作。

4.2.5 選擇要安裝的服務

4.2.6各個服務Master配置

4.2.6 服務的Slaves 和 Clients節配置

4.2.7 服務的客制化配置

4.2.8 顯示配置信息

4.2.9開始安裝
安裝各個服務,並且完成安裝后會啟動相關服務,安裝過程比較長,如果中途出現錯誤,請根據具體提示或者log進行操作。

安裝過程可以隨時查看每個節點的安裝進度及日志

全部安裝成功界面如下

4.2.10安裝完成


3、選擇服務安裝在那台主機上


4、按照提示操作,最后顯示如下表示HA安裝成功

5、Hbase高可用會顯示如下圖
參考資料:
http://blog.csdn.net/mawenwu1983/article/details/78983275

參考資料:
http://blog.csdn.net/mawenwu1983/article/details/78983275


