這篇文章主要介紹了Hadoop中yarn和mapreduce的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
準備Linux環境
1.0點擊VMware快捷方式,右鍵打開文件所在位置 -> 雙擊vmnetcfg.exe -> VMnet1 host-only ->修改subnet ip 設置網段:192.168.1.0 子網掩碼:255.255.255.0 -> apply -> ok
回到windows --> 打開網絡和共享中心 -> 更改適配器設置 -> 右鍵VMnet1 -> 屬性 -> 雙擊IPv4 -> 設置windows的IP:192.168.1.100 子網掩碼:255.255.255.0 -> 點擊確定
在虛擬軟件上 --My Computer -> 選中虛擬機 -> 右鍵 -> settings -> network adapter -> host only -> ok
1.1修改主機名
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=itcast ###
1.2修改IP
兩種方式:
第一種:通過Linux圖形界面進行修改(強烈推薦)
進入Linux圖形界面 -> 右鍵點擊右上方的兩個小電腦 -> 點擊Edit connections -> 選中當前網絡System eth0 -> 點擊edit按鈕 -> 選擇IPv4 -> method選擇為manual -> 點擊add按鈕 -> 添加IP:192.168.1.101 子網掩碼:255.255.255.0 網關:192.168.1.1 -> apply
第二種:修改配置文件方式(屌絲程序猿專用)
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static" ###
HWADDR="00:0C:29:3C:BF:E7"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
IPADDR="192.168.1.101" ###
NETMASK="255.255.255.0" ###
GATEWAY="192.168.1.1" ###
1.3修改主機名和IP的映射關系
vim /etc/hosts
192.168.1.101 hadoop02
1.4關閉防火墻
#查看防火墻狀態
service iptables status
#關閉防火墻
service iptables stop
#查看防火墻開機啟動狀態
chkconfig iptables --list
#關閉防火墻開機啟動
chkconfig iptables off
1.5重啟Linux
reboot
2.安裝JDK
2.1上傳alt+p 后出現sftp窗口,然后put d:\xxx\yy\ll\jdk-7u_65-i585.tar.gz
2.2解壓jdk
#創建文件夾
mkdir /home/hadoop/app
#解壓
tar -zxvf jdk-7u55-linux-i586.tar.gz -C /home/hadoop/app
2.3將java添加到環境變量中
vim /etc/profile
#在文件最后添加
export JAVA_HOME=/home/hadoop/app/jdk-7u_65-i585
export PATH=$PATH:$JAVA_HOME/bin
#刷新配置
source /etc/profile
3.安裝hadoop2.4.1
先上傳hadoop的安裝包到服務器上去/home/hadoop/(注意32位和64位的區別)
cp hadoop-2.4.1.tar.gz /home/hadoop/
cd /home/hadoop/
tar -zxvf hadoop-2.4.1.tar.gz
[root@hadoop02 hadoop]# cd hadoop-2.4.1
[root@hadoop02 hadoop-2.4.1]# cd etc
[root@hadoop02 etc]# cd hadoop
偽分布式需要修改5個配置文件
3.1配置hadoop
第一個:hadoop-env.sh
vim hadoop-env.sh
#第27行
export JAVA_HOME=/usr/lib/java/java-7-sun
第二個:core-site.xml
<!-- 指定HADOOP所使用的文件系統schema(URI),HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop02:9000</value>
</property>
<!-- 指定hadoop運行時產生文件的存儲目錄 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.4.1/tmp</value>
</property>
第三個:hdfs-site.xml hdfs-default.xml (3)
<!-- 指定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
vim 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>hadoop0</value>
</property>
<!-- reducer獲取數據的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
3.2將hadoop添加到環境變量
vim /etc/profile
export JAVA_HOME=/home/hadoop/app/jdk-7u_65-i585
export HADOOP_HOME=/home/hadoop/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
3.3格式化namenode(是對namenode進行初始化)
hdfs namenode -format (hadoop namenode -format)
3.4啟動hadoop
先啟動HDFS
[root@hadoop02 hadoop]# cd /home/hadoop/hadoop-2.4.1
sbin/start-dfs.sh
再啟動YARN
sbin/start-yarn.sh
3.5驗證是否啟動成功
使用jps命令驗證
27408 NameNode
28218 Jps
27643 SecondaryNameNode
28066 NodeManager
27803 ResourceManager
27512 DataNode
http://192.168.1.101:50070 (HDFS管理界面)
http://192.168.1.101:8088 (MR管理界面)
偽分布式集群的測試[root@hadoop02 hadoop-2.6.0]# hadoop fs -ls hdfs://hadoop02:9000/
[root@hadoop02 hadoop]#cd /home/hadoop
[root@hadoop02 hadoop]#hadoop fs -put hadoop-2.6.0-x64.tar.gz hdfs://hadoop02:9000/
[root@hadoop02 hadoop]# hadoop fs -ls hdfs://hadoop02:9000/
-rw-r--r-- 1 root supergroup 180197035 2015-12-01 05:06 hdfs://hadoop02:9000/hadoop-2.6.0-x64.tar.gz
文件的存放目錄[root@hadoop02 subdir0]# pwd
/home/hadoop/hadoop-2.6.0/tmp/dfs/data/current/BP-493792533-192.168.88.155-1448973412341/current/finalized/subdir0/subdir0
下載文件hadoop fs -get /hadoop-2.6.0-x64.tar.gz
mappreduce程序測試
[root@hadoop02 subdir0]#/home/hadoop/hadoop-2.6.0/share/hadoop/mapreduce
[root@hadoop02 mapreduce]# vi test.data
文件內容如下
hello tom
hello jim
hello kitty
hello angelababy
hello dingcheng
how are you .baby .do you have kong today wangshan?
can you have supper with me?
if you can't
na sure you are gen xiaoming haave supper
i will shengqi de
[root@hadoop02 mapreduce]# hadoop fs -mkdir /wc
[root@hadoop02 mapreduce]# hadoop fs -mkdir /wc/srcdata
[root@hadoop02 mapreduce]# hadoop -put test.data /wc/srcdata
[root@hadoop02 mapreduce]# hadoop fs -put test.data /wc/srcdata
[root@hadoop02 mapreduce]# hadoop fs -ls /
[root@hadoop02 mapreduce]# hadoop fs -ls /wc/srcdata
[root@hadoop02 mapreduce]# hadoop jar hadoop-mapreduce-examples-2.6.0.jar wordcount /wc/srcdata /wc/output
[root@hadoop02 mapreduce]# hadoop fs -ls /wc/output
hadoop fs -cat /wc/output/part-r-00000
hadoop fs#相當于幫助命令
感謝你能夠認真閱讀完這篇文章,希望小編分享的“Hadoop中yarn和mapreduce的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。