通過ambari安裝hadoop叢集(一)
之前一直用的開源社群的版本,最近突然想到找一個好的商業版本用著,然後一直使用,然後就定上了hdp和cdh,都裝上去了,但是cdh使用難度太大了,和開源版本的差距比較大,api不會使用,需要學它的cdk。hdp和開源版差不多,也是經過了優化了的,也是開源的,有一個管理介面,比社群版要好,這個安裝過程廢了很大的勁兒才搞成功的,發出來跟大家分享一下。
hdp的安裝摺騰了好久,它的下載地址網址不像CDH那麼難找,不過它的設定相對CDH簡單很多,一鍵式安裝,而且都是免費的軟體。
1.首先要下載它們的安裝包,別嘗試著在yum來下,特別慢,最好的方式是通過建立本地資源的方式來安裝。
http://public-repo-1.hortonworks.com/HDP/centos6/HDP-1.3.0.0-centos6-rpm.tar.gz
http://public-repo-1.hortonworks.com/ambari/centos6/ambari-1.2.5.17-centos6.tar.gz
2.建立本地資源庫 在var/www/html下建立一個hdp目錄,如果沒有的請先安裝httpd yum install httpd,把下到的三個檔案解壓完畢之後,複製到hdp目錄下,然後重啟httpd服務,用下面三個repo檔案裡面的baseurl地址來測試一下是否可以通過網址訪問了,然後準備三個檔案,hdp.repo,ambari.repo,hdp-util.repo 不要按照官方說的那個做,那個是會報錯的,我把我的放出來,大家自己照著弄,修改一下地址就行,然後把這三個檔案複製叢集中的所有機器的/etc/yum.repos.d/目錄下
下面我發一下他們的內容
hdp.repo
[HDP-1.3.0.0] name=Hortonworks Data Platform Version - HDP-1.3.0.0 baseurl=http://192.168.1.133/hdp/HDP/centos6/1.x/GA/1.3.0.0 gpgcheck=1 gpgkey=http://public-repo-1.hortonworks.com/HDP/centos6/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins enabled=1 priority=1 [HDP-UTILS-1.1.0.16] name=Hortonworks Data Platform Utils Version - HDP-UTILS-1.1.0.16 baseurl=http://192.168.1.133/hdp/HDP-UTILS-1.1.0.16/repos/centos6 gpgcheck=1 gpgkey=http://public-repo-1.hortonworks.com/HDP/centos6/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins enabled=1 priority=1
ambari.repo
[HDP-UTILS-1.1.0.16]
name=Hortonworks Data Platform Utils Version - HDP-UTILS-1.1.0.16
baseurl=http://192.168.1.133/hdp/HDP-UTILS-1.1.0.16/repos/centos6
gpgcheck=0
gpgkey=http://public-repo-1.hortonworks.com/ambari/centos6/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
[ambari-1.2.5.17]
name=ambari-1.2.5.17
baseurl=http://192.168.1.133/hdp/ambari/centos6/1.x/updates/1.2.5.17
gpgcheck=1
gpgkey=http://public-repo-1.hortonworks.com/ambari/centos6/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1
hdp-util.repo
[HDP-UTILS-1.1.0.16]
name=Hortonworks Data Platform Version - HDP-UTILS-1.1.0.16
baseurl= http://192.168.1.133/hdp/HDP-UTILS-1.1.0.16/repos/centos6
gpgcheck=1
enabled=1
priority=1
3.安裝之前的準備工作
(1)設定ssh自動登陸,這個參照我寫的另外一篇ssh自動登陸的那個去做就行,網址是http://www.cnblogs.com/cenyuhai/p/3280668.html
(2)設定ntpd自動啟動,所有機器
chkconfig --level 5 ntpd on
service ntpd start
(3)禁用selinux,所有機器
vi /etc/sysconfig/selinux 設定selinux=disabled
(4)設定時間同步,所有機器
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #設定時區為北京時間,這裡為上海,因為centos裡面只有上海。。。
ntpdate us.pool.ntp.org #時間同步
沒有安裝ntpdate的可以yum一下 yum install -y ntpdate
加入定時計劃任務,每隔10分鐘同步一下時鐘
crontab -e
把下面的內容貼上進去儲存即可
0-59/10 * * * * /usr/sbin/ntpdate us.pool.ntp.org | logger -t NTP
(5)修改/etc/hosts檔案,所有機器,設定如下:
192.168.1.133 hadoop.Master
192.168.1.134 hadoop.SlaveT1
192.168.1.135 hadoop.SlaveT2
4.修改配置檔案,所有機器
yum install yum-plugin-priorities
vi /etc/yum/pluginconf.d/priorities.conf
#設定為以下內容
[main]
enabled=1
gpgcheck=0
5.安裝自定義的mysql服務
yum install -y mysql-server
安裝完成之後用root賬戶登陸,執行下列命令
create database hive ;
grant all on hive.* TO 'hive'@'%' IDENTIFIED BY 'hive';
create database oozie DEFAULT CHARACTER SET utf8;
grant all on oozie.* TO 'oozie'@'%' IDENTIFIED BY 'oozie';
如果mysql也裝在叢集中的某個機器上面,而且該服務也裝在這個臺機器上面。。比如我的hadoop.SlaveT1上面掛了hive服務,mysql也在它上面就會連線不上 還需要執行以下命令
grant all on hive.* TO 'hive'@'hadoop.SlaveT1' IDENTIFIED BY 'hive';
5.安裝ambari服務
yum install -y epel-release
yum install ambari-server
//自己下載jdk-6u31-linux-x64.bin,放在/var/lib/ambari-server/resources下面 ,就免得它自己下了,速度老慢了。。
ambari-server setup
我的ambari資料庫賬號密碼全是ambari
安裝完畢之後啟動ambari服務 ambari-server start
登陸ambari,賬號密碼都是admin http://localhost:8080 然後開始安裝,安裝過程當中一定要注意jdk的目錄是/usr/jdk64/1.6.0_31,安裝的時候它預設給出來的jdk的不對,裝到最後叢集也用不了。。
未完待續!