本文目录导读:
图片来源于网络,如有侵权联系删除
《Hadoop集群3台虚拟机搭建完整教程》
环境准备
1、虚拟机软件选择
- 我们可以选择VirtualBox或者VMware Workstation,这里以VMware Workstation为例,确保软件已经正确安装并激活。
2、操作系统安装
- 在每台虚拟机上安装Linux操作系统,推荐使用CentOS 7或Ubuntu 18.04,这里以CentOS 7为例。
- 下载CentOS 7的ISO镜像文件,在VMware中创建新的虚拟机,在创建过程中,为虚拟机分配合适的内存(如2GB)、磁盘空间(如20GB)等资源。
- 安装过程中,按照默认设置进行安装,注意设置好root密码。
3、网络配置
- 在VMware中,将虚拟机的网络模式设置为NAT模式,这样虚拟机可以通过宿主机的网络连接到外部网络。
- 在CentOS 7中,编辑网络配置文件/etc/sysconfig/network - scripts/ifcfg - ens33
(ens33可能因实际网络接口名称不同而有所差异),设置BOOTPROTO = "dhcp"
,然后重启网络服务service network restart
。
- 确保每台虚拟机之间可以互相ping通,可以通过修改/etc/hosts
文件添加主机名和IP地址的映射关系,假设三台虚拟机的IP地址分别为192.168.100.101、192.168.100.102、192.168.100.103,主机名分别为node1、node2、node3,则在每台虚拟机的/etc/hosts
文件中添加以下内容:
```
192.168.100.101 node1
192.168.100.102 node2
192.168.100.103 node3
```
安装JDK
1、下载JDK
- 访问Oracle官方网站,下载适用于Linux的JDK版本(如JDK 8)。
2、安装JDK
- 在每台虚拟机上创建一个安装目录,如/usr/java
。
- 使用tar -zxvf
命令解压下载的JDK压缩包到/usr/java
目录下。
- 设置环境变量,编辑/etc/profile
文件,添加以下内容:
```
export JAVA_HOME = /usr/java/jdk1.8.0_XXX(根据实际版本)
export PATH = $JAVA_HOME/bin:$PATH
export CLASSPATH =.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
```
- 使环境变量生效,执行source /etc/profile
命令。
安装Hadoop
1、下载Hadoop
- 访问Hadoop官方网站,下载稳定版本的Hadoop(如Hadoop 3.x)。
2、安装Hadoop
- 在每台虚拟机上创建/usr/hadoop
目录,将下载的Hadoop压缩包解压到该目录下。
- 配置Hadoop环境变量,编辑/etc/profile
文件,添加以下内容:
```
export HADOOP_HOME = /usr/hadoop/hadoop - 3.x.x(根据实际版本)
图片来源于网络,如有侵权联系删除
export PATH = $HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
```
- 使环境变量生效,执行source /etc/profile
命令。
3、配置Hadoop核心文件
- 编辑$HADOOP_HOME/etc/hadoop/hadoop - env.sh
文件,设置JAVA_HOME
变量为之前安装JDK的路径。
- 配置core - site.xml
文件:
```xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://node1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/hadoop - 3.x.x/tmp</value>
</property>
</configuration>
```
- 配置hdfs - site.xml
文件:
```xml
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/hadoop/hadoop - 3.x.x/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/hadoop/hadoop - 3.x.x/dfs/data</value>
</property>
</configuration>
```
图片来源于网络,如有侵权联系删除
- 配置mapred - site.xml
文件:
```xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
- 配置yarn - site.xml
文件:
```xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node1</value>
</property>
<property>
<name>yarn.nodemanager.aux - services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
```
4、在节点间分发配置文件
- 使用scp
命令将/usr/hadoop
目录下的整个Hadoop安装目录从node1复制到node2和node3。scp -r /usr/hadoop root@node2:/usr/
和scp -r /usr/hadoop root@node3:/usr/
。
启动Hadoop集群
1、格式化NameNode
- 在node1上执行hdfs namenode - format
命令,这一步操作只需要在首次启动集群时执行一次。
2、启动集群
- 在node1上执行start - all.sh
命令,这将启动Hadoop集群中的NameNode、DataNode、ResourceManager和NodeManager等组件。
3、验证集群状态
- 使用jps
命令在每台虚拟机上查看启动的进程,在node1上应该看到NameNode、ResourceManager等进程,在node2和node3上应该看到DataNode、NodeManager等进程。
- 可以通过访问Hadoop的Web界面来进一步验证集群状态,访问http://node1:9870
(HDFS的Web界面)和http://node1:8088
(YARN的Web界面)查看集群的相关信息,如文件系统的使用情况、任务的运行状态等。
通过以上步骤,我们就成功搭建了一个由3台虚拟机组成的Hadoop集群,可以在这个集群上进行大数据相关的存储和计算任务了,在实际使用过程中,还可以根据具体的需求对集群进行进一步的优化和配置,如调整内存分配、增加数据节点等。
评论列表