二、在Ubuntu下創建hadoop用戶組和用戶

2、創建hadoop用戶
- sudo adduser –ingroup hadoop hadoop
- 由於下面使用的是hadoop2.7.3,所以此處至少安裝JDK1.7
- 記得先切換成hadoop用戶
在Ubuntu下安裝JDK圖文解析 : http://blog.csdn.net/chongxin1/article/details/68957808
四、修改機器名
1、打開/etc/hostname文件
- sudo su
- sudo gedit /etc/hostname
2、將/etc/hostname文件中的yangcx-virtual-machine改為你想取的機器名
- sudo gedit /etc/hosts
為了后面在windows系統中調用linux系統的hadoop服務,所以應該把127.0.0.1修改為實際IP地址,如:192.168.168.200

五、安裝ssh服務
此處采用在線安裝方法,所以首先要保證Ubuntu系統能夠上網。
VMware Ubuntu如何連接互聯網 : http://blog.csdn.net/chongxin1/article/details/68959150
1、更新源列表
- sudo apt-get update


2、安裝ssh
- sudo apt-get install openssh-server


3、查看ssh服務是否啟動
- sudo ps -e |grep ssh

六、建立ssh無密碼登錄本機
1、創建ssh-key,,這里我們采用rsa方式
- ssh-keygen -t rsa -P "" //(P是要大寫的,后面跟"")

2、進入~/.ssh/目錄下,將id_rsa.pub追加到authorized_keys授權文件中,開始是沒有authorized_keys文件的
- cd ~/.ssh

- cat id_rsa.pub >> authorized_keys

3、登錄localhost
- ssh localhost

- exit

七、下載hadoop
hadoop百度網盤下載地址:http://pan.baidu.com/s/1pKQsHJ1
官網下載地址:http://hadoop.apache.org/
下載步驟一:
找到"Getting Started" ----->"Download Hadoop from the release page"
下載步驟二:
找到"Download the release hadoop-X.Y.Z-src.tar.gz from a mirror site

下載步驟三:

下載步驟四:
八、安裝Hadoop
1、假設hadoop-2.7.3.tar.gz在桌面,將它復制到安裝目錄 /usr/local/下1
- sudo cp hadoop-2.7.3.tar.gz /usr/local

2、解壓hadoop-2.7.3.tar.gz
- cd /usr/local/
- sudo tar -zxf hadoop-2.7.3.tar.gz



3、將解壓出的文件夾改名為hadoop
- sudo mv hadoop-2.7.3 hadoop

4、將該hadoop文件夾的屬主用戶設為hadoop
- sudo chown -R hadoop:hadoop hadoop

5、打開hadoop/etc/hadoop/hadoop-env.sh文件
- cd hadoop/etc/hadoop

- sudo gedit hadoop-env.sh

6、配置hadoop/etc/hadoop/hadoop-env.sh(找到#export JAVA_HOME=...,去掉,然后加上本機jdk的路徑)

把 ${JAVA_HOME} 修改為本機JDK實際的路徑

7、打開hadoop/etc/hadoop/core-site.xml文件,編輯如下:
- sudo gedit core-site.xml


- <property>
- <name>fs.default.name</name>
- <value>hdfs://192.168.168.200:9000</value>
- </property>
192.168.168.200 : 本機IP地址,此處不用localhost,為了在windows能夠訪問
9000:默認端口

8、打開hadoop/etc/hadoop/mapred-site.xml文件,編輯如下:
- //復制並重命名
- cp mapred-site.xml.template mapred-site.xml
- //編輯器打開此新建文件
- sudo gedit mapred-site.xml


- <configuration>
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
- </configuration>

9、打開hadoop/etc/hadoop/hdfs-site.xml文件,編輯如下:
- sudo gedit hdfs-site.xml

- <configuration>
- <property>
- <name>dfs.name.dir</name>
- <value>/usr/local/hadoop/namenode</value>
- </property>
- <property>
- <name>dfs.data.dir</name>
- <value>/usr/local/hadoop/datanode</value>
- </property>
- <property>
- <name>dfs.replication</name>
- <value>1</value>
- </property>
- </configuration>

九、在單機上運行hadoop
1、格式化hdfs文件系統
- cd /usr/local/hadoop
- bin/hadoop namenode -format
2、啟動hdfs
- cd /usr/local/hadoop
- ./sbin/start-dfs.sh

- jps
3、快捷啟動配置
- //配置hadoop環境變量
- sudo gedit /etc/profile
- export HADOOP_HOME=/usr/local/hadoop
- export PATH="$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH"
- export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

之后即可直接調用start-dfs.sh啟動hadoop,無需進入hadoop的安裝目錄。

4、停止hdfs
- ./sbin/stop-dfs.sh
十、測試hadoop是否安裝成功
1、測試用瀏覽器訪問: http://localhost:50070 或者 http://192.168.168.200:50070

2、上傳文件測試
- Hello World
- Hello Tom
- Hello Jack
- Hello Hadoop
- Bye hadoop
- bin/hadoop fs -put words.txt /
3、配置啟動YARN

①配置etc/hadoop/mapred-site.xml:
- mv mapred-site.xml.template mapred-site.xml
- <configuration>
- <!-- 通知框架MR使用YARN -->
- <property>
- <name>mapreduce.framework.name</name>
- <value>yarn</value>
- </property>
- </configuration>
②配置etc/hadoop/yarn-site.xml:

- <configuration>
- <!-- reducer取數據的方式是mapreduce_shuffle -->
- <property>
- <name>yarn.nodemanager.aux-services</name>
- <value>mapreduce_shuffle</value>
- </property>
- </configuration>
③YARN的啟動與停止
- //啟動
- ./sbin/start-yarn.sh
- 停止
- ./sbin/stop-yarn.sh
4、運行一個簡單的MP程序
- ./bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar
- wordcount hdfs://localhost:9000/words.txt hdfs://localhost:9000/out





Username隨意寫
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,沒有此參數重啟后失效)
重新載入
firewall-cmd --reload
查看
firewall-cmd --zone=public --query-port=80/tcp
刪除
firewall-cmd --zone=public --remove-port=80/tcp --permanent
