1、引言
如果想在Mac下安装Hadoop而且让Hadoop能正常运行,那安装之前需要先安装java
,在Mac
环境下安装Hadoop
。
2、配置ssh环境
在Mac
下如果想使用Hadoop
,必须要配置ssh
环境, 如果不执行这一步,后面启动hadoop
时会出现Connection refused
连接被拒绝的错误。
首先终端命令框输入:
ssh localhost
如果提示错误:
表示当前用户没有权限,更改设置如下:进入系统偏好设置
--> 共享
--> 勾选远程登录
->勾选所有用户
,如下图:
再次输入ssh localhost
会提示输入密码,这个时候要重新配置一下ssh
免密登录。
① 进入ssh
的目录:
cd ~/.ssh
② 将id_rsa.pub
中的内容拷贝到 authorized_keys
中:
cat id_rsa.pub >> authorized_keys
操作成功:
3、安装与配置Hadoop
1. 使用brew
命令安装(这里没有指定版本,安装的是最新版的hadoop
):
brew install hadoop
2. 查看是否安装成功:
hadoop version
如果显示如下界面,表示安装成功,可以看到版本号为3.3.1:
3. 进入hadoop
的目录:
cd /opt/homebrew/Cellar/hadoop/3.3.1/libexec/etc/hadoop
4. 修改core-site.xml
:
<configuration><property><name>fs.defaultFS</name><value>hdfs://localhost:8020</value></property><!--用来指定hadoop运行时产生文件的存放目录 自己创建--><property><name>hadoop.tmp.dir</name><value>file:/opt/homebrew/Cellar/hadoop/tmp</value></property>
</configuration>
5. 修改hdfs-site.xml
,配置namenode
和datanode
:
<configuration><property><name>dfs.replication</name><value>1</value></property><!--不是root用户也可以写文件到hdfs--><property><name>dfs.permissions</name><value>false</value> <!--关闭防火墙--></property><!--把路径换成本地的name坐在位置--><property><name>dfs.namenode.name.dir</name><value>file:/opt/homebrew/Cellar/hadoop/tmp/dfs/name</value></property><!--在本地新建一个存放hadoop数据的文件夹,然后将路径在这里配置一下--><property><name>dfs.datanode.data.dir</name><value>file:/opt/homebrew/Cellar/hadoop/tmp/dfs/data</value></property><property><name>dfs.namenode.http.address</name><value>http://localhost:9870</value></property></configuration>
6. 修改 mapred-site.xml
:
<configuration><property><!--指定mapreduce运行在yarn上--><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapred.job.tracker</name><value>localhost:9010</value></property><!-- 新添加 --><!-- 下面的路径就是你hadoop distribution directory --><property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=/opt/homebrew/Cellar/hadoop/3.3.1/libexec</value></property><property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=/opt/homebrew/Cellar/hadoop/3.3.1/libexec</value></property><property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=//opt/homebrew/Cellar/hadoop/3.3.1/libexec</value>
</property></configuration>
7. 修改yarn-site.xml
:
<configuration><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.resourcemanager.address</name><value>localhost:9000</value></property> <property><name>yarn.scheduler.capacity.maximum-am-resource-percent</name><value>100</value></property>
</configuration>
8. 配置环境变量
配置完需要执行source ~/.bash_profile,使其生效
export HADOOP_HOME=/opt/homebrew/Cellar/hadoop/3.3.1/libexec
export HADOOP_COMMON_HOME=$HADOOP_HOME
export PATH=$JAVA_HOME/bin:$PATH:$HADOOP_HOME/bin:/opt/homebrew/Cellar/scala/bin
9. 初始化
在terminal输入 hdfs namenode -format
(只初次启动需要)
4、启动Hadoop并验证
4.1、启动Hadoop
1. hadoop
:
cd /opt/homebrew/Cellar/hadoop/3.3.1/libexec/sbin
./start-dfs.sh
2. 浏览器中输入http://localhost:9870/,出现以下界面就说明成功了:
3. 浏览器中打开http://localhost:8088/就会出现下图的界面: