若是手工安裝Hadoop集羣,在管理和後繼部署中,愈來愈多的問題不斷出現,主要以下:html
Ambari 跟 Hadoop 等開源軟件同樣,也是 Apache Software Foundation 中的一個項目,而且是頂級項目.目前最新的發佈版本是 2.1.2.
就 Ambari 的做用來講,就是建立,管理,監視 Hadoop 的集羣,可是這裏的 Hadoop 是廣義,指的是 Hadoop 整個生態圈(例如 Hive,Hbase,Sqoop,Zookeeper 等),而並不只是特指 Hadoop.
用一句話來講,Ambari 就是爲了讓 Hadoop 以及相關的大數據軟件更容易使用的一個工具.
說到這裏,你們就應該明白什麼人最須要 Ambari 了.那些苦苦花費好幾天去安裝,調試 Hadoop 的初學者是最能體會到 Ambari 的方便之處的.
並且,Ambari 如今所支持的平臺組件也愈來愈多,例如流行的 Spark,Storm 等計算框架,以及資源調度平臺 YARN 等,咱們都能輕鬆地經過 Ambari 來進行部署.
Ambari 自身也是一個分佈式架構的軟件,主要由兩部分組成:Ambari Server 和 Ambari Agent.簡單來講,用戶經過 Ambari Server 通知 Ambari Agent 安裝對應的軟件;
Agent 會定時地發送各個機器每一個軟件模塊的狀態給 Ambari Server,最終這些狀態信息會呈如今 Ambari 的 GUI,方便用戶瞭解到集羣的各類狀態,並進行相應的維護.java
生產中的hadoop集羣機器都不少,並且基本都不容許鏈接公網,爲方便快速部署,很是有必要創建一個本地Repository,使Ambari在離線環境中安裝Hadoop集羣!node
192.168.68.17 T1.youyuan.cn
#Ambari Server,namenode1,resourcemanagerlinux
192.168.68.18 T2.youyuan.cn
#Ambari Agent,namenode2,journalnode1,datanode1,nodemanager1web
192.168.68.20 T3.youyuan.cn
#Ambari Agent,journalnode2,datanode2,nodemanager2sql
192.168.68.21 T4.youyuan.cn
#Ambari Agent,journalnode3,datanode3,nodemanager3數據庫
須要openssl的1.0以上版本!vim
yum install openssl 或者 yum upgrade openssl
建議安裝Sun的JDK1.7版本! 安裝完畢並配置java環境變量,在/etc/profile末尾添加以下代碼:
export JAVA_HOME=/usr/java/default
export PATH=$JAVA_HOME/bin:$PATH
保存退出便可,而後執行source /etc/profile
生效.在命令行執行java -version 以下表明JAVA安裝成功.centos
須要配置各個節點的免密碼登陸!
首先在本身機器上使用ssh-keygen -t rsa
會要求輸入密碼(必須爲空),回車幾回,而後會在HOME目錄下生成.ssh文件夾,
裏面有私鑰和公鑰,公鑰爲~/.ssh/id_rsa.pub
,私鑰爲~/.ssh/id_rsa
.
配置本地的免登陸 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
如今你須要將你的公鑰拷貝到服務器上,若是你的系統有ssh-copy-id命令,拷貝會很簡單:ssh-copy-id 用戶名@服務器名
, 不然,你須要手動將你的私鑰拷貝到服務器上的~/.ssh/authorized_keys文件中!scp ~/.ssh/authorized_keys T1.youyuan.cn:/root/.ssh/
bash
集羣的時鐘要保證基本的一致.稍有不一致是能夠容忍的,可是很大的不一致會 形成奇怪的行爲. 運行 NTP 或者其餘什麼東西來同步你的時間.
若是你查詢的時候或者是遇到奇怪的故障,能夠檢查一下系統時間是否正確!
echo "server 192.168.0.2" >> /etc/ntp.conf chkconfig ntpd on service ntpd restart ntpq -p
Hdaoop會在同一時間使用不少的文件句柄.大多數linux系統使用的默認值1024是不能知足的,修改/etc/security/limits.conf
文件爲:
* soft nproc 16384 * hard nproc 16384 * soft nofile 65536 * hard nofile 65536
etc/hosts
文件 在文件最後添加:192.168.68.17 T1.youyuan.cn 192.168.68.18 T2.youyuan.cn 192.168.68.20 T3.youyuan.cn 192.168.68.21 T4.youyuan.cn
pkill -9 packagekitd vim /etc/yum/pluginconf.d/refresh-packagekit.conf
將內容改成enabled=0
在T1上操做
yum install yum-utils createrepo yum-plugin-priorities yum install httpd
編輯/etc/yum/pluginconf.d/priorities.conf
,修改成以下:
[main] enabled=1 gpgcheck=0
設置httpd:
chkconfig httpd on service httpd start
採用P2P下載工具(如迅雷等)下載上述主要資源的完整包,再上傳到本地源服務器進行部署.
CenOS最新鏡像下載點:http://isoredirect.centos.org/centos/6/isos/x86_64/
下載後掛載,並拷貝全部內容到/var/www/html/centos6
:
mount -o loop /data/install/CentOS-6.7-x86_64-bin-DVD/CentOS-6.7-x86_64-bin-DVD1.iso /media cp -r /media /var/www/html/centos6 umount /media
下載拷貝HDP-2.3.2.0和HDP-UTILS-1.1.0.20並解壓到/var/www/html/hdp
:
cd /data/temp wget -O HDP-2.3.2.0-centos6-rpm.tar.gz http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.3.2.0/HDP-2.3.2.0-centos6-rpm.tar.gz wget -O HDP-UTILS-1.1.0.20-centos6.tar.gz http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6/HDP-UTILS-1.1.0.20-centos6.tar.gz mkdir -p /var/www/html/hdp tar xf HDP-2.3.2.0-centos6-rpm.tar.gz -C /var/www/html/hdp tar xf HDP-UTILS-1.1.0.20-centos6.tar.gz -C /var/www/html/hdp
下載拷貝Ambari-2.1.2並解壓到/var/www/html/ambari
wget -O ambari-2.1.2-centos6.tar.gz http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.1.2/ambari-2.1.2-centos6.tar.gz mkdir -p /var/www/html/ambari tar xf ambari-2.1.2-centos6.tar.gz -C /var/www/html/ambari
完成後結構以下:
[root@Ambari ~]#cd /var/www/html/ [root@yum html]#tree -L 2 . ├── ambari │ └── ambari-2.1.2 ├── centos6 │ ├── CentOS_BuildTag │ ├── EFI │ ├── EULA │ ├── GPL │ ├── images │ ├── isolinux │ ├── Packages │ ├── RELEASE-NOTES-en-US.html │ ├── repodata │ ├── RPM-GPG-KEY-CentOS-6 │ ├── RPM-GPG-KEY-CentOS-Debug-6 │ ├── RPM-GPG-KEY-CentOS-Security-6 │ ├── RPM-GPG-KEY-CentOS-Testing-6 │ └── TRANS.TBL └── hdp ├── HDP └── HDP-UTILS-1.1.0.20 11 directories, 9 files
建立完成後,就能夠經過web路徑訪問測試了(路徑可能不一樣):http://T1.youyuan.cn/ambari/ambari-2.1.2/centos6/
,輸出:
Index of /ambari/ambari-2.1.2/centos6 [ICO] Name Last modified Size Description [DIR] Parent Directory - [DIR] RPM-GPG-KEY/ 03-Oct-2015 22:48 - [DIR] ambari/ 03-Oct-2015 22:48 - [ ] build.id 03-Oct-2015 22:48 566 [TXT] build_metadata.txt 03-Oct-2015 22:48 196 [TXT] changelog.txt 03-Oct-2015 22:48 0 [DIR] repodata/ 03-Oct-2015 22:48 - Apache/2.2.15 (CentOS) Server at t1.youyuan.cn Port 80
在各個節點上都要操做!把原來的repo文件屏蔽掉
cd /etc/yum.repos.d/ rename .repo .repoBAK *.repo #恢復指令 #cd /etc/yum.repos.d/ #rename .repoBAK .repo *.repoBAK
新建CentOS-Media.repo
配置文件vi /etc/yum.repos.d/CentOS-Media.repo
: 文件內容以下:
[CentOS6-Media] name=CentOS6-Media baseurl=http://T1.youyuan.cn/centos6 gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 [Ambari-2.1.2] name=Ambari-2.1.2 baseurl=http://T1.youyuan.cn/ambari/ambari-2.1.2/centos6/ gpgcheck=0 enabled=1 [HDP-2.3.2.0] name=HDP-2.3.2.0 baseurl=http://T1.youyuan.cn/hdp/HDP/centos6/2.x/updates/2.3.2.0 gpgcheck=0 enabled=1 [HDP-UTILS-1.1.0.20] name=HDP-UTILS-1.1.0.20 baseurl=http://T1.youyuan.cn/hdp/HDP-UTILS-1.1.0.20/repos/centos6 gpgcheck=0 enabled=1
新建ambari.repo
配置文件vi /etc/yum.repos.d/ambari.repo
: 文件內容以下:
[Ambari-2.1.2] name=Ambari-2.1.2 baseurl=http://T1.youyuan.cn/ambari/ambari-2.1.2/centos6/ gpgcheck=0 enabled=1
執行yum repolist
,
已加載插件:fastestmirror, priorities, security Loading mirror speeds from cached hostfile 倉庫標識 倉庫名稱 狀態 Ambari-2.1.2 Ambari-2.1.2 6 CentOS6-Media CentOS6-Media 6,575 HDP-2.3.2.0 HDP-2.3.2.0 175 HDP-UTILS-1.1.0.20 HDP-UTILS-1.1.0.20 42 repolist: 6,798
若是有向上面輸出的話,就能夠開始安裝了!
yum install ambari-server
等待安裝完成!
##指定JAVA_HOME ambari-server setup -j /usr/java/default ##不指定JAVA_HOME執行 ambari-server setup
選擇n會按默認配置
數據庫類型:postgresql
數據庫:ambari
用戶名:ambari
密碼:bigdata
等待安裝完成
##啓動: ambari-server start ##查看: ps -ef | grep Ambari ##中止: ambari-server stop ##幫助 ambari-server help
而後訪問:http://T1.youyuan.cn:8080
不出意外的話就安裝完成了
用戶名/密碼:admin/admin
在Select Stack
頁面,打開Advanced Repository Options
,要只選擇redhat6
,而且把Repository
改爲
http://T1.youyuan.cn/hdp/HDP/centos6/2.x/updates/2.3.2.0 http://T1.youyuan.cn/hdp/HDP-UTILS-1.1.0.20/repos/centos6
在網絡環境很差的地方或者sshd的端口不是標準的22時,能夠在每一個agent節點上先手工安裝AMBARI-AGENT
yum install ambari-agent
/usr/lib/hadoop /usr/lib/hbase /usr/lib/zookeeper /usr/lib/hcatalog /usr/lib/hive
/var/log/hadoop /var/log/hbase
/etc/hadoop /etc/hbase /etc/hive
/hadoop/hdfs
hoastname.domain
,如T1.youyuan.cn
/etc/ambari-agent/conf/ambari-agent.ini
,如修改過主機hostnameambari-server reset
後 ambari-setup