HDFS系統(tǒng)的搭建
節(jié)點(diǎn)的介紹:
首先我這里有5臺(tái)虛擬機(jī),1臺(tái)NameNode,4臺(tái)DataNode
IP | Hosts(主機(jī)名) |
---|---|
192.168.56.101 | master |
192.168.56.102 | slave1 |
192.168.56.103 | slave2 |
192.168.56.104 | slave3 |
192.168.56.105 | slave4 |
master充當(dāng)著NameNode的角色蜗元,其他的salve充當(dāng)著DataNode的角色,并且在這5臺(tái)虛擬機(jī)上我都修改了hosts文件菠隆,配置了他們的主機(jī)名他們可以通過主機(jī)名進(jìn)行互相的訪問获黔。
編輯hosts文件:vim /etc/hosts
配置完成 wq 保存退出医窿。
開始搭建HDFS
1.基礎(chǔ)環(huán)境變量配置
-
解壓Hadoop包
15108865894824.jpg 配置hadoop的java運(yùn)行環(huán)境
解壓完成后進(jìn)入 /hadoop-2.7.3/etc/hadoop 在這個(gè)文件夾里都是Hadoop的一些配置文件宾舅,基本上我都要修改的東西都在這個(gè)目錄下敬尺。
編輯hadoop-env.sh配置上java的環(huán)境地址
vim hadoop-env.sh
- 在Linux中配置hadoop環(huán)境
編輯 /etc/profile文件 這是Hadoop的安裝路徑
vim /etc/profile
加入 export PATH=$PATH:/usr/local/hadoop-2.7.3/bin:/usr/local/hadoop-2.7.3/sbin
保存后輸入命令讓profile文件立即生效。
source /etc/profile
輸入命令:hadoop
如果出現(xiàn)以下內(nèi)容 Hadoop環(huán)境就配置成功了
2.設(shè)置SSH免密碼登錄
在我的master機(jī)器上也就是我192.168.56.101這臺(tái)機(jī)器贴浙,這臺(tái)機(jī)器將會(huì)成為我的Hadoop集群NameNode節(jié)點(diǎn)。
進(jìn)入master這臺(tái)機(jī)器的的根目錄
輸入命令:ssh-keygen -t rsa
出現(xiàn)提示可以不理會(huì) 直接按幾次回車鍵就行了署恍,出現(xiàn)以下界面說明生成私鑰id_rsa和公鑰id_rsa.pub
把生成的公鑰id發(fā)送到 slave1崎溃、slave2、slave3盯质、slave4機(jī)器上
輸入命令: ssh-copy-id slave1
slave1會(huì)要求你輸入slave1這臺(tái)機(jī)器上的密碼
密碼輸入正確后你會(huì)看到以下界面袁串,它說已經(jīng)添加了密鑰,它叫你嘗試登陸一下
輸入命令SSH免密登陸到slave1
ssh slave1
你發(fā)現(xiàn)你已經(jīng)從master不用輸入密碼登陸到slave1上了
添加其他的slave2概而、slave3、slave4 也是同樣的操作囱修。
3.配置HDFS
在所有有的機(jī)器上的上core-site.xml赎瑰、和hdfs-site.xml 文件
修改core-site.xml,在configuration標(biāo)簽內(nèi)加入以下配置
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoopData</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>4320</value>
</property>
</configuration>
修改hdfs-site.xml,在configuration標(biāo)簽內(nèi)加入以下配置
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoopData/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/hadoopData/dfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions.superusergroup</name>
<value>staff</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
</configuration>
創(chuàng)建文件夾Hadoop存放數(shù)據(jù)的文件夾
mkdir /home/hadoopData
4.配置NameNode節(jié)點(diǎn)
master主機(jī)是我的NameNode節(jié)點(diǎn),所以我在我的master主機(jī)上操作破镰,也就是192.168.56.101這臺(tái)主機(jī)餐曼。
在master主機(jī)的Hadoop目錄下修改slaves文件,加入DataNode的節(jié)點(diǎn)
注意鲜漩!注意源譬!注意!
在我hosts文件中已經(jīng)綁定了域名所以可以直接通過主機(jī)的名字訪問(不明白看本文章中的節(jié)點(diǎn)的介紹)
編輯slaves文件: vim slaves
slave1孕似、slave2踩娘、slave3、slave4都是DataNode的節(jié)點(diǎn)我把它們加入到我的NanmeNode節(jié)點(diǎn)中
這樣我就可以一個(gè)命令啟動(dòng)整個(gè)集群喉祭。
5.格式化NameNode养渴、啟動(dòng)HDFS系統(tǒng)
在我master這臺(tái)主機(jī)上 輸入命令HDFS格式化命令
格式化HDFS:hdfs namenode -format
輸入啟動(dòng)HDFS系統(tǒng)命令
輸入命令:start-dfs.sh
檢查是否啟動(dòng)成功
在游覽器中輸入 :http://192.168.56.101:50070/
默認(rèn) 你NameNode的IP+50070端口
當(dāng)你見到以下界面說明你的集群已經(jīng)起來了
再檢查DataNode
我這里配了4個(gè)DataNode也起來了 說明整個(gè)HDFS集群搭建完成了!