Hadoop伪分布式安装-Mac版

环境配置

Mac版本 10.13.1
hadoop版本 3.1.1

brew安装 - 错误安装方式

  • 安装命令 - 不能使用root用户
brew install hadoop
  • 安装目录
/usr/local/Cellar/hadoop/3.1.1

ssh登录本地

ssh登录省略

详见参考文档 【Hadoop踩雷】Mac下安装Hadoop3以及Java版本问题

配置修改

进入到目录

/usr/local/Cellar/hadoop/3.1.1/libexec/etc/hadoop

所有配置都放这个目录下

  • 修改 hadoop-env.sh
    将 JAVA_HOME 注释释放开,并配置Java安装路径
    Java安装路径查看
echo $JAVA_HOME
  • 修改 core-site.xml
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>
  • 修改 hdfs-site.xml
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <!-- http://localhost:9870/explorer.html#/ 无创建文件和上传文件权限(线上不能使用) -->
    <!-- dfs.permissions 默认值 true;还有几种方法可以解决,此处省略 -->
    <property>
      <name>dfs.permissions</name>
      <value>false</value>
   </property>
</configuration>

格式化namenode

命令

cd /usr/local/Cellar/hadoop/3.1.1/
	bin/hdfs namenode -format

启动namenode和datanode

  • 启动用户 - 非root用户,命令
./sbin/start-dfs.sh
  • 普通用户启动hdfs无反应,如下图所示
    普通用户启动hdfs无反应
  • 切换到root
sudo -i
	password: 输入密码即可
  • 再次执行命令
./sbin/start-dfs.sh

root用户执行失败

  • 网上大部分博客都说是因为缺少用户定义造成的,在启动文件中添加如下参数即可
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
  • 通过root用户不能修改 start-dfs.sh 文件
  • 切换到普通用户也不能修改 start-dfs.sh 文件
  • 采用授权操作 chmod -R 777 start-dfs.sh 即可修改文件
  • 兴高采烈的再次启动
./sbin/start-dfs.sh
  • 结果错误依然存在

本地解压安装

下载二进制文件

https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.1.1/hadoop-3.1.1.tar.gz
  • 任选一个即可

解压省略

配置环境变量省略

修改配置

  • 和brew安装修改配置相同,此处省略

格式化namenode省略

启动namenode和datanode

cd HADOOP_HOME
	./sbin/start-dfs.sh
  • 通过jps命令查看,证明启动成功
    在这里插入图片描述

*通过浏览器访问 http://localhost:9870 出现如图所示,则安装成功
在这里插入图片描述

yarn安装

  • 修改 etc/hadoop/mapred-site.xml 配置
<configuration>
	<!-- 变量mapred.job.tracker 保存了JobTracker的位置,因为只有MapReduce组件需要知道这个位置,所以它出现在mapred-site.xml文件中 -->
    <property>
        <name>mapred.job.tracker</name>
        <value>localhost:9010</value>
    </property>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>
  • 修改 etc/hadoop/yarn-site.xml 配置
<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>
  • 启动 ResourceManager 和 NodeManager
./sbin/start-yarn.sh
  • 现在你就可以看到All Applications 界面
http://localhost:8088

找出brew安装失败原因