Centos7+Hadoop 3.2.1集群搭建教程

系统环境:centos 7.2
Hadoop:3.2.1
集群ip地址分别为:
192.168.1.10 hadoop
192.168.1.11 slave1
192.168.1.12 slave2
192.168.1.13 slave3

1. 修改主机名和 IP 地址映射

vi /etc/hostname
127.0.0.1 hadoop

重启网卡

systemctl restart network

ping测试

 ping hadoop

2. 防火墙设置

 # 查看防火墙状态
 systemctl status firewalld
 systemctl is-active firewalld
 # 启动防火墙
 systemctl start firewalld 
 # 停止防火墙
 systemctl stop firewalld

3. 配置host文件

 vim /etc/hosts
  # 根据自己实际情况填写集群地址
  192.168.1.10 hadoop
  192.168.1.11 slave1
  192.168.1.12 slave2
  192.168.1.13 slave3

4. 设置集群ssh免密登录

 ssh-keygen -t rsa
 # 然后连续点击三次回车即可 
 # 复制公共密钥 
 cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
 ssh localhost
 # 实际操作中需要将密钥复制到集群所有及其中

5. Hadoop 配置

5.1 下载

# linux下直接下载
wget https://www-us.apache.org/dist/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz
# 浏览器下载手动上传
https://www-us.apache.org/dist/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz

安装说明文档
https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html

5.2创建相关目录

mkdir -p  /opt/hadoop-3.2.1/tmp /opt/hadoop-3.2.1/hdfs /opt/hadoop-3.2.1/hdfs/data  /opt/hadoop-3.2.1/hdfs/name

5.3 修改 Hadoop 6个配置文件

/opt/hadoop-3.2.1/etc/hadoop/hadoop-env.sh
/opt/hadoop-3.2.1/etc/hadoop/core-site.xml
/opt/hadoop-3.2.1/etc/hadoop/hdfs-site.xml
/opt/hadoop-3.2.1/etc/hadoop/mapred-site.xml
/opt/hadoop-3.2.1/etc/hadoop/yarn-site.xm
/opt/hadoop-3.2.1/etc/hadoop/workers

5.3.1 修改hadoop-env.sh配置文件
vim /opt/hadoop-3.2.1/etc/hadoop/hadoop-env.sh
# 注意:自己安装的java目录
export JAVA_HOME=/usr/local/jdk/
# 文件最后追加
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root 
5.3.2 修改core-site.xml配置文件
vim /opt/hadoop-3.2.1/etc/hadoop/core-site.xml
# 按照以下内容修改
<configuration>
     <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop:9000</value>
        <description>HDFS的URI,文件系统://namenode标识:端口号</description>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/hadoop-3.2.1/tmp</value>
        <description>namenode上本地的hadoop临时文件夹</description>
    </property>
</configuration>

备注:
name 节点用 fs.defaultFS,不建议使用 fs.default.name;
hadoop.tmp.dir 是hadoop文件系统依赖的基础配置,很多路径都依赖它。如果 hdfs-site.xml 中不配置 namenode 和 datanode 的存放位置,默认就放在如下路径中。
NameNode
dfs.name.dir
预设值: h a d o o p . t m p . d i r / d f s / n a m e D a t a N o d e d f s . d a t a . d i r 预 设 值 : {hadoop.tmp.dir}/dfs/name DataNode dfs.data.dir 预设值: hadoop.tmp.dir/dfs/nameDataNodedfs.data.dir{hadoop.tmp.dir}/dfs/data

5.3.3 修改hdfs-site.xml配置文件
vim /opt/hadoop-3.2.1/etc/hadoop/hdfs-site.xml 
 # 修改如下配置
 <configuration> 
    <property>
        <name>dfs.replication</name>
        <value>3</value>
        <description></description>
    </property>
 </configuration>
5.3.4 修改mapred-site.xml配置文件
vim /opt/hadoop-3.2.1/etc/hadoop/mapred-site.xml
 <configuration>
     <property>
         <name>mapreduce.framework.name</name>
         <value>yarn</value>
     </property>
 </configuration>
5.3.5 修改yarn-site.xml配置文件
vim /opt/hadoop-3.2.1/etc/hadoop/yarn-site.xml
<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>
5.3.6 编辑workers文件并添加内容
 vim /opt/hadoop-3.2.1/etc/hadoop/workers
    slave1
    slave2
    slave3
5.3.7 配置文件复制到所有主机

将本机的不hosts和profile配置文件copy到slave1、slave2、slave3机器上

  scp /etc/hosts /etc/profile root@slave1:/etc
    scp /etc/hosts /etc/profile root@slave2:/etc
    scp /etc/hosts /etc/profile root@slave3:/etc

将配置好的hadoop进行压缩

tar cf hadoop-3.2.1.tar hadoop-3.2.1
    
scp hadoop-3.2.1.tar root@slave1:/opt
scp hadoop-3.2.1.tar root@slave2:/opt
scp hadoop-3.2.1.tar root@slave3:/opt

ssh root@slave1 "tar -xf /opt/hadoop-3.2.1.tar -C /opt/"
ssh root@slave2 "tar -xf /opt/hadoop-3.2.1.tar -C /opt/"
ssh root@slave3 "tar -xf /opt/hadoop-3.2.1.tar -C /opt/"

6. Hadoop 启动及测试

6.1 格式化 namenode

/opt/hadoop-3.2.1/bin/hdfs namenode -format cluster_name

如果出现 has been successfully formatted. 则表示格式化成功

6.2、启动 Hadoop

/opt/program-files/hadoop/hadoop-3.2.1/sbin/start-all.sh

6.3 验证启动(会出现如下进程)

使用jps命令查询,出现如下结果:

[root]# jps

NodeManager (11|12|13机器上,也就是slave1,slave2,slave3节点上)
DataNode    (11|12|13机器上,也就是slave1,slave2,slave3节点上)
NameNode           (10机器上,也就是hadoop主节点上)
SecondaryNameNode (10机器上,也就是hadoop主节点上)
ResourceManager   (10机器上,也就是hadoop主节点上)
6.4 启动访问

http://192.168.1.10:9870 (nameNode information 存在于主节点上 )

http://192.168.1.10:8088/cluster (All Applications 集群运行状态,以及任务执行服务)

http://192.168.1.(11|12|13):8042/node (NodeManager 数据节点管理服务,存在于DataNode数据节点上)

http://192.168.1.(11|12|13):9864/datanode.html (DataNode,数据存储, 存在于DataNode数据节点上)

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

举个栗子の不容易

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值