1. 环境介绍
基于VMware构建Linux虚拟机
① 是大数据从业者或IT从业者的必备技能之一
② 是成本低廉的方案
2. VMware准备虚拟机
① 设置VMware网段
② 下载Centos操作系统
③ 在VMware中安装Centos操作系统
④ 配置多台Linux虚拟机
3. VMware虚拟机系统设置
3.1 主机名、IP、SSH免密登录
对三台虚拟机完成主机名、固定IP、SSH免密登录等系统设置
3.1.1 配置固定IP地址
① 开启node1,修改主机名为node1,并修改固定ip
# 修改主机名 hostnamectl set-hostname node1; # 修改IP地址 vim /etc/sysconfig/network-scripts/ifcfg-ens33 IPADDR="192.168.88.101" #重启网卡 systemctl restart network
同样的操作启动node2和node3
修改node2主机名为node2,设置ip为192.168.88.102
修改node3主机名为node3,设置ip为192.168.88.103
3.1.2 配置主机名映射
① 在Windows系统中修改hosts文件,填入如下内容:
192.168.88.101 node1 192.168.88.102 node2 192.168.88.103 node3
② 在3台Linux的/etc/hosts文件中填入以下内容
192.168.88.101 node1 192.168.88.102 node2 192.168.88.103 node3
3.1.3 配置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用户间的免密互通
3.1.4 创建hadoop用户并配置免密登录
后序大数据的软件,将不以root用户启动
我们将大数据的软件创建一个单独的用户hadoop,并为三台服务器同样配置hadoop用户的免密互通
① 在每一台机器执行:
useradd hadoop #创建hadoop用户
② 在每一台机器执行:
passwd hadoop #设置hadoop用户密码为123456
③ 在每一台机器执行:
su - hadoop #切换到hadoop用户
④ 在每一台机器执行:
ssh-keygen -t rsa -b 4096
⑤ 在每一台机器执行:
ssh-copy-id node1 ssh-copy-id node2 ssh-copy-id node3
3.2 JDK环境部署
对三台虚拟机完成JDK环境部署
3.2.1 配置JDK环境
① 创建文件夹,用来部署JDK
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环境变量
# 编辑/etc/profile文件 export JAVA_HOME=/export/server/jdk export PATH=$PATH:$JAVA_HOME/bin
⑤ 生效环境变量
source /etc/profile
⑥ 配置java执行程序的软链接
# 删除系统自带的java程序 rm -f /usr/bin/java # 软链接我们自己安装的java程序 ln -s /export/server/jdk/bin/java /usr/bin/java
⑦ 执行验证
java -version javac -version
3.3 防火墙、SELinux、时间同步
对三台虚拟机完成防火墙、SELinux、时间同步等系统设置
3.3.1 关闭防火墙和SELinux
集群化软件之间需要通过端口互相通讯,为了避免出现网络不通的问题,我们可以简单在集群内部关闭防火墙
① 在每一台机器执行:
systemctl stop firewalld systemctl disable firewalld
Linux有一个安全模块:SELinux,用以限制用户和程序的相关权限,来确保系统的安全稳定。
在当前,我们需要关闭SELinux功能,避免导致后面的软件运行出现问题
② 在每一台机器执行:
vim /etc/sysconfig/selinux # 将第七行SELINUX=enforcing 改为 SELINUX=disabled
3.3.2 修改时区并配置自动时间同步
① 在每一台机器执行:
yum install -y ntp #安装ntp软件
② 更新时区
rm -f /etc/localtime;sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
③ 同步时间
ntpdate -u ntp.aliyun.com
④ 开启ntp服务并设置开机自启
systemctl start ntpd systemctl enable ntpd
4. 总结
- 设置三台Linux的主机名和固定IP
- 在Linux系统以及本机中配置了主机名映射
- 配置了三台服务器之间root用户的SSH免密互通
- 安装配置完成了JDK环境
- 关闭了防火墙和SELinux
- 更新了时区和同步了时间
- 拍摄快照保存状态