Hadoop最新版本2.7.0的部署-學習記錄01
Hadoop的部署方式有三種:本地模式、僞分佈模式搭建、集羣模式(現在一般使用HA的方式搭建,之後會將學習筆記上傳到博客)
本文主要是僞分佈式的搭建
- 1、Linux安裝(EasyBCD的方式安裝Ubuntu雙系統,很方便)
- 2、VMWare安裝(本文暫時不會使用到,但是爲方便之後的HA的搭建,先進行安裝)
- 3、Hadoop僞分佈式環境配置
- 4、Hadoop環境測試
1、Linux安裝(EasyBCD的方式安裝Ubuntu雙系統,很方便)
Linux系統與Window雙系統安裝可以參考百度經驗,親測完美雙系統,相當好用,請按照百度經驗中的內容操作:
http://jingyan.baidu.com/article/e4d08ffdace06e0fd2f60d39.html
2、VMWare安裝(本文暫時不會使用到,但是爲方便之後的HA的搭建,先進行安裝)
PS:如果要學習大數據相關內容,建議工作學習全部在Linux下,而Ubuntu自然也是一個不二選擇,所以之後僞分佈的搭建將會本機Ubuntu系統下進行搭建,但是因爲之後學習會到家HA集羣模式,所以先安裝VMware,之後搭建HA集羣模式的時候方便使用。
VMware for Linux官方下載地址:
http://www.vmware.com/cn/products/workstation/workstation-evaluation下載成功後是一個.bundle後綴的文件,使用如下命令安裝:
sudo ./VMware-Workstation-Full-12.1.0-3272444.x86_64.bundle
執行安裝,當然註冊碼可以自行百度
- 網絡配置(VMware網絡配置)
點擊配置虛擬網絡
Edit ==》Virtual Network Edit
3、Hadoop僞分佈式環境配置
- 1、修改主機名稱:
sudo vi /etc/hostname
- 2、設置Linux的機器IP地址(要根據自己的電腦實際情況操作,不要隨意修改,修改前先備份,避免系統修改無法聯網等問題)
vim /etc/sysconfig/network-scripts/ifcfg-eth0
//修改文件中內容如下:
DEVICE="eth0" ###網卡硬件編號
BOOTPROTO="static" ###設置爲靜態網絡
HWADDR="00:0C:29:3C:BF:E7" ###MAC地址
IPV6INIT="no" ###是否IPV6(建議爲no避免出錯)
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
IPADDR="192.168.39.100" ###與自己的電腦IP地址相匹配
NETMASK="255.255.255.0" ###
GATEWAY="192.168.39.2" ###網關保證和自己的IP地址在同一個網段下
- 3、修改主機名稱和IP映射關係
sudo vi /etc/hosts
192.168.39.100 Ubuntu
- 4、關閉防火牆
- 查看防火牆狀態
service iptables status
- 關閉防火牆
service iptables stop
- 查看防火牆開機啓動狀態
chkconfig iptables --list
- 關閉防火牆開機啓動
chkconfig iptables off
- 重啓系統
reboot
- 5、安裝JDK
下載JDK7或者8均可;- 解壓jdk
#創建文件夾
mkdir /usr/java
#解壓
tar -zxvf jdk-7u79-linux-i586.tar.gz -C /usr/java/
- 將java添加到環境變量中
vim /etc/profile
#在文件最後添加
JAVA_HOME=/usr/java/jdk1.7.0_79
- 6、修改Hadoop文件中的配置文件(以下是用的是hadoop2.7.0)
- 配置hadoop
注意:hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop
僞分佈式需要修改5個配置文件
第一個:hadoop-env.sh
vim hadoop-env.sh
> #第27行
> export JAVA_HOME=/usr/java/jdk1.7.0_79
第二個:core-site.xml
<!--指定fs的默認名稱-->
<property>
<name>fs.default.name</name>
<value>hdfs://ubuntu:9000</value>
</property>
<!-- 指定HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://ubuntu:9000</value>
</property>
<!-- 指定hadoop運行時產生文件的存儲目錄 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/ubuntu/hadoop-2.7.0/tmp</value>
</property>
第三個:hdfs-site.xml
<!-- 指定HDFS副本的數量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
第四個:mapred-site.xml (mv mapred-site.xml.template mapred-site.xml)
mv mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
<!-- 指定mr運行在yarn上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
第五個:yarn-site.xml
<!-- 指定YARN的老大(ResourceManager)的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>ubuntu</value>
</property>
<!-- reducer獲取數據的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
- 7、將hadoop添加到環境變量
vim /etc/profile
內容如下:
JAVA_HOME=/usr/java/jdk1.7.0_79
HADOOP_HOME=/ubuntu/hadoop-2.7.0
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
讓配置生效:
source /etc/profile
4、Hadoop啓動以及測試
1、格式化namenode(是對namenode進行初始化)
hdfs namenode -format 或者 hadoop namenode -format
2、啓動hadoop
- 先啓動HDFS
sbin/start-dfs.sh
- 再啓動YARN
sbin/start-yarn.sh
- 驗證是否啓動成功
使用jps命令驗證
27408 NameNode
28218 Jps
27643 SecondaryNameNode
28066 NodeManager
27803 ResourceManager
27512 DataNode
http://192.168.39.100:50070 (HDFS管理界面)
http://192.168.39.100:8088 (MR管理界面)
5、測試HDFS
- 查看幫助
hadoop fs -help <cmd>
- 上傳
hadoop fs -put <linux上文件> <hdfs上的路徑>
- 查看文件內容
hadoop fs -cat <hdfs上的路徑>
- 查看文件列表
hadoop fs -ls /
- 下載文件
hadoop fs -get <hdfs上的路徑> <linux上文件>
- 上傳文件到hdfs文件系統上
hadoop fs -put <linux上文件> <hdfs上的路徑>
例如:hadoop fs -put /home/ubuntu/log.txt hdfs://Ubuntu:9000/
- 刪除hdfs系統文件
hadoop fs -rmr hdfs://ubuntu:9000/log.txt
注:如果能正常上傳和刪除文件說明HDFS沒問題。- 測試Yarn
- 上傳一個文件到HDFS
hadoop fs -put words.txt hdfs://ubuntu:9000/
- 讓Yarn來統計一下文件信息
cd /$HADOOP_HOME/etc/hadoop/share/hadoop/target/mapreduce/
- 測試命令
hadoop jar hadoop-mapreduce-examples-2.7.0.jar wordcount /works.txt hdfs://ubuntu:9000/wc