首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >在本地就可自己搭建Hadoop大数据平台

在本地就可自己搭建Hadoop大数据平台

原创
作者头像
Jack20
修改2025-05-10 21:48:29
修改2025-05-10 21:48:29
4940
举报

一、 虚拟机备份:

注意:VM虚拟机并不是一个非常稳定的系统,在虚拟化情况下,有时候会出现一些非常莫名奇妙的错误,这就需要我们有足够的克隆备份,以用于错误出现的恢复和追溯,大家可以参考我的虚拟机建设方式。

在基础平台中,一般都有一些搭建好的基础组件,例如我们在Hadoop基础平台搭建时候,需要的JDK 1.8 基础组件,我们可以先行搭建好,后在使用的时候,直接克隆,省时省力,在搭建好的基础组件里,我们可以挑选一部分重要的(或者复杂的)进行备份。

我们配置到一半的虚拟机,在休息或者阶段性达成时,请在关机时直接进行一次克隆,然后编辑克隆后的虚拟机,按照自己舒服的方式编号即可。

在完成配置后,将完成配置的虚拟机移到已完成的组别,然后在完成备份组进行一个备份。

虚拟机默认安装系统在C盘,建议有一个大一点的C盘空间,至少100-300G。

一、 虚拟机网络设置:

虚拟机常用有三种连接网络模式,分别是桥接,NAT,本地,这三种模式都分别代表什么意思?有什么用呢?我用类比法给大家解释一下这个问题。

1) 桥接模式:在这种模式下,物理主机好像是一个“交换机”所有的虚拟机都连接这个物理主机的交换机上,所有虚拟机之间的交流不受影响,外界带有DHCP功能的路由器会直接分配给虚拟机地址,需要注意的是,你虚拟机的网段和物理机应在同一个网段,不然无法访问。示意图如下:

2) NAT模式:NAT(网络地址转,用于把内部的私有网络地址转换成可以通讯的公网地)NAT模式相当于在桥接的Vmnet0(虚拟交换机)上又加入了NAT设备和DHCP服务器来自行分配地址,也就是说,相当于在桥接模式的“交换机”上又加了个“路由器”,这样,物理主机和虚拟机的通讯就需要对于这个“路由器”进行配置才能实现和物理主机的通讯。示意图如下:

3) 本地模式:本地模式,是NAT模式去掉了NAT设备(只剩DHCP服务器)通过共享网卡可以实现上网。示意图如下:

我们在配置Hadoop平台的时候,使用NAT方式。

三、 JDK环境配置

1) 环境及需要软件:

1. 物理机操作系统:windows 10 1903

2. VM版本:17.2.5 pro

3. 虚拟机操作系统:CentOS 7 x86_64 1804

4. 软件需求:Xshell、Xftp、JDK1.8_211

2) 虚拟机建立:省略

3) 网络设置:

1. 网段:192.168.127.0

2. 网关:192.168.127.1

3. V8网卡:192.168.127.88

4. 主机IP:192.168.127.31

4) 登录root用户:省略

5) 开始配置:

1. IP配置

# 修改IP地址

# 这步完成后需重新启动

代码语言:javascript
复制
$ vim /etc/sysconfig/network-scripts/ifcfg-ens33
代码语言:javascript
复制
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="001ab3ed-d2b2-4697-ba77-a3a235682441"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.127.31"
PREFIX="24"
GATEWAY="192.168.127.1"

2. Xshell到主机

# 在Xshell上创建Shell连接

# 在XFTP中的 /root文件夹下新建一个文件夹为apps,且将JDK1.8传输进去

3. 解压缩JDK1.8

代码语言:javascript
复制
$ tar -zxvf /root/apps/jdk-8u211-linux-x64.tar.gz

# 把解压后的JDK 1.8.0_211通过XFTP拖回apps文件夹

4. 设置并且加载JDK1.8

# 在环境变量中加入JDK1.8.0_211

代码语言:javascript
复制
$ vim /etc/profile#
代码语言:javascript
复制
export JAVA_HOME=/root/apps/jdk1.8.0_211
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export   PATH=$JAVA_HOME/bin:$PATH:$HOME/bin

重新加载环境变量

代码语言:javascript
复制
$ source /etc/profile

# 测试

代码语言:javascript
复制
$ echo $JAVA_HOME
$ java -version

5. 关闭主机后,克隆到大数据平台

一、 Hadoop平台单节点搭建

1) 环境及需要软件:

1. 物理机操作系统:windows 10 1903

2. VM版本:15.5 pro

3. 虚拟机操作系统:CentOS 7 x86_64 1804

4. 软件需求:Xshell、Xftp、hadoop 2.7.7

2) 虚拟机建立:省略

3) 登录root用户:省略

4) 开始配置

1. 修改主机名和IP映射

2. IP地址和域名

代码语言:javascript
复制
vi /etc/hosts
代码语言:javascript
复制
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.127.31 Jack20
192.168.127.32 node01
192.168.127.33 node02

3. 关闭防火墙

代码语言:javascript
复制
$ systemctl stop firewalld.service
$ systemctl disable firewalld.service

关闭防火

4. 配置SSH免密登录

代码语言:javascript
复制
cd ~
ssh-keygen -t rsa #敲三次回车
ssh-copy-id hadoop31 #输入root密码
chmod 700 .ssh

5. 正式安装Hadoop

# 在文件夹下解压缩

代码语言:javascript
复制
tar -zxvf /root/apps/hadoop-3.1.1.tar.gz

# 将hadoop安装包移入apps文件夹中:省略,参照JDK

# 配置依赖环境

代码语言:javascript
复制
cd /root/apps/hadoop-3.1.1/etc/Hadoop
vim hadoop-env.sh

# 配置文件目录存放位置

代码语言:javascript
复制
vim /root/apps/hadoop-3.1.1/etc/hadoop/core-site.xml
代码语言:javascript
复制
<configuration>
<property>
<!--指定hdfs中namenode的地址-->
<name>fs.defaultFS</name>
<value>hdfs://Jack20:9000</value>
</property>
<property>
<!--指定hadoop运行时产生文件的存放目录-->
<name>hadoop.tmp.dir</name>
<value>/root/apps/work/hadoop/tmp</value>
</property>
</configuration>

# 配置HDFS副本

代码语言:javascript
复制
vim /root/apps/hadoop-3.1.1/etc/hadoop/hdfs-site.xml
代码语言:javascript
复制
<configuration>
<property>
<!--指定hdfs保存数据副本的数量,包括自己,默认为3-->
<!--伪分布式模式,此值为1-->
<name>dfs.replication</name> 
<value>1</value>
</property>
</configuration>

# 复制mapred组建使mapreduce可编辑

代码语言:javascript
复制
cd /root/apps/hadoop-3.1.1/etc/hadoop
mv mapred-site.xml.template mapred-site.xml

配置Yarn关联MapReduce运行

代码语言:javascript
复制
vim /root/apps/hadoop-3.1.1/etc/hadoop/mapred-site.xml
代码语言:javascript
复制
<configuration>
<property>
<!--指定mapreduce运行在yarn上-->
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

# 格式化NameNode(第一次启动需要,之后都不需要)

代码语言:javascript
复制
cd /root/apps/hadoop-3.1.1
./bin/hdfs namenode -format

启动命令

代码语言:javascript
复制
cd /root/apps/hadoop-3.1.1
./sbin/start-dfs.sh
./sbin/start-yarn.sh

测试地址

http://Jack20:50070

http://Jack20:8088

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档