当前位置:首页 > Centos > 正文

Centos大数据集群搭建全攻略(手把手教你部署Hadoop分布式计算环境)

在当今数据驱动的时代,Centos大数据集群已成为企业处理海量数据的核心基础设施。本文将为零基础用户详细讲解如何在CentOS系统上搭建一个完整的Hadoop大数据集群,涵盖从系统准备到服务启动的每一步操作。

Centos大数据集群搭建全攻略(手把手教你部署Hadoop分布式计算环境) Centos大数据集群  Hadoop安装教程 分布式计算环境搭建 Linux集群配置 第1张

一、准备工作:环境与工具

在开始之前,请确保你有以下资源:

  • 至少3台运行 CentOS 7 或 CentOS 8 的服务器(可使用虚拟机)
  • 每台机器至少2GB内存、20GB硬盘空间
  • 稳定的网络连接,并能互相通过主机名通信
  • root 权限或具有 sudo 权限的用户

二、基础系统配置

首先,在所有节点上执行以下操作:

  1. 关闭防火墙(生产环境建议配置规则而非关闭)
sudo systemctl stop firewalldsudo systemctl disable firewalld
  1. 禁用SELinux
sudo setenforce 0# 永久生效需编辑 /etc/selinux/configsudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
  1. 配置主机名和 hosts 文件

假设三台机器分别为:master、slave1、slave2

# 在 master 节点执行sudo hostnamectl set-hostname master# 在 slave1 节点执行sudo hostnamectl set-hostname slave1# 在 slave2 节点执行sudo hostnamectl set-hostname slave2

然后在所有节点的 /etc/hosts 文件中添加以下内容:

192.168.1.10 master192.168.1.11 slave1192.168.1.12 slave2

三、安装Java环境

Hadoop依赖Java运行环境。推荐使用OpenJDK 8。

sudo yum install -y java-1.8.0-openjdk-devel# 验证安装java -version

设置JAVA_HOME环境变量(在所有节点执行):

echo 'export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java))))' | sudo tee -a /etc/profileecho 'export PATH=$JAVA_HOME/bin:$PATH' | sudo tee -a /etc/profilesource /etc/profile

四、配置SSH免密登录

Hadoop需要主节点能无密码访问所有从节点。在master节点执行:

# 生成SSH密钥(一路回车)ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa# 将公钥复制到所有节点(包括自己)ssh-copy-id masterssh-copy-id slave1ssh-copy-id slave2

测试是否成功:

ssh slave1 "echo 'SSH OK!'"

五、安装与配置Hadoop

master节点下载并解压Hadoop(以Hadoop 3.3.6为例):

cd /optsudo wget https://archive.apache.org/dist/hadoop/core/hadoop-3.3.6/hadoop-3.3.6.tar.gzsudo tar -xzf hadoop-3.3.6.tar.gzsudo mv hadoop-3.3.6 hadoopsudo chown -R $USER:$USER hadoop

配置环境变量(在所有节点):

echo 'export HADOOP_HOME=/opt/hadoop' | sudo tee -a /etc/profileecho 'export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin' | sudo tee -a /etc/profilesource /etc/profile

编辑Hadoop核心配置文件(在master节点的 $HADOOP_HOME/etc/hadoop/ 目录下):

1. core-site.xml

<configuration>    <property>        <name>fs.defaultFS</name>        <value>hdfs://master:9000</value>    </property></configuration>

2. hdfs-site.xml

<configuration>    <property>        <name>dfs.replication</name>        <value>2</value>    </property>    <property>        <name>dfs.namenode.name.dir</name>        <value>file:///opt/hadoop/data/namenode</value>    </property>    <property>        <name>dfs.datanode.data.dir</name>        <value>file:///opt/hadoop/data/datanode</value>    </property></configuration>

3. yarn-site.xml

<configuration>    <property>        <name>yarn.nodemanager.aux-services</name>        <value>mapreduce_shuffle</value>    </property>    <property>        <name>yarn.resourcemanager.hostname</name>        <value>master</value>    </property></configuration>

4. mapred-site.xml

<configuration>    <property>        <name>mapreduce.framework.name</name>        <value>yarn</value>    </property></configuration>

5. workers 文件(原 slaves)

slave1slave2

六、分发Hadoop到从节点

将配置好的Hadoop目录复制到所有从节点:

scp -r /opt/hadoop slave1:/opt/scp -r /opt/hadoop slave2:/opt/

七、格式化NameNode并启动集群

仅在master节点执行:

# 创建数据目录mkdir -p /opt/hadoop/data/namenodemkdir -p /opt/hadoop/data/datanode# 格式化HDFShdfs namenode -format# 启动HDFSstart-dfs.sh# 启动YARNstart-yarn.sh

验证服务是否正常运行:

jps

在master节点应看到:NameNode、ResourceManager;在slave节点应看到:DataNode、NodeManager。

八、访问Web UI

打开浏览器访问以下地址:

总结

至此,你已成功搭建了一个基于Centos大数据集群的Hadoop分布式计算环境。这套环境可用于学习MapReduce、Spark等大数据技术,也是迈向分布式计算环境搭建Linux集群配置的重要一步。

记住,生产环境中还需考虑高可用(HA)、安全认证(Kerberos)、监控告警等高级配置。但对于初学者而言,本教程提供的Hadoop安装教程已足够入门实践。

祝你在大数据的世界里探索顺利!