標籤:
作為linux和hadoop小白,初次安裝hadoop真是心累,用了兩天時間才安裝成功。下面就介紹下Hadoop安裝:
一、機器配置和安裝說明
一台筆記本、 vmware 、I7處理器 。centos—7系統。hadoop使用2.7.2
二、利用vmware 安裝 三個節點。(此處可以先建立一個centos虛擬機器,因為後面需要安裝jdk,hadoop,還要配置環境變數,可以利用虛擬機器複製的方法得到另外兩個節點,省去了很多時間和麻煩。當然之後還要修改不同節點的hostname 。建議此種方案!)
1、首先是安裝jdk了。此處不多說,網上很多,我用的是jdk-1.8.0_77
2、按照hadoop叢集的基本要求,其中一個是master結點,主要是用於運行hadoop程式中的namenode、secondorynamenode和ResourceManager任務。另外兩個結點均為slave結點,其中一個是用於冗餘目的,如果沒有冗餘,就不能稱之為hadoop了,所以類比hadoop叢集至少要有3個結點,如果電腦配置非常高,可以考慮增加一些其它的結點。slave結點主要將運行hadoop程式中的datanode和nodeManager任務。
所以,在準備好這3個結點之後,需要分別將linux系統的主機名稱重新命名(因為前面是複製和粘帖操作產生另兩上結點,此時這3個結點的主機名稱是一樣的),重新命名主機名稱的方法:
命令:vi /etc/hostname(完全修改)
通過修改hostname檔案即可,這三個點結均要修改,以示區分。
以下是我對三個結點的ubuntu系統主機分別命名為:master, node1, node2.
三、每台linux虛擬機器設定靜態IP
命令: cd /etc/sysconfig/network-scripts/
vi ifcfg-eth1
將DHCP修改成static,增加IP地址,MAC地址,子網路遮罩、網關等。網上centos7很多.
四、修改hosts檔案。
命令:vi /etc/hosts
master ip地址(192.***.***.***)
node1 ip地址()
node2 ip地址()
五、建立hadoop 運行帳號(此步驟在建立linux系統時 很多人應該做了)
sudo groupadd hadoop //設定hadoop使用者組
sudo useradd –s /bin/bash –d /home/hadoop –m hadoop –g hadoop –G admin //添加一個zhm使用者,此使用者屬於hadoop使用者組,且具有admin許可權。
sudo passwd hadoop //設定使用者zhm登入密碼
su hadoop //切換到zhm使用者中
六、配置ssh免密碼接入。
無密碼登陸,效果也就是在master上,通過 ssh node1或 ssh node2 就可以登陸到對方電腦上。而且不用輸入密碼。
1.三台虛擬機器上,使用 ssh-keygen -t rsa,一路按斷行符號就行了。這部主要是設定ssh的密鑰和密鑰的存放路徑。 路徑為~/.ssh下。開啟~/.ssh 下面有三個檔案:authorizedkeys(已認證的keys),idrsa(私密金鑰),id_rsa.pub(公開金鑰)
2.在master上將公開金鑰放到authorizedkeys裡。命令:sudo cat idrsa.pub>>authorized_keys
3.將master上的authorized_keys放到node1和node2的~/.ssh目錄下。
命令:sudo scp authorized_keys [email protected]:~/.ssh
用法:sudo scp authorized_keys 遠程主機使用者名稱@遠程主機名稱或ip:存放路徑。
4.修改authorizedkeys許可權,命令:chmod 644 authorizedkeys
5.測試是否成功
ssh node1 輸入使用者名稱密碼,然後退出,再次ssh node1不用密碼,直接進入系統。這就表示成功了。
6.exit退出回到原節點。
七、下載並解壓hadoop安裝包
hadoop安裝包放在了/home/hadoop下面
命令:tar –zxvf hadoop-2.7.2.tar.gz #解壓hadoop安裝包
安裝成功後配置路徑:跟jdk相似。
命令:vi /etc/profile八、配置namenode 修改site檔案
1、修改core-site.xml檔案 命令:cd /home/hadoop/hadoop-2.7.2/etc/hadoop ls 可以看到有core-site.xml hdfs-site.xml yarn-site.xml 命令:vi core-site.xml 2、修改hdfs-site.xml檔案 命令:vi hdfs-site.xml 3、修改yarn-site.xml檔案 4、修改mapred-site.xml.template 5、修改hadoop-env.sh 檔案 命令:source hadoop-env.sh 讓其生效
九、配置slaves檔案 命令:cd /home/hadoop/hadoop-2.7.2/etc/hadoop ls 查看slaves檔案 vi slaves 十、向各節點複製hadoop 由於自己是逐一配置,因此不需要此步驟。如果是只配置了一個 可以使用scp命令 向其他兩個節點複製hadoop配置的檔案和環境十一、格式化namenode,只格式一次
命令:hadoop namenode -format
如果出現了successfully format 則成功!!
十二、啟動hadoop
切到/home/hadoop/hadoop-2.7.2/sbin目錄下,命令:./start-all.sh
在node1和node2節點處查看啟動的守護進程:jps
至此,大功告成!!
hadoop2.7.2基於centos完全分布式安裝