hadoop 大数据集群环境配置 配置hadoop配置文件 hadoop(七)

  1. 虚拟机的三台机器分别以hdfs 存储, mapreduce计算,yarn调度三个方面进行集群配置

hadoop 版本3.3.4

官网:Hadoop -- Apache Hadoop 3.3.6

jdk 1.8

三台机器尾号为:22, 23, 24。(没有用hadoop102, 103,104,我改为了hadoop22,hadoop23,hadoop24)

  1. 配置22机器core-site.xml

cd $HADOOP_HOME/etc/hadoop

vi core-site.xml

bash 复制代码
<configuration>
    <!-- 指定NameNode的地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop22:8020</value>
    </property>

    <!-- 指定hadoop数据的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop-3.3.4/data</value>
    </property>

    <!-- 配置HDFS网页登录使用的静态用户为atguigu -->
    <property>
        <name>hadoop.http.staticuser.user</name>
        <value>atguigu</value>
    </property>
</configuration>
  1. 配置22机器得hdfs-site.xml

    <configuration> <property> <name>dfs.namenode.http-address</name> <value>hadoop22:9870</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>hadoop24:9868</value> </property> </configuration>
  2. 配置22机器的yarn-site.xml

bash 复制代码
 <!-- 指定MR走shuffle -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

    <!-- 指定ResourceManager的地址-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop23</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>

5.配置22机器的mapred-site.xml

bash 复制代码
<configuration>
	<!-- 指定MapReduce程序运行在Yarn上 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>
  1. 配置22机器workers文件:
bash 复制代码
hadoop22
hadoop23
hadoop24

注意:该文件中添加的内容结尾不允许有空格,文件中不允许有空行。

7.脚本发送到23,24机器:

xsync /opt/module/hadoop-3.3.4/etc/hadoop

  1. 分别去23,24机器检查下是否发送成功。上述修改的文件是否是修改过的数据:
  1. 如果集群是第一次启动 ,需要在hadoop102节点格式化NameNode(注意:格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据。如果集群在运行过程中报错,需要重新格式化NameNode的话,一定要先停止namenode和datanode进程,并且要删除所有机器的data和logs目录,然后再进行格式化。

生成机器id:

bash 复制代码
hdfs namenode -format
  1. 启动hdfs
bash 复制代码
# 例如我的路径/opt/module/hadoop-3.3.4/etc/hadoop
# 在hadoop文件下,前面你自己的路径/etc/hadoop/
# 输入命令
sbin/start-dfs.sh
  1. 在配置了ResourceManager的节点( hadoop23 ****)****启动YARN
bash 复制代码
sbin/start-yarn.sh
  1. 如果启动失败,我是三台机器都删除了data,logs数据。重新从9步,重新生成机器id数据

比对配置文件是否错误,再次重新启动。即可解决~!

相关推荐
隰有游龙1 小时前
hadoop集群启动没有datanode解决
大数据·hadoop·分布式
UCoding2 小时前
我们来学zookeeper -- 集群搭建
分布式·zookeeper
小马哥编程2 小时前
【ISAQB大纲解读】Kafka消息总线被视为“自下而上设计”?
分布式·kafka·系统架构·linq
人工智能小豪4 小时前
2025年大模型平台落地实践研究报告|附75页PDF文件下载
大数据·人工智能·transformer·anythingllm·ollama·大模型应用
我的golang之路果然有问题4 小时前
ElasticSearch+Gin+Gorm简单示例
大数据·开发语言·后端·elasticsearch·搜索引擎·golang·gin
BillKu4 小时前
Vue3+Vite中lodash-es安装与使用指南
大数据·elasticsearch·搜索引擎
TDengine (老段)5 小时前
TDengine 集群容错与灾备
大数据·运维·数据库·oracle·时序数据库·tdengine·涛思数据
viperrrrrrrrrr75 小时前
大数据学习(128)-数据分析实例
大数据·学习·数据分析
帅气的小峰6 小时前
1-【源码剖析】kafka核心概念
分布式·kafka
xiaolin03336 小时前
【RabbitMQ】- Channel和Delivery Tag机制
分布式·rabbitmq