黑狐家游戏

linux虚拟机搭建hadoop集群(超简单),虚拟机搭建hadoop集群的步骤

欧气 3 0

本文目录导读:

  1. 前期准备
  2. Hadoop安装与配置
  3. 集群启动与测试

《Linux虚拟机下轻松搭建Hadoop集群》

前期准备

1、虚拟机安装

- 选择合适的虚拟机软件,如VirtualBox或VMware Workstation,这里以VMware Workstation为例进行说明。

linux虚拟机搭建hadoop集群(超简单),虚拟机搭建hadoop集群的步骤

图片来源于网络,如有侵权联系删除

- 下载安装VMware Workstation,安装过程按照默认设置进行即可。

- 准备Linux系统镜像,如CentOS 7或Ubuntu等,CentOS 7是企业级Linux发行版,比较适合用于搭建Hadoop集群。

- 在VMware Workstation中创建新的虚拟机,选择自定义安装,分配足够的内存(建议每个节点至少2GB内存,如果条件允许可以更多)和磁盘空间(每个节点至少20GB),在安装过程中,按照提示设置root密码等信息。

2、网络配置

- 对于Hadoop集群,需要保证各个虚拟机节点之间能够互相通信,可以采用NAT网络模式或者桥接网络模式。

- 如果采用NAT模式,需要在虚拟机软件中设置端口转发规则,以便外部能够访问集群中的服务,如果是桥接模式,则虚拟机节点与宿主机处于同一网络段,更容易进行网络通信配置。

- 在每个虚拟机中,配置静态IP地址,以CentOS 7为例,编辑/etc/sysconfig/network - scripts/ifcfg - ens33(这里的ens33可能根据网络接口名称不同而有所变化)文件,设置BOOTPROTO = "static",并添加IPADDR(IP地址)、NETMASK(子网掩码)、GATEWAY(网关)和DNS1(域名服务器)等参数。

BOOTPROTO = "static"
IPADDR = 192.168.1.101
NETMASK = 255.255.255.0
GATEWAY = 192.168.1.1
DNS1 = 8.8.8.8

- 重启网络服务使配置生效,执行命令systemctl restart network

3、安装JDK

- Hadoop是基于Java开发的,所以需要在每个虚拟机节点上安装JDK。

- 下载合适版本的JDK,如JDK 8,可以从Oracle官方网站或者OpenJDK官方网站下载。

- 在CentOS 7中,将下载的JDK安装包上传到虚拟机中(可以使用scp命令进行文件传输)。

- 解压安装包到指定目录,例如/usr/local/java,执行命令tar - zxvf jdk - 8u271 - linux - x64.tar.gz - C /usr/local/java

- 配置环境变量,编辑/etc/profile文件,添加以下内容:

export JAVA_HOME = /usr/local/java/jdk1.8.0_271
export PATH = $JAVA_HOME/bin:$PATH
export CLASSPATH =.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

- 使环境变量生效,执行命令source /etc/profile

Hadoop安装与配置

1、下载Hadoop

linux虚拟机搭建hadoop集群(超简单),虚拟机搭建hadoop集群的步骤

图片来源于网络,如有侵权联系删除

- 从Hadoop官方网站下载稳定版本的Hadoop,如Hadoop 3.3.0。

- 将下载的Hadoop压缩包上传到每个虚拟机节点的指定目录,例如/usr/local/hadoop

- 解压Hadoop压缩包,执行命令tar - zxvf hadoop - 3.3.0.tar.gz - C /usr/local/hadoop

2、配置Hadoop核心文件

hadoop - env.sh:编辑/usr/local/hadoop/hadoop - 3.3.0/etc/hadoop/hadoop - env.sh文件,设置JAVA_HOME变量,确保其指向正确的JDK安装目录,例如export JAVA_HOME = /usr/local/java/jdk1.8.0_271

