Hadoop - 安装

文章目录


关于 Hadoop

The Apache™ Hadoop® project develops open-source software for reliable, scalable, distributed computing.

The Apache Hadoop software library is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models.

It is designed to scale up from single servers to thousands of machines, each offering local computation and storage. Rather than rely on hardware to deliver high-availability, the library itself is designed to detect and handle failures at the application layer, so delivering a highly-available service on top of a cluster of computers, each of which may be prone to failures.


发行版本


架构变迁 1.0 --> 2.0 --> 3.0


安装配置

官方安装配置:
https://hadoop.apache.org/docs/r1.0.4/cn/quickstart.html


安装

macOS 安装 Hadoop:使用 brew

brew 安装、使用方法可见:https://blog.csdn.net/lovechris00/article/details/121613647

shell 复制代码
brew install hadoop

如果出现报错:

Error: Cannot install hadoop because conflicting formulae are installed.

yarn: because both install yarn binaries

Please brew unlink yarn before continuing.

根据提示执行命令即可:

shell 复制代码
brew unlink yarn

安装成功,查看版本

shell 复制代码
# 查看 hadoop 安装目录
brew info hadoop 

配置环境变量

根据你的环境变量文件,编辑

shell 复制代码
vim ~/.zshrc
# vim ~/.bash_profile
shell 复制代码
# Hadoop
export HADOOP_HOME=/usr/local/Cellar/hadoop/3.3.4/libexec
export PATH=$PATH:HADOOP_HOME

使环境变量在当前窗口生效。

你也可以使用 ctrl + tab 新开一个终端窗口。

shell 复制代码
source ~/.zshrc
# source ~/.bash_profile

配置

shell 复制代码
cd /usr/local/Cellar/hadoop/3.3.3/libexec/etc/hadoop
ls

修改配置文件


core-site.xml
shell 复制代码
vim  core-site.xml

进入文件后加入:

xml 复制代码
<configuration>
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:8020</value>
  </property>
 
  <!--用来指定hadoop运行时产生文件的存放目录  自己创建-->
  <property>
    <name>hadoop.tmp.dir</name>
    <value>file:/usr/local/Cellar/hadoop/tmp</value>
  </property>
</configuration>

hdfs-site.xml

配置副本数

shell 复制代码
vim  hdfs-site.xml
xml 复制代码
<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:/usr/local/Cellar/hadoop/tmp/dfs/name</value>
        </property>
        <!--在本地新建一个存放hadoop数据的文件夹,然后将路径在这里配置一下-->
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>file:/usr/local/Cellar/hadoop/tmp/dfs/data</value>
        </property>
</configuration> 

mapped-site.xml
shell 复制代码
vim  mapped-site.xml
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=/usr/local/Cellar/hadoop/3.3.3/libexec</value>
  </property>
  <property>
     <name>mapreduce.map.env</name>
     <value>HADOOP_MAPRED_HOME=/usr/local/Cellar/hadoop/3.3.3/libexec</value>
  </property>
  <property>
     <name>mapreduce.reduce.env</name>
     <value>HADOOP_MAPRED_HOME=/usr/local/Cellar/hadoop/3.3.3/libexec</value>
</property>
 
</configuration> 

yarn-site.xml
shell 复制代码
vim   yarn-site.xml
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> 

配置 hadoop-env

$HADOOOP_HOME/etc/hadoop/hadoop-env.sh 中配置 JAVA_HOME


shell 复制代码
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_331.jdk/Contents/Home


启动/停止 Hadoop 服务

初始化 HDFS NameNode

shell 复制代码
hdfs namenode -format

1、启动

shell 复制代码
cd  $HADOOP_HOME
./start-dfs.sh 

2、在浏览器中输入url:
http://localhost:9870/dfshealth.html#tab-overview
http://localhost:9870

看到以下界面启动成功

如果打不开这个页面,而且又启动了,需要在hadoop下/etc/hadoop/hadoop-env.sh文件下第52行后面添加下方配置:

shell 复制代码
cd /usr/local/Cellar/hadoop/3.3.1/libexec/etc
export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/native"

3、停止hadoop服务

shell 复制代码
./stop-yarn.sh

4、启动yarn服务

shell 复制代码
cd /usr/local/Cellar/hadoop/3.3.1/libexec/sbin
./start-yarn.sh 

在浏览器中输入 http://localhost:8088/cluster 看到一下界面则启动成功


5、停止yarn服务

shell 复制代码
./stop-yarn.sh 

查看 hdfs report
shell 复制代码
hdfs dfsadmin -report

启动 yarn

shell 复制代码
cd $HADOOP_HOME
../sbin/start-yarn.sh 

浏览器输入 http://localhost:8088,出现下面界面则代表启动成功


相关推荐
武子康12 分钟前
大数据-253 离线数仓 - Airflow 入门与任务调度实战:DAG、Operator、Executor 部署排错指南
大数据·后端·apache hive
guoji77881 小时前
2026年Gemini 3 Pro vs 豆包2.0深度评测:海外顶流与国产黑马谁更强?
大数据·人工智能·架构
TDengine (老段)1 小时前
TDengine IDMP 组态面板 —— 工具箱
大数据·数据库·时序数据库·tdengine·涛思数据
网络工程小王2 小时前
【大数据技术详解】——Kibana(学习笔记)
大数据·笔记·学习
zxsz_com_cn3 小时前
设备预测性维护方案设计的关键要素
大数据·人工智能
唐天下闻化3 小时前
连锁数字化改造8成翻车?三维避坑实录
大数据
坚持学习前端日记6 小时前
从零开始构建小说推荐智能体 - Coze 本地部署完整教程
大数据·人工智能·数据挖掘
smchaopiao6 小时前
Hive中的排序与分桶技术详解
数据仓库·hive·hadoop
IDIOT___IDIOT6 小时前
关于 git 进行版本管理的时候 gitignore 写入忽略规则而不生效的问题
大数据·git·elasticsearch