名稱html |
地址java |
操做系統node |
root密碼python |
Master1mysql |
10.1.0.30linux |
Centos 7.7sql |
|
Master2shell |
10.1.0.105數據庫 |
Centos 7.7vim |
|
Worker1 |
10.1.0.127 |
Centos 7.7 |
|
Worker2 |
10.1.0.106 |
Centos 7.7 |
|
Worker3 |
10.1.0.3 |
Centos 7.7 |
|
系統要求 |
Centos 7.3以上 64bit 最小化安裝 |
||
瀏覽器 |
Google Chrome |
ssh-keygen cat .ssh/*.pub > .ssh/authorized_keys scp -r .ssh root@10.1.0.30:/root/ scp -r .ssh root@10.1.0.105:/root/ |
在master 機器上執行以下命令
vi /etc/hosts 192.168.217.130 hdp-0001 192.168.217.131 hdp-0002 192.168.217.132 hdp-0003 scp /etc/hosts root@hdp-0002:/etc/hosts scp /etc/hosts root@hdp-0003:/etc/hosts |
systemctl stop firewalld systemctl disable firewalld |
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum makecache |
yum install -y ntp systemctl enable ntpd systemctl start ntpd |
vi /etc/sysconfig/selinux #修改如下內容 SELINUX=disabled |
mysql服務安裝在master節點,也可選擇其餘節點或機器。
具體步驟以下:
8.1數據庫安裝
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm yum install mysql-server [root@master ~]# service mysqld start [root@master ~]# grep "password" /var/log/mysqld.log [root@master ~]# mysql -u root -p Enter password: mysql>set global validate_password_policy=LOW; mysql> set password = password("mysql@Edmp.com"); mysql> grant all privileges on *.* to root@"%" identified by " mysql@Edmp.com" ; mysql> flush privileges; |
8.2安裝成功後,建立ambari數據庫及用戶
#進入mysql shell mysql -uroot –p #建立ambari用戶 create database ambari character set utf8 ; CREATE USER 'ambari'@'%'IDENTIFIED BY 'ambari123'; GRANT ALL PRIVILEGES ON *.* TO 'ambari'@'%'; FLUSH PRIVILEGES; #建立hive用戶 create database hive character set utf8 ; CREATE USER 'hive'@'%'IDENTIFIED BY 'hive123'; GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%'; FLUSH PRIVILEGES; #建立oozie用戶 create database oozie character set utf8 ; CREATE USER 'oozie'@'%'IDENTIFIED BY 'oozie123'; GRANT ALL PRIVILEGES ON *.* TO 'oozie'@'%'; FLUSH PRIVILEGES; |
mkdir -p /opt/java tar -zxvf jdk-8u181-linux-x64.tar.gz -C /opt/java/ vi /etc/profile export JAVA_HOME=/opt/java/jdk1.8.0_181 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$PATH:$JAVA_HOME/bin |
-///.8.0_181/-:///scproptjavajdk1root@hdcdata2optjava
-///.8.0_181/-:///scproptjavajdk1root@hdcdata3optjava
//-:/etc/scpetcprofile root@hdcdata2
//-:/etc/scpetcprofile root@hdcdata3
//sourceetcprofile
yum install yum-utils createrepo yum install httpd service httpd start |
磁盤文件系統可用ext4或者xfs,掛載時需添加noatime選項
mkdir /data vi /etc/fstab /dev/vdb /data xfs defaults,noatime 0 0 mkfs -t xfs /dev/vdb mount /dev/vdb /data |
操做系統 |
版本 |
庫名稱 |
下載連接 |
CentOS 7 |
2.6.5.0 |
HDP |
http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.6.5.0/HDP-2.6.5.0-centos7-rpm.tar.gz |
Md5: 1775e80b7fcc16ff1f908f3d81693854 |
|||
HDP-UTILS |
http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.22/repos/centos7/HDP-UTILS-1.1.0.22-centos7.tar.gz |
||
Md5: ebf4c5519640b6a62a3def461ea66f13 |
|||
HDP-GPL |
http://public-repo-1.hortonworks.com/HDP-GPL/centos7/2.x/updates/2.6.5.0/HDP-GPL-2.6.5.0-centos7-gpl.tar.gz |
||
|
|
Md5: c1e0b4b6517142bf61f7bbdef967558f |
|
CentOS 7 |
2.6.2.0 |
Ambari |
http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.6.2.0/ambari-2.6.2.0-centos7.tar.gz |
Md5: 6d87af3788b8fdf4a6abaa759b1dc84e |
|||
|
|
Jdk |
jdk-8u281-linux-x64.tar.gz |
Md5: e85f591a370400c99fc314e5c43015a7 |
下載後把鏡像包解壓縮,而且移動到/var/www/html/hdp 目錄下;
mkdir /var/www/html/ambari tar -zxvf HDP-UTILS-1.1.0.22-centos7.tar.gz -C /var/www/html/ambari/ tar -zxvf ambari-2.6.5.0-centos7.tar.gz -C /var/www/html/ambari/ tar -zxvf HDP-2.6.5.0-centos7-rpm.tar.gz -C /var/www/html/ambari/ tar -zxvf HDP-GPL-2.6.5.0-centos7-gpl.tar.gz -C /var/www/html/ambari/ |
wget -nv http://public-repo-1.hortonworks.com/HDP/centos7/2.x/ updates/2.6.0.3/hdp.repo -O /etc/yum.repos.d/hdp.repo |
#VERSION_NUMBER=2.5.0.3-7 [ambari-2.5.0.3] name=ambari Version - ambari-2.5.0.3 baseurl=http://10.1.0.30/ambari/ambari/centos7 gpgcheck=0 gpgkey=http://10.1.0.30/ambari/ambari/centos7/2.x/updates/2.5.0.3/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins enabled=1 priority=1 |
yum install ambari-server |
yum install –y mysql-connector-java.noarch
找到/usr/share/java/mysql-connector-java.jar
將mysql-connector-java.jar複製到/var/lib/ambari-server/resources目錄下
cp mysql-connector-java-5.1.40.jar /var/lib/ambari-server/resources/mysql-jdbc-driver.jar |
#設置mysql驅動 ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar ambari-server setup |
[root@master yum.repos.d]# ambari-server setup Checking SELinux... SELinux status is 'enabled' SELinux mode is 'permissive' WARNING: SELinux is set to 'permissive' mode and temporarily disabled. OK to continue [y/n] (y)? y Customize user account for ambari-server daemon [y/n] (n)? 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): 1 ………… Successfully downloaded JDK distribution to /var/lib/ambari-server/resources/jdk-8u112-linux-x64.tar.gz Installing JDK to /usr/jdk64/ Successfully installed JDK to /usr/jdk64/ Successfully downloaded JCE Policy archive to /var/lib/ambari-server/resources/jce_policy-8.zip Installing JCE policy... Checking GPL software agreement... GPL License for LZO: https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html Enable Ambari Server to download and install GPL Licensed LZO packages [y/n] (n)? Completing setup... Configuring database... Enter advanced database configuration [y/n] (n)? y Configuring database... ============================================================================== Choose one of the following options: [1] - PostgreSQL (Embedded) [2] - Oracle [3] - MySQL / MariaDB [4] - PostgreSQL [5] - Microsoft SQL Server (Tech Preview) [6] - SQL Anywhere [7] - BDB ============================================================================== Enter choice (1): 3 Hostname (localhost): master.bigdata.com Port (3306): Database name (ambari): Username (ambari): Enter Database Password (bigdata): BigData123_ Configuring ambari database... Configuring remote database connection properties... WARNING: Before starting Ambari Server, you must run the following DDL against the database to create the schema: /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql (此處轉下表的數據庫操做) Proceed with configuring remote database connection properties [y/n] (y)? y Extracting system views... ambari-admin-2.6.1.5.3.jar Ambari Server 'setup' completed successfully. |
說明: |
數據庫操做
[root@master ~]# mysql -u root -p Enter password: mysql> use ambari; Database changed mysql> source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql Query OK, 0 rows affected (0.00 sec) |
啓動:ambari-server start
中止:ambari-server stop
啓動成功後能夠經過瀏覽器訪問管理界面。
URL: 192.168.217.130:8080(IP爲master節點IP)
用戶名:admin 密碼:admin
1.在瀏覽器打開http://192.168.217.130:8080
2.輸入用戶名密碼 默認admin/admin
建議設置爲EDMP,標信數據管理平臺簡稱
點擊HDP-2.6,選擇上傳文件
在HDP/centos7/2.6.4.0-91/HDP-2.6.4.0-91.xml文件基礎上,修改baseurl,修改完後以下:
選擇增長版本、上傳修改後的版本文件。
增長版本完成後,直接下一步
ERROR 2021-02-20 00:17:28,352 NetUtil.py:96 - EOF occurred in violation of protocol (_ssl.c:618)
ERROR 2021-02-20 00:17:28,352 NetUtil.py:97 - SSLError: Failed to connect. Please check openssl library versions.
這一步會出現一些問題,具體解決方案在第六部分安裝過程當中出現的問題中查找
選擇安裝組件,(最小化安裝HDFS+YARN+MAPREDUCE2+Ambari Metrics+SmartSense+ZooKeeper+Hbase)沒必要要的組件能夠暫時不安裝節省安裝時間,後續能夠再添加安裝組件
一般數據目錄修改到/data/目錄下,
有紅色信息提示的組件表示要輸入相應的帳號密碼。
如下示例,可根據本身的實際狀況配置。
修改3個數據盤路徑
修改元數據庫類型及地址,填寫帳號密碼hive/hive123
填寫元數據庫帳號密碼,修改訪問地址oozie/oozie123,路徑參考hive
修改數據存放路徑
設置帳號密碼,默認爲admin/admin
附:暫時修改瞭如下屬性,具體配置信息可根據實際狀況後續相應修改
屬性 |
修改值 |
HDFS |
|
NameNode |
/data/hadoop/hdfs/namenode |
DataNode |
/data/hadoop/hdfs/data |
SecondaryNameNode Checkpoint directories |
/data/hadoop/hdfs/namesecondary |
Hadoop PID Dir Prefix |
/data/var/run/hadoop |
Hadoop Log Dir Prefix |
/data/var/log/hadoop |
dfs.journalnode.edits.dir |
/data/hadoop/hdfs/journalnode |
Yarn |
|
yarn.nodemanager.local-dirs |
/data/hadoop/yarn/local |
yarn.nodemanager.log-dirs |
/data/hadoop/yarn/log |
yarn.timeline-service.leveldb-state-store.path |
/data/hadoop/yarn/timeline |
yarn.timeline-service.leveldb-timeline-store.path |
/data/hadoop/yarn/timeline |
YARN Log Dir Prefix |
/data/var/log/hadoop-yarn |
YARN PID Dir Prefix |
/data/var/run/hadoop-yarn |
Mapreduce |
|
Mapreduce Log Dir Prefix |
/data/var/log/hadoop-mapreduce |
Mapreduce PID Dir Prefix |
/data/var/run/hadoop-mapreduce |
mapreduce.jobhistory.recovery.store.leveldb.path |
/data/hadoop/mapreduce/jhs |
Hive |
|
Hive Log Dir |
/data/var/log/hive |
Hive PID Dir |
/data/var/run/hive |
HBase |
|
HBase Log Dir Prefix |
/data/var/log/hbase |
HBase PID Dir |
/data/var/run/hbase |
Oozie |
|
Oozie Data Dir |
/data/hadoop/oozie/data |
Oozie Log Dir |
/data/var/log/oozie |
Oozie PID Dir |
/data/var/run/oozie |
zookeeper |
|
ZooKeeper directory |
/data/hadoop/zookeeper |
ZooKeeper Log Dir |
/data/var/log/zookeeper |
ZooKeeper PID Dir |
/data/var/run/zookeeper |
ambari-infra |
|
Metrics Collector log dir |
/data/var/log/ambari-metrics-collector |
Metrics Collector pid dir |
/data/var/run/ambari-metrics-collector |
Metrics Monitor log dir |
/data/var/log/ambari-metrics-monitor |
Metrics Monitor pid dir |
/data/var/run/ambari-metrics-monitor |
Aggregator checkpoint directory |
/data/var/lib/ambari-metrics-collector/checkpoint |
Metrics Grafana data dir |
/data/var/lib/ambari-metrics-grafana |
Metrics Grafana log dir |
/data/var/log/ambari-metrics-grafana |
Metrics Grafana pid dir |
/data/var/run/ambari-metrics-grafana |
hbase_log_dir |
/data/var/log/ambari-metrics-collector |
hbase_pid_dir |
/data/var/run/ambari-metrics-collector/ |
hbase.tmp.dir |
/data/var/lib/ambari-metrics-collector/hbase-tmp |
ambari-infra |
|
Infra Solr Client log dir |
/data/var/log/ambari-infra-solr-client |
Infra Solr log dir |
/data/var/log/ambari-infra-solr |
Infra Solr pid dir |
/data/var/run/ambari-infra-solr |
spark |
|
livy2_log_dir |
/data/var/log/livy2 |
livy2_pid_dir |
/data/var/run/livy2 |
spark_log_dir |
/data/var/log/spark2 |
spark_pid_dir |
/data/var/run/spark2 |
安裝過程當中排查問題具體思路:2個路徑,第1個爲安裝頁面message目錄,點擊藍色進度信息跳轉查看;第二個ambari-server後臺日誌,具體路徑爲
1)UID錯誤問題
具體報錯信息以下
# 修改文件:/var/lib/ambari-server/resources/stacks/HDP/2.0.6/hooks/before-ANY/files/changeToSecureUid.sh [root@manager ~]# vim /var/lib/ambari-server/resources/stacks/HDP/2.0.6/hooks/before-ANY/files/changeToSecureUid.sh function find_available_uid() { for ((i=8001; i<=9000; i++)) do grep -q $i /etc/passwd if [ "$?" -ne 0 ] then newUid=$i break fi done }
# 修改原來的 for ((i=1001; i<=2000; i++)) 爲 for ((i=8001; i<=9000; i++)) # 8001,9000能夠取值爲暫時未使用的UID,能夠使用id UID驗證UID是否被使用,找一段未使用的UID便可 |
修改完以後須要重啓ambari服務
|
2)8080端口報錯
報錯現象:
Ambari Agent host cannot reach Ambari Server 'localhost:8080'. |
錯誤緣由:
客戶端調用setupAgent.py函數, ambari-server所在IP傳參失敗,從而致使了問題的發生。
解決辦法:
找到文件:/usr/lib/ambari-server/lib/ambari_server/setupAgent.py
手動修改ambari-server hostname
160=[0] expected_hostnameonlyargs 161=[1] passPhraseonlyargs 162#hostname = onlyargs[2] 163="192.168.31.150" hostname 164=None projectVersion |
3)SSL HTTPS鏈接錯誤
註冊ambari-agents時failed
NetUtil.py:96 - EOF occurred in violation of protocol (_ssl.c:579)
SSLError: Failed to connect. Please check openssl library versions.
解決:以下第三個方案,/etc/ambari-agent/conf/ambari-agent.ini文件只有執行該步驟進行註冊才生成。修改後點擊「Retry Failed」按鈕,等待註冊成功進入下一步。
# 一、yum upgrade openssl 已經是最新本版,未解決 # 二、vi /etc/python/cert-verification.cfg 修改 verify=disable,未解決 []https #verify=platform_default =verifydisable # 三、最後解決方案 在ambari-agent的配置文件/etc/ambari-agent/conf/ambari-agent.ini 在[security]標籤下面增長一項 []security =force_https_protocolPROTOCOL_TLSv1_2 |