core - site.xml:编辑/usr/local/hadoop/hadoop - 3.3.0/etc/hadoop/core - site.xml文件,添加以下配置内容:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/hadoop - 3.3.0/tmp</value>
    </property>
</configuration>

- 这里的master是我们指定的Hadoop集群中的主节点名称,可以根据实际情况修改为对应的IP地址或者主机名。

hdfs - site.xml:编辑/usr/local/hadoop/hadoop - 3.3.0/etc/hadoop/hdfs - site.xml文件,添加如下配置:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/usr/local/hadoop/hadoop - 3.3.0/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/local/hadoop/hadoop - 3.3.0/dfs/data</value>
    </property>
</configuration>

mapred - site.xml:编辑/usr/local/hadoop/hadoop - 3.3.0/etc/hadoop/mapred - site.xml文件,配置如下:

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

yarn - site.xml:编辑/usr/local/hadoop/hadoop - 3.3.0/etc/hadoop/yarn - site.xml文件,添加以下内容:

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

3、配置集群节点信息

- 在/usr/local/hadoop/hadoop - 3.3.0/etc/hadoop目录下,编辑workers文件(在Hadoop 2.x版本中是slaves文件),在文件中添加集群中的从节点主机名或者IP地址,每行一个节点,如果有三个节点,分别是master(主节点)、node1node2(从节点),则workers如下:

node1
node2

4、配置主机名与IP地址映射

- 在每个虚拟机节点上,编辑/etc/hosts文件,添加集群中所有节点的主机名和IP地址映射关系。

192、168.1.101 master
192、168.1.102 node1
192、168.1.103 node2

集群启动与测试

1、格式化NameNode

- 在主节点(这里假设是master)上,进入/usr/local/hadoop/hadoop - 3.3.0/bin目录,执行命令hdfs namenode - format

linux虚拟机搭建hadoop集群(超简单),虚拟机搭建hadoop集群的步骤

图片来源于网络,如有侵权联系删除

- 这个操作会初始化HDFS文件系统,创建相关的元数据目录等。

2、启动集群服务

- 在主节点上,执行start - all.sh命令(该命令位于/usr/local/hadoop/hadoop - 3.3.0/sbin目录下),这个命令会启动Hadoop集群中的所有服务,包括NameNode、DataNode、ResourceManager和NodeManager等。

- 可以通过查看各个节点的日志文件来检查服务是否启动成功,NameNode的日志文件位于/usr/local/hadoop/hadoop - 3.3.0/logs/hadoop - root - namenode - master.log,DataNode的日志文件位于/usr/local/hadoop/hadoop - 3.3.0/logs/hadoop - root - datanode - node1.log(这里以node1节点为例)等。

3、测试Hadoop集群

HDFS测试

- 使用hdfs dfs - mkdir - p /test命令在HDFS上创建一个名为test的目录。

- 使用hdfs dfs - put /etc/hosts /test命令将本地的/etc/hosts文件上传到HDFS的/test目录下。

- 使用hdfs dfs - ls /test命令查看/test目录下的文件列表。

MapReduce测试

- Hadoop自带了一些MapReduce示例程序,可以运行/usr/local/hadoop/hadoop - 3.3.0/share/hadoop/mapreduce/hadoop - mapreduce - examples - 3.3.0.jar中的示例程序进行测试。

- 运行单词计数示例程序,执行命令hadoop jar /usr/local/hadoop/hadoop - 3.3.0/share/hadoop/mapreduce/hadoop - mapreduce - examples - 3.3.0.jar wordcount /test/hosts /test/wordcount - result,这个命令会对/test/hosts文件中的单词进行计数,并将结果输出到/test/wordcount - result目录下。

通过以上步骤,就可以在Linux虚拟机中搭建一个简单的Hadoop集群,并进行基本的测试操作,在实际应用中,还可以根据需求进一步优化集群配置,如调整内存分配、增加节点数量等。

标签: #Linux #虚拟机 #搭建步骤

黑狐家游戏
  • 评论列表

留言评论