文章目录
前言
1.什么是Hadoop
Hadoop是Apache软件基金会下的顶级开源项目,用以提供:
-
分布式数据存储
-
分布式数据计算
-
分布式资源调度
为一体的整体解决方案。
Hadoop是Apache软件基金会下的顶级开源项目,用以提供:
•分布式数据存储
•分布式数据计算
•分布式资源调度
为一体的整体解决方案。
Apache Hadoop是典型的分布式软件框架,可以部署在1台乃至成千上万台服务器节点上协同工作。
个人或企业可以借助Hadoop构建大规模服务器集群,完成海量数据的存储和计算。
所以,学习Hadoop不仅仅因为其适合入门,同时也可以为大数据学习打下良好的基础。
2.什么学习Hadoop
近10年来,大数据技术体系一词一直和Hadoop是划上等号的,提起大数据技术基本就是在提及Hadoop。
随着近些年的发展,越来越多的新技术框架的出现,给大数据技术体系带来了丰富的生态,但是拥有元老地位的Hadoop依旧非常重要。
为什么学习Hadoop有如下几个至关重要的原因:
-
Hadoop是最早的一批大数据技术框架,在市面上拥有极高的占有率和庞大的用户群体。
-
Hadoop在大数据体系内,技术难度相对较低,非常适合作为大数据学习的入门技术栈。
3.Hadoop的功能
通常意义上,Hadoop是一个整体,其内部还会细分为三个功能组件,分别是:
所以,我们会说Hadoop是一个集合了:存储、计算、资源调度为一体的大数据分布式框架。
前置准备
学习目标
- 在虚拟机上构建三台Linux操作系统
- 在三台Linux虚拟机上完成构建集群的前置准备
1.准备工作
- 准备多台Linux虚拟机
- 准备基础的Linux操作环境(SSH免密、防火墙、JDK等)
2.配置多台Linux虚拟机
安装集群化软件,首要条件就是要有多台Linux服务器可用。
我们可以使用VMware提供的克隆功能,基于一台虚拟机去克隆创建多台虚拟机。
-
首先,创建一台CentOS(使用7.6版本)系统的Linux虚拟机,作为基础虚拟机
-
在VMware中新建文件夹,命名为:大数据集群
3. 克隆
4. 同样的操作克隆出:node2和node3
3.配置固定IP地址
开启node1,修改主机名为node1,并修改固定ip为:192.168.88.131
同样的操作启动node2和node3,
修改node2主机名为node2,设置ip为192.168.88.132
修改node3主机名为node3,设置ip为192.168.88.133
4.配置主机名映射
- 在Windows系统中修改hosts文件,填入如下内容:
192.168.88.131 node1
192.168.88.132 node2
192.168.88.133 node3
- 在3台Linux的/etc/hosts文件中,填入如下内容(3台都要添加):
192.168.88.131 node1
192.168.88.132 node2
192.168.88.133 node3
5.配置SSH免密登录
后续安装的集群化软件,多数需要远程登录以及远程执行命令,我们可以简单起见,配置三台Linux服务器之间的免密码互相SSH登陆
-
在每一台机器都执行:
ssh-keygen -t rsa -b 4096
,一路回车到底即可 -
在每一台机器都执行:
ssh-copy-id node1 ssh-copy-id node2 ssh-copy-id node3
-
执行完毕后,node1、node2、node3之间将完成root用户之间的免密互通
6.配置JDK环境
- 登陆Linux系统,切换到root用户
- 通过FinalShell,上传下载好的JDK安装包
- 创建文件夹,用来部署JDK,将JDK解压到:/export/server 内
mkdir -p /export/server
- 解压缩JDK安装文件
tar -zxvf jdk-8u351-linux-x64.tar.gz -C /export/server
- 配置jdk的软链接
ln -s /export/server/jdk1.8.0_351 /export/server/jdk
- 配置JAVA_HOME环境变量,以及将$JAVA_HOME/bin文件夹加入PATH环境变量中
# 编辑/etc/profile文件 export JAVA_HOME=/export/server/jdk export PATH=$PATH:$JAVA_HOME/bin
- 生效环境变量
source /etc/profile
- 配置java执行程序的软链接
# 删除系统自带的java程序 rm -f usr/bn/java # 软链接我们自己的java程序 ln -s /export/server/jdk/bin/java /usr/bin/java
- 执行验证
java -version javac -version
- 关闭防火墙和SELinux
集群化软件之间需要通过端口互相通讯,为了避免出现网络不通的问题,我们可以简单的在集群内部关闭防火墙。在每一台机器都执行:systemctl stop firewalld systemctl disable firewalld
Linux有一个安全模块:SELinux,用以限制用户和程序的相关权限,来确保系统的安全稳定。
在当前,我们只需要关闭SELinux功能,避免导致后面的软件运行出现问题即可.
总结
以上就是今天要讲的内容,本文详细介绍了hadoop环境搭建前的准备工作。