零基礎配置Hadoop集群——Ambari安裝及配置詳解


1. 准備工作

1.1. 系統環境

主機列表:

IP地址 HostName 描述
192.168.610.153 ambari.server Ambari服務器
192.168.10.152  hadoop.namenode Hadoop NameNode服務器
192.168.10.151 hadoop.datanodeone Hadoop DataNode服務器
192.168.10.147  hadoop.datanodetwo Hadoop DataNode服務器

操作系統:

  CentOS 7 Minimal版

登錄用戶

  root

環境說明:

  本文中所用的安裝方式為yum在線安裝,所有機器需可以訪問外網。

  CentOS純凈版初始狀態網卡為禁用狀態,系統安裝完成后需要執行如下操作:

  1)進入/etc/sysconfig/network-scripts/目錄,找到ifcfg-e……名稱的文件,如ifcfg-ens33

  2)vi編輯改文件將ONBOOT設為yes,並增加NM_CONTROLLED,DNS項,具體代碼如下:

vi /etc/sysconfig/network-scripts/ifcfg-ens33

ONBOOT=yes
NM_CONTROLLED=no
DNS1=8.8.8.8    
DNS2=4.2.2.2  

  3)保存退出后,重新啟動網絡連接

service network restart

  4)  ip addr命令查看本機IP地址,或使用ping www.baidu.com命令查看是否可以訪問外網。

  5)配置完成后,可使用SSH工具從其他電腦登錄此虛擬機操作,推薦使用XShell

1.2. 修改機器名,配置Hosts文件

   為每個主機修改Hostname,其名稱參考1.1中的表格,如ambari.server

hostnamectl set-hostname ambari.server

  編輯每台機器的/etc/hosts文件,在原有文件末尾加入以下信息

192.168.10.153    ambari.server
192.168.10.152    hadoop.namenode
192.168.10.151    hadoop.datanodeone
192.168.10.147    hadoop.datanodetwo

  修改完成后使用reboot命令重啟每台機器

1.3. 開啟ntp服務

  為每台設備安裝、開啟npt服務,並設置為開機啟動

  1)安裝ntp

yum install -y ntp

  2)設置ntp開機啟動

systemctl enable ntpd

  3)啟動ntp服務

systemctl start ntpd

  4)所有機器設置時間同步

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate us.pool.ntp.org

1.4. 關閉Selinux及防火牆

  為每台機器執行如下操作:

  1)vi /etc/sysconfig/selinux並添加如下代碼

# vi /etc/sysconfig/selinux
selinux
=disalbed

  2) 關閉防火牆

systemctl stop firewalld
systemctl disable firewalld

1.5. 配置SSH免密登錄

  1) 在ambari.server執行如下操作生成密鑰

ssh-keygen -t rsa

  所有選項均按回車鍵,直到生成密鑰。

  密鑰文件存放於~/.ssh目錄下

    私鑰:id_rsa
    公鑰:id_rsa.pub
  2) 在除ambari.server以外的其他機器上創建~/.ssh目錄
mkdir ~/.ssh

  3) 在ambari.server上執行如下命令,發送密鑰至其他服務器

scp ~/.ssh/id_rsa.pub hadoop.namenode:/root/.ssh/authorized_keys_from_ambari
scp ~/.ssh/id_rsa.pub hadoop.datanodeone:/root/.ssh/authorized_keys_from_ambari
scp ~/.ssh/id_rsa.pub hadoop.datanodetwo:/root/.ssh/authorized_keys_from_ambari

  4) 在除ambari.server以外的其他機器上執行如下命令,合並公鑰:

cd ~/.ssh
cat authorized_keys_from_ambari >> authorized_keys

  5) 在所有機器上執行如下命令

