最近打算學習基于地理位置的大樹據推薦,首先需要熟悉hadoop這些大樹據架構。
在此把學習到過程記錄下來。學習一個架構到第一步就所先要搭建該架構運作到環境。這裡簡單介紹一下。筆主搭建的是僞分布式環境。首先解釋一下什麼是僞分布式模式。僞分布模式是指在單機環境下模拟hadoop 叢集,每一個hadoop daemon 都運作在獨立的java 程序裡。
敲入指令:sudo addgroup hadoop
敲入指令: sudo adduser -ingroup hadoop hadoop
敲入指令:sudo vim /etc/sudoers
按Enter鍵後就會打開/etc/sudoers檔案了,給hadoop使用者賦予root使用者同樣的權限。
在root all=(all:all) all下添加hadoop all=(all:all) all,
hadoop all=(all:all) all
敲入指令:su hadoop
ssh-keygen -t rsa -p ""
敲入指令:cd ~/.ssh
cat id_rsa.pub >> authorized_keys
輸入指令:ssh localhost
輸入指令:exit
第一個:hadoop-env.sh
vim hadoop-env.sh
#第27行
export java_home=/usr/java/jdk1.7.0_65
第二個:core-site.xml
<!-- 制定hdfs的老大(namenode)的位址 -->
<property>
<name>fs.defaultfs</name>
<value>hdfs://127.0.0.1</value>
</property>
<!-- 指定hadoop運作時産生檔案的存儲目錄 -->
<name>hadoop.tmp.dir</name>
<value>/itcast/hadoop-2.4.1/tmp</value>
</property>
第三個:hdfs-site.xml
<!-- 指定hdfs副本的數量 -->
<name>dfs.replication</name>
<value>1</value>
第四個: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上 -->
<name>mapreduce.framework.name</name>
<value>yarn</value>
第五個:yarn-site.xml
<!-- 指定yarn的老大(resourcemanager)的位址 -->
<name>yarn.resourcemanager.hostname</name>
<value>itcast01</value>
<!-- reducer擷取資料的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
vim /etc/proflie
export hadoop_home=/hadoop/hadoop-2.4.1
export path=$path:$java_home/bin:$hadoop_home/bin:$hadoop_home/sbin
source /etc/profile
hdfs namenode -format (hadoop namenode -format)
先啟動hdfs
sbin/start-dfs.sh
再啟動yarn
sbin/start-yarn.sh
使用jps指令驗證
27408 namenode
28218 jps
27643 secondarynamenode
28066 nodemanager
27803 resourcemanager
27512 datanode
http://127.0.0.1:50070 (hdfs管理界面)
http://127.0.0.1:8088 (mr管理界面)