搭建平臺之前請查看Ambari,Hdp,Centos版本之間是否兼容
1.機器節點
192.168.12.21 hdp01.hadoop
192.168.12.22 hdp02.hadoop
192.168.12.23 hdp03.hadoop
2.環境預備工作
- CentOS 7.5(英文版最小化安裝+工具包)
- Jdk 1.8
- Ambari 2.6.2
- HDP 2.6.4
- Mysql 5.7
- HDP Utils 1.1.0.21
- Python 2.7.x
- ntp時間同步 (master時間同步定時任務:vi /etc/crontab
3.關閉防火牆(三臺)
- 臨時關閉:systemctl stop firewalld
- 防火牆開機關閉:systemctl disable firewalld
- 開機啓動:systemctl enable firewalld
- 查看狀態:systemctl status firewalld
4.關閉selinux(三臺)
- 永久關閉:編輯/etc/selinux/config
將文本中的SELINUX=enforcing,改爲SELINUX=disabled。然後重啓
- 即時有效:setenforce 0
5.修改hosts(三臺)
192.168.12.21 hdp01.hadoop
192.168.12.22 hdp02.hadoop
192.168.12.23 hdp03.hadoop
6.集羣間互信(三臺)
- ssh-keygen -t rsa # 一路回車 # 將公鑰添加到認證文件中
- cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
- chmod 600 authorized_keys
- 將三臺機器id_rsa.pub整合在authorized_keys中,然後分發到各節點
7.時間同步(三臺)
安裝ntp服務(所有機器)
yum -y install ntp
設置hdp1,hadoop爲主服務器,開啓nptd服務(主服務器)
vim /etc/ntp.conf
systemctl start ntpd.service #啓動服務
systemctl enable ntpd.service #開機自啓動
各子節點
crontab -e
0-59/10 * * * * /usr/sbin/ntpdate hdp01.hadoop
8.安裝httpd服務(主)
- yum -y install httpd
- service httpd restart 或 systemctl restart httpd
9.安裝jdk1.8(三臺)
壓縮包目錄:/usr/local/src
tar -zxvf jdk-8u172-linux-x64.tar.gz
編輯環境變量 vim /etc/profile
export JAVA_HOME=/usr/local/src/jdk1.8.0_172
export JRE_HOME=/usr/local/src/jdk1.8.0_172/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
使之生效 source /etc/profile
10.安裝mysql數據庫(任意節點)
先檢查本節點是否存在MySQLrpm -qa | grep mysql
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum update
yum install mysql-server
systemctl start mysqld
systemctl status mysqld
mysqladmin -u root password "root@1234";
行:create database ambari; (創建ambari數據庫)
執行:GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'localhost' IDENTIFIED BY 'ambari'; (創建ambari用戶)
執行:GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'%' IDENTIFIED BY 'ambari';
執行:create database hive; (創建hive數據庫)
執行:GRANT ALL PRIVILEGES ON *.* TO 'hive'@'localhost' IDENTIFIED BY 'hive'; (創建hive用戶)
執行:GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' IDENTIFIED BY 'hive';
執行:FLUSH PRIVILEGES; (刷新權限)
執行:quit;
update user set authentication_string=password("root@1234") where user="root"; //更新用戶密碼
set global validate_password_policy=0; //修改密碼策略,mysql5.7密碼特殊
set global validate_password_length=1;
alter user 'root'@'localhost' identified by 'root';
11.添加mysql驅動包
- mkdir -p /usr/share/java/
- 上傳驅動包:將mysql-connector-java-5.1.27.jar上傳到該目錄
- 修改jar包權限: chmod 777 mysql-connector-java-5.1.27.jar
- 修改包名:mv mysql-connector-java-5.1.27.jar mysql-connector-java.jar
12.安裝相應包
所有依賴的安裝包及下載地址可從下面的網址獲取:
- ambari 2.6.2:https://docs.cloudera.com/HDPDocuments/Ambari/Ambari-2.6.2.0/index.html
- hdp 2.6.4:https://docs.cloudera.com/HDPDocuments/HDP2/HDP-2.6.4/index.html
創建 mkdir -p /var/www/html/hdp
將其解壓到/var/www/html/hdp下然後驗證,打開瀏覽器http://192.168.12.21/hdp/
然後將Ambari.repo,hdp.repo拷貝至/etc/yum.repos.d下
編輯 Ambari.repo
編輯 hdp.repo
- 安裝生成repo工具 :yum -y install createrepo
- 清理緩存:yum clean all
- 建立緩存:yum makecache
13.安裝服務
1)通過yum安裝Ambari Server
yum install ambari-server
2)建立Ambari與MySQL驅動的連接
ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar
3)初始化Ambari Server
ambari-server setup
4) 初始化Ambari數據庫
進入mysql切換ambari庫,執行一下語句
source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
5)啓動Ambari
ambari-server start
6) 瀏覽器驗證
瀏覽器輸入:http://192.168.12.21:8080/#/login 用戶名密碼admin
14.安裝hdp
給集羣起名稱 cluster_1
選擇hdp版本,選擇本地倉庫,並刪除沒用os
然後配三臺機器hostname 主機註冊SSH方式,這需要提供ssh免密訪問所用私有證書(主節點);
確認機器 選擇服務 分配節點 三個agent 一個server 選擇服務,安裝服務,一步步按照要求做
最終完成頁面
=====================================================================
vim /etc/ambari-agent/conf/ambari-agent.ini
[security]
force_https_protocol=PROTOCOL_TLSv1_2