chmod 700 ~/.ssh
chmod 600 ~/.ssh/*

1.6 安裝JDK

  當前Ambari推薦使用openjdk1.8.0,需要在每台機器上執行相同操作,命令如下:

  1)安裝JDK

yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel

  2)進入安裝目錄/usr/lib/jvm/找到java-1.8.0-openjdk-1.8.0.……的文件夾並將$JAVA_HOME這是為該目錄,如java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el7_6.x86_64/

  3) 使用java -vsersion命令,驗證JDK是否安裝配置成功

1.7 設置UTF8字符集

在每個機器執行如下指令:

cat << EOF > /etc/locale.conf
LANG="en_US.UTF-8"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:zh_CN.gb18030:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
EOF

2. 配置Ambari本地下載站

  下列操作只在ambari.server機器上執行

2.1. 下載本地庫文件

2.1.1. 下載准備

  純凈的CentOS中未安裝wget,需要安裝wget包

yum install -y wget

  本文中對應的Ambari版本為2.7.3,若需要其他版本,請在https://docs.hortonworks.com/中查找

 

 

 

 

 

2.1.2.下載本地庫

  該操作耗時較長,可以選擇在服務器上執行

  執行如下代碼,下載本地庫:

wget http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.7.3.0/ambari-2.7.3.0-centos7.tar.gz
wget http://public-repo-1.hortonworks.com/HDP/centos7/3.x/updates/3.0.1.0/HDP-3.0.1.0-centos7-rpm.tar.gz
wget http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.22/repos/centos7/HDP-UTILS-1.1.0.22-centos7.tar.gz
wget http://public-repo-1.hortonworks.com/HDP-GPL/centos7/3.x/updates/3.1.0.0/HDP-GPL-3.1.0.0-centos7-gpl.tar.gz

2.2. 配置本地下載站

  1)安裝httpd服務

yum install -y httpd

  2)創建站點目錄,將本地庫壓縮包解壓至對應目錄

mkdir /var/www/html/ambari
mkdir /var/www/html/ambari/HDP-UTILS
mkdir /var/www/html/ambari/HDP-GPL

tar -xvf ambari-2.7.3.0-centos7.tar.gz -C /var/www/html/ambari/
tar -xvf HDP-3.0.1.0-centos7-rpm.tar.gz -C /var/www/html/ambari/
tar -xvf HDP-UTILS-1.1.0.22-centos7.tar.gz -C /var/www/html/ambari/HDP-UTILS
tar -xvf HDP-GPL-3.1.0.0-centos7-gpl.tar.gz -C /var/www/html/ambari/HDP-GPL

  3)啟動httpd服務

systemctl start httpd

  4)打開瀏覽器,訪問本地下載站http://192.168.10.153/ambari/,若出現以下界面則配置成功

2.3. 配置YUM源

  1)在ambari.server上執行:
yum install -y yum-plugin-priorities
  2)修改Yum安裝源的校驗
vi /etc/yum/pluginconf.d/priorities.conf

  設置為以下內容

[main]
enabled=1
gpgcheck=0

  3)配置repo文件

  該步驟中baseurl和gpgkey地址需要和上一步對應

cat << EOF > /etc/yum.repos.d/ambari.repo
#VERSION_NUMBER=2.7.3.0-139
[ambari-2.7.3.0]
name=ambari Version - ambari-2.7.3.0
baseurl=http://192.168.10.153/ambari/ambari/centos7/2.7.3.0-139/
gpgcheck=1
gpgkey=http://192.168.10.153/ambari/ambari/centos7/2.7.3.0-139/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
EOF

cat << EOF > /etc/yum.repos.d/hdp.repo
#VERSION_NUMBER=3.0.1.0-187
[HDP-3.0.1.0-187]
name=HDP Version - HDP-3.0.1.0-187
baseurl=http://192.168.10.153/ambari/HDP/centos7/3.0.1.0-187/
gpgcheck=1
gpgkey=http://192.168.10.153/ambari/HDP/centos7/3.0.1.0-187/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.10.153/ambari/HDP-UTILS/HDP-UTILS/centos7/1.1.0.22/
gpgcheck=1
gpgkey=http://192.168.10.153/ambari/HDP-UTILS/HDP-UTILS/centos7/1.1.0.22/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
EOF

  4)更新本地資源池

yum clean list
yum update list
yum makecache

  更新完成后查看資源池

yum repolist

  顯示如下內容則配置成功

已加載插件:fastestmirror, priorities
Loading mirror speeds from cached hostfile
 * base: mirrors.tuna.tsinghua.edu.cn
 * extras: mirrors.163.com
 * updates: mirrors.163.com
4 packages excluded due to repository priority protections
源標識                                                           源名稱                                                                                狀態
HDP-3.0.1.0-187                                                  HDP Version - HDP-3.0.1.0-187                                                              197
HDP-UTILS-1.1.0.21                                               HDP-UTILS Version - HDP-UTILS-1.1.0.21                                                      16
ambari-2.7.3.0                                                   ambari Version - ambari-2.7.3.0                                                             13
base/7/x86_64                                                    CentOS-7 - Base                                                                       10,015+4
extras/7/x86_64                                                  CentOS-7 - Extras                                                                          419
updates/7/x86_64                                                 CentOS-7 - Updates                                                                       2,137
repolist: 12,797

 

 3. 安裝啟動Ambari

   該項中的所有操作均在ambari.server上執行

3.1. 安裝Ambari-Server

  本次安裝采用YUM遠程安裝,數據庫采用默認數據庫。安裝命令如下。

yum install -y ambari-server

3.2. 配置Ambari-Server

  配置命令如下:

ambari-server setup

  配置命令中需要的各個選項如下,注意其中jdk選擇自定義,$JAVA_HOME變量與上文1.6中保持一致:

 

Using python  /usr/bin/python
Setup ambari-server
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)? 
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] Custom JDK
==============================================================================
Enter choice (1): 2
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/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/
Validating JDK on Ambari Server...done.
Check JDK version for Ambari Server...
JDK version found: 8
Minimum JDK version is 8 for Ambari. Skipping to setup different JDK for Ambari Server.
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)? 
Configuring database...
Default properties detected. Using built-in database.
Configuring ambari database...
Checking PostgreSQL...
Running initdb: This may take up to a minute.
Initializing database ... OK


About to start PostgreSQL
Configuring local database...
Configuring PostgreSQL...
Restarting PostgreSQL
Creating schema and user...
done.
Creating tables...
done.
Extracting system views...
ambari-admin-2.7.3.0.139.jar
....
Ambari repo file doesn't contain latest json url, skipping repoinfos modification
Adjusting ambari-server permissions and ownership...
Ambari Server 'setup' completed successfully.

3.3 啟動Ambari-Server

ambari-server start

  啟動成功后在瀏覽器中輸入地址:

  http://192.168.141.159:8080/#/login

  若出現如下界面則配置成功

  默認登錄名密碼均為admin

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM