優秀博客
Ambari安裝前准備
(一)機器准備
192.168.80.144 ambari01 (部署Ambari-server和Mirror server) (分配1G,我這里只是體驗過程,當然你可以分配更多或更小)
192.168.80.145 ambari02 (部署Agent) (分配1G,我這里只是體驗過程,當然你可以分配更多或更小)
192.168.80.146 ambari03 (部署Agent) (分配1G,我這里只是體驗過程,當然你可以分配更多或更小)
192.168.80.147 ambari04 (部署Agent) (分配1G,我這里只是體驗過程,當然你可以分配更多或更小)
說白了,就是在ambari01上安裝了ambari。
就是在ambari02上安裝了hdp單節點集群。
就是在ambari02、ambari03和ambari04上安裝了hdp的3節點集群。
(二)機器的部署配置
這里我采用克隆的方式,當然大家也可以單獨搭建linux虛擬機。
VMware workstation 11 的下載
VMWare Workstation 11的安裝
CentOS 6.5的安裝詳解
CentOS 6.5安裝之后的網絡配置
CentOS 6.5靜態IP的設置(NAT和橋接聯網方式都適用)
CentOS常用命令、快照、克隆大揭秘
(1)修改主機名
現在的主機名是ambari01,拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。當然我也可以輸入命令來查看一下主機名,我們輸入hostname,我們發現主機名就是ambari01,那么接下來我們就來修改一下主機名。
常見的有三種方法,一種是臨時性的修改,但是當機器重啟之后就會恢復原來的值,比如我們試一下。
還有一種方法就是永久修改,我們直接修改配置文件,我們直接修改/etc/sysconfig/network
實際上還有一種方法,修改/etc/hosts,他對網絡中的主機名起作用,但是對系統本身(也就是本機)不起作用。他和第一種的效果是一樣的。實際上我們一般用這個來配置主機名和IP之間的對應關系。
我這里采用第二種方法。改完之后沒有變化,我們使用reboot命令重啟一下機器就可以了。
(2)Linux虛擬機的網絡配置和系統配置
我這里,僅拿ambari01來說,其他的ambari02、ambari03和ambari04是一樣的。
(1)ping回環地址:能ping通,說明虛擬機的網絡協議是好的。
(2)ping網關
點擊“編輯”——》“虛擬網絡編輯器”
但是這里邊要注意一個問題,因為我們是克隆的。所以我們還要改一下MAC地址(就是我們硬件的地址,用來定義網絡設備的位置),因為我們新的MAC地址和我們網卡配置里的MAC地址不一致,所以會導致網絡連接不上。
所以我們先來查看一下我們新的MAC地址
我們輸入vi /etc/udev/rules.d/70-persistent-net.rules(如果你是完全克隆,這個文件里應該包含eth0和eth1,我們將eth0配置刪除,只保留eth1,記錄該配置對應的MAC地址,並將eth1改名為eth0
接下來修改網卡vi /etc/sysconfig/network-scripts/ifcfg-eth0
你要是新搭建的Linux虛擬機的時候只需要把ONBOOT 的no改為yes就行,(開啟我們的網卡,我們才能夠看到我們的IP地址,BOOTPROTO=dhcp,指定獲取IP的方法,dhcp(動態主機配置協議)還有一種是static ,靜態的)
改回dhcp之后要重啟一下,否則還是查看不到IP地址。(或者用service network restart命令)
OK,前面的修改完之后,下面我們就輸入ifconfig來查看一下IP,然后我們ping IP
接下來我們再來ping www.baidu.com
OK,都能ping通,這就說明我們已經和外部網絡打通了。
(3)X-shell遠程連接
Xmanager Enterprise *安裝步驟
(4)用戶設置:hadoop用戶
新建用戶組、用戶、用戶密碼、刪除用戶組、用戶(適合CentOS、Ubuntu)
我這里,是新建的hadoop用戶。
現在的主機名是ambari01,拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。
(5)為hadoop用戶設置sudo權限
在root用戶下,輸入visudo打開文件
在文件末尾(按快捷鍵,Shift + g)添加hadoop ALL=(ALL) NOPASSWD:ALL
現在的主機名是ambari01,拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。
(6)配置靜態IP
現在的主機名是ambari01,拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。
vi /etc/sysconfig/network-scripts/ifcfg-eth0
(7)查看並關閉防火牆
CentOS下的防火牆關閉
先查看一下防火牆狀態
Service iptables status
如果防火牆在運行,就關閉,也有兩種方法。
一種是臨時關閉
service iptables stop
一種是永久關閉
chkconfig iptables off
這里我采用永久性關閉。
同理,現在的主機名是ambari01,拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。
(8)關閉SELINUX
hadoop 50070 無法訪問問題解決匯總
sudo vi /etc/selinux/config
把SELINUX改為disabled
然后重啟reboot。
現在的主機名是ambari01,拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。
(9)相關服務的安裝
如果沒有安裝的話可以使用下面的命令安裝一下。
[root@ambari01 hadoop]# yum -y install lrzsz
[root@ambari01 hadoop]# yum install -y openssh-clients
現在的主機名是ambari01,拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。
(10)時鍾同步
[root@ambari01 hadoop]# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
cp: overwrite `/etc/localtime'? y
[root@ambari01 hadoop]# yum -y install ntp
[root@ambari01 hadoop]# cd /usr/share/zoneinfo/Asia/ [root@ambari01 Asia]# ntpdate pool.ntp.org 30 Mar 16:06:11 ntpdate[3091]: step time server 101.6.6.172 offset -25.827716 sec [root@ambari01 Asia]# date Thu Mar 30 16:06:19 CST 2017 [root@ambari01 Asia]#
現在的主機名是ambari01,拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。
(11)修改hosts文件
vi /etc/hosts
在里面添加主機名和IP之間的對應關系
192.168.80.144 ambari01 192.168.80.145 ambari02 192.168.80.146 ambari03 192.168.80.147 ambari04
(注意,圖里有錯誤,按這里是對的)
注意:上面的所有步驟要在准備的四台機器上都進行操作
(12)配置ssh免密碼登錄
關於這一步,請移步,先看看再說,細加小心。
hadoop-2.6.0.tar.gz的集群搭建(5節點)
這里我以ambari01為例來配置ssh。拿這個來說,其他的ambari02、ambari03和ambari04是一樣的。
[root@ambari01~]# su hadoop //切換到hadoop用戶下 [hadoop@ambari01 root]$ cd //切換到hadoop用戶目錄 [hadoop@ambari01 ~]$ mkdir .ssh [hadoop@ambari01 ~]$ ssh-keygen -t rsa //執行命令一路回車,生成秘鑰 [hadoop@ambari01 ~]$cd .ssh [hadoop@ambari01 .ssh]$ ls id_rsa id_rsa.pub [hadoop@ambari01.ssh]$ cat id_rsa.pub >> authorized_keys //將公鑰保存到authorized_keys認證文件中 [hadoop@ambari01.ssh]$ ls authorized_keys id_rsa id_rsa.pub [hadoop@ambari01 .ssh]$ cd .. [hadoop@ambari01 ~]$ chmod 700 .ssh [hadoop@ambari01 ~]$ chmod 600 .ssh/* [hadoop@ambari01 ~]$ ssh ambari01//第一次執行需要輸入yes [hadoop@ambari01 ~]$ ssh ambari01//第二次以后就可以直接訪問 [hadoop@ambari01 ~]$ ssh ambari01//第二次以后就可以直接訪問
將所有節點(ambari02、ambari03和ambari04)中的共鑰id_ras.pub拷貝到ambari01中的authorized_keys文件中。
[hadoop@ambari02 ~]$ cat ~/.ssh/id_rsa.pub | ssh hadoop@ambari01 'cat >> ~/.ssh/authorized_keys' The authenticity of host 'ambari01 (192.168.80.144)' can't be established. RSA key fingerprint is a8:ec:04:30:d5:9c:d2:df:cd:b7:de:58:26:70:d7:26. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'ambari01,192.168.80.144' (RSA) to the list of known hosts. hadoop@ambari01's password: [hadoop@ambari02 ~]$
[hadoop@ambari03 ~]$ cat ~/.ssh/id_rsa.pub | ssh hadoop@ambari01 'cat >> ~/.ssh/authorized_keys' The authenticity of host 'ambari01 (192.168.80.144)' can't be established. RSA key fingerprint is a8:ec:04:30:d5:9c:d2:df:cd:b7:de:58:26:70:d7:26. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'ambari01,192.168.80.144' (RSA) to the list of known hosts. hadoop@ambari01's password: [hadoop@ambari03 ~]$
[hadoop@ambari04 ~]$ cat ~/.ssh/id_rsa.pub | ssh hadoop@ambari01 'cat >> ~/.ssh/authorized_keys' The authenticity of host 'ambari01 (192.168.80.144)' can't be established. RSA key fingerprint is a8:ec:04:30:d5:9c:d2:df:cd:b7:de:58:26:70:d7:26. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'ambari01,192.168.80.144' (RSA) to the list of known hosts. hadoop@ambari01's password: [hadoop@ambari04 ~]$
得到,
然后將中ambari01的authorized_keys文件分發到所有節點上面。
[hadoop@ambari01 .ssh]$ scp -r authorized_keys hadoop@ambari02:~/.ssh/ The authenticity of host 'ambari02 (192.168.80.145)' can't be established. RSA key fingerprint is e7:b4:58:e7:28:13:0c:2d:15:c5:fb:7c:2f:b3:b7:b7. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'ambari02,192.168.80.145' (RSA) to the list of known hosts. hadoop@ambari02's password: authorized_keys 100% 1588 1.6KB/s 00:00 [hadoop@ambari01 .ssh]$ scp -r authorized_keys hadoop@ambari03:~/.ssh/ The authenticity of host 'ambari03 (192.168.80.146)' can't be established. RSA key fingerprint is f5:17:e3:ac:26:53:74:4f:7e:d4:d2:ed:2a:49:4b:d2. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'ambari03,192.168.80.146' (RSA) to the list of known hosts. hadoop@ambari03's password: authorized_keys 100% 1588 1.6KB/s 00:00 [hadoop@ambari01 .ssh]$ scp -r authorized_keys hadoop@ambari04:~/.ssh/ The authenticity of host 'ambari04 (192.168.80.147)' can't be established. RSA key fingerprint is 7e:87:00:80:44:70:cd:83:e6:f3:dc:cb:21:76:23:07. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'ambari04,192.168.80.147' (RSA) to the list of known hosts. hadoop@ambari04's password: authorized_keys 100% 1588 1.6KB/s 00:00 [hadoop@ambari01 .ssh]$
大家通過ssh 相互訪問,如果都能無密碼訪問,代表ssh配置成功。這里很簡單,我就不多贅述了。
(13)JDK的安裝(建議1.8)
用文件上傳工具FileZila把jdk1.8的tar包上傳到我們指定的軟件安裝目錄下(比如:/home/hadoop/app或者/usr/local/jdk),或者使用rz命令上傳也行,但是要切換到root用戶下,或者在hadoop用戶下使用sudo rz
jdk-8u60-linux-x64.tar.gz
注意,先記得。
Centos 6.5下的OPENJDK卸載和SUN的JDK安裝、環境變量配置
[root@ambari01 local]# mkdir jdk
[root@ambari01 local]# chown -R hadoop:hadoop jdk
[hadoop@ambari01 jdk]$ ll total 176992 -rw-r--r--. 1 hadoop hadoop 181238643 Sep 3 2016 jdk-8u60-linux-x64.tar.gz [hadoop@ambari01 jdk]$ tar -zxvf jdk-8u60-linux-x64.tar.gz
解壓jdk
刪除jdk壓縮包,並賦予用戶和用戶組。
[hadoop@ambari01 jdk]$ rm jdk-8u60-linux-x64.tar.gz [hadoop@ambari01 jdk]$ ll total 4 drwxr-xr-x. 8 hadoop hadoop 4096 Aug 5 2015 jdk1.8.0_60 [hadoop@ambari01 jdk]$
配置jdk環境變量並使用source命令環境變量生效
#java
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_60 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib export PATH=$PATH:$JAVA_HOME/bin
使用java -version命令查看JDK是否安裝成功
[hadoop@ambari01 jdk]$ su root Password: [root@ambari01 jdk]# source /etc/profile [root@ambari01 jdk]# su hadoop [hadoop@ambari01 jdk]$ clear [hadoop@ambari01 jdk]$ pwd /usr/local/jdk [hadoop@ambari01 jdk]$ ll total 4 drwxr-xr-x. 8 hadoop hadoop 4096 Aug 5 2015 jdk1.8.0_60 [hadoop@ambari01 jdk]$ java -version java version "1.8.0_60" Java(TM) SE Runtime Environment (build 1.8.0_60-b27) Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode) [hadoop@ambari01 jdk]$
注意上面操作要在所有節點都執行
OK,到此為止我們的准備工作基本就都做好了,接下來我們就先來部署本地庫,就是部署一個鏡像服務器。
同時,大家可以關注我的個人博客:
http://www.cnblogs.com/zlslch/ 和 http://www.cnblogs.com/lchzls/ http://www.cnblogs.com/sunnyDream/
詳情請見:http://www.cnblogs.com/zlslch/p/7473861.html
人生苦短,我願分享。本公眾號將秉持活到老學到老學習無休止的交流分享開源精神,匯聚於互聯網和個人學習工作的精華干貨知識,一切來於互聯網,反饋回互聯網。
目前研究領域:大數據、機器學習、深度學習、人工智能、數據挖掘、數據分析。 語言涉及:Java、Scala、Python、Shell、Linux等 。同時還涉及平常所使用的手機、電腦和互聯網上的使用技巧、問題和實用軟件。 只要你一直關注和呆在群里,每天必須有收獲
對應本平台的討論和答疑QQ群:大數據和人工智能躺過的坑(總群)(161156071)