准備環境:
- 三台centos7虛擬機(Node-1,Node-2,Node-3)
- 配置虛擬機網絡,保證三台機器可以互相ping通,並且和宿主機可以互相ping通。如果僅僅是作為虛擬機學習,可以關閉防火牆,避免后面的RPC端口或者web端口無法正常訪問。
- 創建普通用戶dtouding
- 安裝jdk環境。
安裝HDFS:
- 下載hadoop安裝包(hadoop-2.8.5.tar.gz),可以直接去官網下載。https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-2.8.5/hadoop-2.8.5.tar.gz
- 上傳安裝包,利用Filezilla或者SercureFX工具將安裝包上傳到/home/dtouding目錄下
- 解壓安裝包,解壓到/bigdata目錄下,該目錄已提前創建,並授權給dtouding用戶。tar -zxvf hadoop-2.8.5.tar.gz -C /bigdata/
修改配置文件:
- 修改hadoop-env.sh文件,指定jdk安裝路徑。
vi /bigdata/hadoop-2.8.5/etc/hadoop/hadoop-env.sh
添加:
export JAVA_HOME=/usr/local/jdk1.8.0_181
- 修改core-site.xml文件,指定hadoop默認的文件系統為HDFS,並同時指定namenode為node-1:。
vi /bigdata/hadoop-2.8.5/etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdf://Node-1:9000/</value>
</property>
</configuration>
- 修改hdfs-site.xml文件:
##指定namenode存儲元數據的本地目錄:
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/bigdata/hdpdata/name</value>
</property>
##指定datanode軟件存放文件塊的本地目錄
<property>
<name>dfs.datanode.data.dir</name>
<value>/bigdata/hdpdata/data</value>
</property>
##指定sencondary namenode
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>Node-2:50090</value>
</property>
</configuration>
- 將hadoop安裝目錄拷貝到其他兩台機器上:
scp -r hadoop-2.8.5/ Node-2:/bigdata/
scp -r hadoop-2.8.5/ Node-3:/bigdata/
- 編輯slaves文件,批量啟動hdfs時指定需要啟動的datanode:
vi /bigdata/hadoop-2.8.5/etc/hadoop/slaves
Node-2 Node-3
初始化namenode的工作目錄:
- 在Node-1機器上,初始化namenode的元數據目錄,進入hadoop的bin目錄下,執行命令:./Hadoop namenode -format
有上述提示代表初始化成功。
啟動HDFS:
- 啟動namenode,進入hadoop下的sbin目錄,執行命令:./hadoop-daemon.sh start namenode,用jps查看namenode進程是否啟動成功。
- 啟動datanode,操作另外兩台機器,進入hadoop下的sbin目錄,執行命令:./hadoop-daemon.sh start datanode,用jps查看datanode進程是否啟動成功
- 批量啟動,進入sbin目錄下,執行start-dfs.sh命令
web界面訪問:
- http://192.168.0.111:50070/