系統(tǒng)版本:macOS Sierra(10.12.6)
1.ssh免密匙登陸
這一步是因為Hadoop集群(本地測試的話用偽分布式集群)需要互相通過ssh訪問,配置免秘鑰登錄就不需要人工反復(fù)輸入密碼了
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
上述命令是把公鑰復(fù)制到authorized_keys,A主機(jī)的authorized_keys記錄了所有可以免密登錄的主機(jī)的公鑰(舉例B主機(jī)的公鑰),原理是非對稱加密,只有B有對應(yīng)這個公鑰的私鑰,A通過公鑰能驗證進(jìn)行請求的主機(jī)是不是B
(省略了創(chuàng)建id_dsa.pub的過程,如沒創(chuàng)建的需要先創(chuàng)建)
2.安裝Hadoop
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/stable/hadoop-2.9.1.tar.gz
tar xzf hadoop-2.9.1.tar.gz
可以把解壓后的文件夾移動到你想安裝的目錄(強(qiáng)烈建議直接放在家目錄下,因為mac只會用于開發(fā)環(huán)境,放哪隨意點,但是如果放到/usr/local這樣的目錄下,運(yùn)行命令需要sudo,是以root身份執(zhí)行的,那么還需要為root用戶配置ssh免登陸才行)
3.配置
cd hadoop-2.9.1/etc/hadoop
a)hadoop-env.sh(可以先不配置這一步,如果找不到j(luò)ava再配置)
輸入以下代碼看看你把 Java 裝到哪里了:
/usr/libexec/java_home
打開 hadoop-env.sh 文件,找到 # export JAVA_HOME=(我的在54行),改參數(shù)如下:
export JAVA_HOME={your java home directory}
把 {your java home directory} 改成你上面查到的 Java 路徑,記得去掉注釋 #。比如把 {your java home directory} 改成你上面查到的 Java 路徑,記得去掉注釋 #。比如 export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
b) core-site.xml
打開core-site.xml,在
<configuration>
</configuration>
之間添加:
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
c) hdfs-site.xml
打開hdfs-site.xml在
<configuration>
</configuration>
之間添加:
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
d) mapred-site.xml
沒有這個文件,先cp mapred-site.xml.template mapred-site.xml
打開mapred-site.xml,在
<configuration>
</configuration>
之間添加:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
e) yarn-site.xml
打開yarn-site.xml,在
<configuration>
</configuration>
之間添加:
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.env-whitelist</name>
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
</property>
4.初始化(首次運(yùn)行前才需要)
切換回hadoop安裝目錄(~/hadoop/hadoop-2.9.1)
格式化文件系統(tǒng):
~/hadoop/hadoop-2.9.1/bin/hdfs namenode -format
會默認(rèn)在/tmp/hadoop-${username}/dfs/name創(chuàng)建hdfs文件系統(tǒng)
5.運(yùn)行
a)開啟HDFS
sbin/start-dfs.sh
運(yùn)行完可以jps看看有哪些java進(jìn)程:

可以訪問這個地址管理HDFS http://localhost:50070/
可以試試文件操作:
bin/hadoop fs -mkdir /user 在HDFS中創(chuàng)建一個目錄bin/hadoop fs -ls /查看HDFS根目錄
b)開啟yarn
sbin/start-yarn.sh
jps:

管理url:http://localhost:8088