hadoop集群搭建详细流程(非高可用)

本文详细介绍如何在Linux环境下搭建Hadoop集群,包括环境准备、配置静态IP、免密登录设置、Java与Hadoop安装、环境变量配置、Hadoop配置文件调整及集群启动流程。适合初学者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

******第一部分环境准备

  1. 安装好linux

  2. *安装VMTools

  3. 关闭防火墙
    sudo service iptables stop
    sudo chkconfig iptables off

  4. 设置静态IP,更改主机名
    编辑vim /etc/sysconfig/network-scripts/ifcfg-eth0
    改成

    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes
    BOOTPROTO=static
    NAME=“eth0”
    IPADDR=192.168.5.101
    PREFIX=24
    GATEWAY=192.168.5.2
    DNS1=192.168.5.2

    编辑vim /etc/sysconfig/network
    改HOSTNAME=那一行

  5. 配置/etc/hosts
    vim /etc/hosts

    192.168.75.100(自己是什么就写什么) hadoop100
    192.168.75.101 hadoop101
    192.168.75.102 hadoop102

  6. 创建一个一般用户jinghang,给他配置密码
    useradd jinghang
    passwd jinghang

  7. 配置这个用户为sudoers
    vim /etc/sudoers
    在root ALL=(ALL) ALL
    添加jinghang ALL=(ALL) NOPASSWD:ALL
    保存时wq!强制保存

  8. 在/opt目录下创建两个文件夹module和software,并把所有权赋给jinghang
    mkdir /opt/module /opt/software
    chown jinghang:jinghang /opt/module /opt/software

  9. 关机,快照,克隆

-------------------------------------以下使用一般用户登陆操作-----------------------------------------
10. 克隆的虚拟机改IP、网卡、主机名
11. 配置免密登陆
1. 生成密钥对
ssh-keygen -t rsa 三次回车
2. 发送公钥到本机
ssh-copy-id hadoop102 输入一次密码
3. 分别ssh登陆一下所有虚拟机
ssh hadoop103
exit
4. 把/home/jinghang/.ssh 文件夹发送到集群所有服务器
rsync -av /home/jinghang/.ssh jinghang@jinghang03:/home/jinghang/.ssh

  1. 在一台机器上安装Java和Hadoop,并配置环境变量,并分发到集群其他机器
    1. 拷贝文件到/opt/software,两个tar包
    2. tar -zxvf xxxx.tar -C /opt/module
    3. tar -zxvf xxxx.tar -C /opt/module
    4. sudo vim /etc/profile
    在文件末尾添加如下内容
    =======================================================
    #JAVA_HOME
    export JAVA_HOME=/opt/module/jdk1.8.0_144
    export PATH=PATH:PATH:PATH:JAVA_HOME/bin

    	#HADOOP_HOME
    	export HADOOP_HOME=/opt/module/hadoop-2.7.2
    	export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    ========================================================
    wq保存退出
    5.source /etc/profile
    
    6.rsync -av /opt/module/hadoop-2.7.2 jinghang@jinghang03:/opt/module/分发hadoop
    7.rsync -av /opt/module/hadoop-2.7.2  jinghang@jinghang04:/opt/module/
    8.rsync -av /opt/module/jdk.xxxx  jinghang@jinghang03:/opt/module/ 分发jdk
    9.rsync -av /opt/module/jdk.xxxx  jinghang@jinghang03:/opt/module/
    10. rsync -av  /etc/profile  root@jinghang03:/etc/profile 分发配置文件
    11. 在其他机器分别执行source /etc/profile
    

*********第二部分hadoop(非高可用)的配置
###所有配置文件都在$HADOOP_HOME/etc/hadoop
14. 首先配置hadoop-env.sh,yarn-env.sh,mapred-env.sh文件,配置Java_HOME
在每个文件第二行添加 export JAVA_HOME=/opt/module/jdk1.8.0_144
15. 配置Core-site.xml 添加如下内容


fs.defaultFS
hdfs://主机名:9000

    <!-- 指定Hadoop运行时产生文件的存储目录 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/module/hadoop-2.7.2/data/tmp</value>
    </property>
  1. 配置hdfs-site.xml,添加如下内容


    dfs.replication
    3



    dfs.namenode.secondary.http-address
    主机名:50090

  2. 配置yarn-site.xml 添加如下内容

    <!-- Site specific YARN configuration properties -->
    <!-- Reducer获取数据的方式 -->
    <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
    </property>
    
    <!-- 指定YARN的ResourceManager的地址 -->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>主机名</value>
    </property>
    <!-- 日志聚集功能使能 -->
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
    
    <!-- 日志保留时间设置7天 -->
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>604800</value>
    </property>
    
  3. 配置mapred-site.xml 添加如下内容

    mapreduce.framework.name
    yarn

    mapreduce.jobhistory.address 主机名:10020 mapreduce.jobhistory.webapp.address 主机名:19888
  4. 配置etc/hadoop/Slaves,添加从节点主机名
    hadoop102
    hadoop103
    hadoop104

20.分发配置文件
rsync -av /opt/module/hadoop-2.7.2/etc/hadoop jinghang@jinghang03:/opt/module/hadoop-2.7.2/etc/hadoop
rsync -av /opt/module/hadoop-2.7.2/etc/hadoop jinghang@jinghang04:/opt/module/hadoop-2.7.2/etc/hadoop

*********第三部分启动集群
21.在NameNode所在的服务器,格式化Namenode 在
hdfs namenode -format

  1. 启动hdfs,执行如下命令
    start-dfs.sh

  2. 在配置了Resourcemanager机器上执行 如下命令
    start-yarn.sh

25 关闭集群 stop-dfs.sh stop-yarn.sh

26 单点启动(namenode,datanode,resourcemanager,nodemanager)命令如下
hadoop-daemon.sh start namenode或datanode
yarn-daemon.sh start resourcemanager或nodemanager

注意:如果集群出了问题(namenode或者datanode启动不起来)
stop-dfs.sh
stop-yarn.sh
rm -rf data logs
回到21重新执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值