tar –zxvf jdk-8u111-linux-x64.tar.gz /Users/wyd/software
複製代碼
vim ~/.bash_profile
複製代碼
文件中添加(注意看本身的安裝路徑)html
export JAVA_HOME= /usr/local/jdk1.8.0_111/
export PATH=$JAVA_HOME/bin:$PATH
複製代碼
source ~/ .bash_profile
複製代碼
java -version
複製代碼
sudo scutil --set HostName name
複製代碼
查看java
hostname
複製代碼
vim /etc/hosts
複製代碼
127.0.0.1 master
複製代碼
執行source /etc/hosts 使文件失效node
source /etc/hosts
複製代碼
問:爲什麼要配置免密匙登陸? linux
答:遠程登陸的時候須要驗證,你要是不嫌麻煩每次啓動hadoop集羣的時候輸入密碼,反正我懶,因此配置下 web
ssh-keygen -t rsa
複製代碼
經過 ssh-keygen 命令來生成密鑰對在.ssh 目錄下(會有提示,回車便可) 此命令執行後,會在~/.ssh 目錄下生成私鑰 id_rsa 和公鑰 id_rsa.pub) 並將 id_rsa.pub 中的公鑰信息保存到authorized_keys 中apache
cat id_rsa.pub >> authorized_keys
複製代碼
chmod 600 ./authorized_keys
複製代碼
ssh master
複製代碼
mkdir software
複製代碼
提取碼: e65w
複製代碼
tar -zvxf hadoop-2.7.3.tar.gz
複製代碼
mkdir bigdata
複製代碼
執行:vim core-site.xml
複製代碼
把如下代碼複製到 core-site.xml(注意下圖中標紅的地方,必定不能出錯,切記!切記!切記!)編程
<configuration>
<property>
<!-- 指定 hadoop 運行時產生文件的存儲路徑 -->
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<!-- hdfs namenode 的通訊地址 -->
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.proxyuser.wyd.groups</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.wyd.hosts</name>
<value>*</value>
</property>
</configuration>
複製代碼
vim hdfs-site.xml
複製代碼
<configuration>
<property>
<!-- 指定 HDFS 存儲數據的副本數目,默認狀況下是 3 份-->
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<!-- name node 存放 name table 的目錄 -->
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<!--datanode 存放數據 block 的目錄 -->
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
複製代碼
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
複製代碼
<configuration>
<property>
<!-- 指定 mapreduce 編程模型運行在 yarn 上 -->
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.done-dir</name>
<value>/user/history/done</value>
</property>
<property>
<name>mapreduce.jobhistory.intermediate-done-dir</name>
<value>/user/history/done_intermediate</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
複製代碼
vim yarn-site.xml
複製代碼
<configuration>
<property>
<!-- mapreduce 執行 shuffle 時獲取數據的方式 -->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:18088</value>
</property>
</configuration>
複製代碼
hdfs namenode -format
複製代碼
看到successfully formatted" 和 "Exitting with status 0" 的提示,若是是"Exitting with status 1"則表示失敗,我這裏格式化了就再也不操做 十一、啓動hadoop集羣vim
start-all.sh
複製代碼
十二、查看進程是否正常,是否有這幾個進程 namenode、secondarynamenode、datanode、resourcemanager、nodemanagerbash
jps
複製代碼
如圖標紅的進程,其他不用管 oracle
http://master:50070/
複製代碼
如圖則表示正常:
到這裏hadoop集羣就搭建好了,若有問題歡迎指正,謝謝!