Mac m2电脑上安装单机Hadoop(伪集群)

1. 引言

本教程旨在介绍在Mac 电脑上安装Hadoop

2. 前提条件

2.1 安装JDK

Mac电脑上安装Hadoop,必须首先安装JDK,并配置环境变量(此处不做详细描述)

2.2 配置ssh环境

关闭防火墙

在Mac下配置ssh环境,防止后面启动hadoop时出现Connection refused 连接被拒绝的错误。

bash 复制代码
ssh localhost

执行上面命令后,终端如果出现如下问题:

ssh: connect to host localhost port 22: Connection refused

表示当前用户没权限,更改设置如下:

再次输入ssh localhost会提示输入密码,这个时候要重新配置一下ssh免密登录。

(1) 进入ssh的目录:

bash 复制代码
cd ~/.ssh

(2) 将id_rsa.pub中的内容拷贝到 authorized_keys中:

bash 复制代码
cat id_rsa.pub >> authorized_keys

3.安装与配置Hadoop

3.1 使用brew 安装 Hadoop

bash 复制代码
brew install hadoop

3.2 查看是否安装成功

复制代码
hadoop version

3.3 修改Hadoop 配置文件

3.3.1 进入Hadoop的目录
bash 复制代码
cd /opt/homebrew/Cellar/hadoop/3.4.0/libexec/etc/hadoop
3.3.2 修改core-site.xml
bash 复制代码
# 以文件方式打开配置文件
open -e core-site.xml

在core-site.xml文件的标签内添加如下内容:

xml 复制代码
<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:8020</value>
  </property>
 
  <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/opt/homebrew/Cellar/hadoop/tmp</value>
  </property>
</configuration>

创建tmp文件夹,用来指定hadoop运行时产生文件的存放目录

bash 复制代码
mkdir /opt/homebrew/Cellar/hadoop/tmp
3.3.3 修改hdfs-site.xml
bash 复制代码
open -e hdfs-site.xml

在hdfs-site.xml文件的标签内添加如下内容:

xml 复制代码
<configuration>
   <property>
      <name>dfs.replication</name>
      <value>1</value>
    </property>
  
    <property>
       <name>dfs.permissions</name>
       <value>false</value>   
     </property>
   
    <property>
       <name>dfs.namenode.name.dir</name>
        <value>file:/opt/homebrew/Cellar/hadoop/tmp/dfs/name</value>
    </property>

     <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/opt/homebrew/Cellar/hadoop/tmp/dfs/data</value>
     </property>
</configuration>

创建dfs、name、data文件夹(存放数据)

bash 复制代码
mkdir /opt/homebrew/Cellar/hadoop/tmp/dfs
mkdir /opt/homebrew/Cellar/hadoop/tmp/dfs/name
mkdir /opt/homebrew/Cellar/hadoop/tmp/dfs/data 
3.3.4 修改mapred-site.xml
bash 复制代码
open -e mapred-site.xml

在配置文件中添加一下内容,注意配置中的路径

xml 复制代码
<configuration>
   <property>
      <name>mapreduce.framework.name</name>
       <value>yarn</value>
    </property>
  <property>
     <name>mapred.job.tracker</name>
     <value>localhost:9010</value>
  </property>
 
  <property>
     <name>yarn.app.mapreduce.am.env</name>
     <value>HADOOP_MAPRED_HOME=/opt/homebrew/Cellar/hadoop/3.4.1/libexec</value>
  </property>
  <property>
     <name>mapreduce.map.env</name>
     <value>HADOOP_MAPRED_HOME=/opt/homebrew/Cellar/hadoop/3.4.1/libexec</value>
  </property>
  <property>
     <name>mapreduce.reduce.env</name>
     <value>HADOOP_MAPRED_HOME=/opt/homebrew/Cellar/hadoop/3.4.1/libexec</value>
 </property>
</configuration>
3.3.5 修改yarn-site.xml
bash 复制代码
open -e yarn-site.xml

在配置文件中添加一下配置:

xml 复制代码
<configuration>

<!-- Site specific YARN configuration properties -->
  <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>

3.4 修改hadoop-env.sh 文件

复制代码
cd /opt/homebrew/Cellar/hadoop/3.4.0/libexec/etc/hadoop
open -e hadoop-env.sh

找到文件中 export JAVA_HOME该行,打开注释,并添加Java安装路径,如下:

4.启动Hadoop

4.1 对文件系统进行格式化

bash 复制代码
cd /opt/homebrew/Cellar/hadoop/3.4.1/libexec/sbin
hdfs namenode -format

出现以下信息代表成功

4.2 执行HDFS启动命令

bash 复制代码
./start-dfs.sh

访问http://localhost:9870出现一下页面代表成功

4.3 执行YARN调度系统启动

bash 复制代码
./start-yarn.sh

访问http://localhost:8088/cluster出现一下页面代表成功

相关推荐
YANZ22216 小时前
亚马逊绿标(CPF):从环保认证到跨境流量新引擎
java·大数据·人工智能·搜索引擎·百度
Elastic 中国社区官方博客16 小时前
Elasticsearch percolator 用于电商搜索治理:将模糊查询转换为可控的检索策略
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
shamalee16 小时前
Gemini3.1Pro:2026招聘效率革命
大数据·人工智能
逸Y 仙X17 小时前
文章二十二:ElasticSearch EQL事件查询语言
java·大数据·elasticsearch·搜索引擎·全文检索
icestone200017 小时前
智能客服如何按客户类型切换话术?一套支持“渠道标签 + 用户自选 + 对话推断“的分类架构设计
大数据·人工智能·ai编程
前端之虎陈随易17 小时前
为什么今天还会有新语言?MoonBit 想解决什么问题?
大数据·linux·javascript·人工智能·算法·microsoft·typescript
发哥来了18 小时前
东莞AI培训课程横向对比:五家机构教学与就业质量评测
大数据·人工智能·机器学习·ai·aigc
摇滚侠18 小时前
ElasticSearch 在电商项目的作用 全文检索 自动补全 聚合查询 按距离排序
大数据·elasticsearch·全文检索
计算机毕业编程指导师18 小时前
【Python大数据项目推荐】基于Hadoop+Django脑卒中风险分析系统源码解析 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·spark·毕业设计·脑卒中
我是发哥哈18 小时前
东莞AI培训主流方案横向评测:5大选型维度解析
大数据·人工智能·学习·机器学习·chatgpt·ai编程