1、前言
学习大数据需要准备3台服务器,这里我们在VMWare创建3台虚拟机来搭建大数据集群环境
如果本地服务器条件不允许,可以考虑云环境,如阿里云
2、搭建大数据集群
我们准备安装3台虚拟机,一个主节点,两个从节点。
主节点 4G内存;从节点2G内存
2.1、安装VMWare虚拟机
注:这里省略,怎么安装虚拟机在网上找找相关材料,有好心人会分享相关教程!
2.2、虚拟机系统设置
目标:
1、设置主机名、IP、SSH免密登录
2、安装jdk8环境
3、防火墙、SELinux、时间同步
所有的机器都需要做相同的设置,一遍遍来的话,步骤有些繁杂。我们在一台机器上做好各种配置修改、环境安装等操作,然后克隆出2台机器,仅作微调即可。
2.2.1、主机名、IP、SSH免密登录设置
- 前置条件
CentOS系统默认是没有开启网络配置的,需要我们手动打开
路径:cd /etc/sysconfig/network-scripts/
查看当前目录
修改配置
ONBOOT=yes # 设置为yes,打开网络配置
需要系统重启才能配置生效
通过ifconfig指令查看网络配置信息
网络环境设置
目标:我们这里将虚拟机的ip设置为静态ip,配置主机名,方便机器之间访问互通
将三台机器的静态ip设置如下:
node1:192.168.200.201
node1:192.168.200.202
node1:192.168.200.203
- 配置虚拟机静态ip
打开终端,输入“vim /etc/sysconfig/network-scripts/ifcfg-ens33”,修改文件内容
#node1 - ip
IPADDR=192.168.200.201
NETMASK=255.255.255.0
#gateway
GATEWAY=192.168.200.2
#dns
DNS1=192.168.200.2
- 修改VMware虚拟机网络编辑器–修改虚拟机为静态ip
修改vmnet8
通过reboot命令重启虚拟机,让网络配置生效。
设置主机映射
- 设置node1的主机名
# 查看主机名
hostname
# 设置主机名,添加如下内容:
vim /etc/hostname
node1 # 保存退出
修改后,重启立即生效
- windows设置
在Windows系统中修改hosts文件,填入如下内容
路劲:C:\Windows\System32\drivers\etc
# 大数据集群主机名映射
192.168.200.201 node1
192.168.200.202 node2
192.168.200.203 node3
- node1的hosts设置
# 语法
vim /etc/hosts
添加如下内容即可!
# 大数据集群主机名映射
192.168.200.201 node1
192.168.200.202 node2
192.168.200.203 node3
- 测试Win主机与虚拟机之间的互通性
配置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用户之间的免密互通
- 创建hadoop用户并配置免密登录
后续大数据的软件,将不会以root用户启动(确保安全,养成良好的习惯)
我们为大数据的软件创建一个单独的用户hadoop,并为三台服务器同样配置hadoop用户的免密互通
1、在每一台机器执行:useradd hadoop,创建hadoop用户
2、 在每一台机器执行:passwd hadoop,设置hadoop用户密码为123456
3、 在每一台机器均切换到hadoop用户:su - hadoop,并执行ssh-keygen -t rsa -b 4096
,创建ssh密钥
4、在每一台机器均执行
ssh-copy-id node1
ssh-copy-id node2
ssh-copy-id node3
2.2.2、安装jdk8环境
见安装说明Linux下安装jdk8
2.2.3、防火墙、SELinux、时间同步
1、这里我们简单粗暴直接关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
2、Linux有一个安全模块:SELinux,用以限制用户和程序的相关权限,来确保系统的安全稳定。在当前,我们只需要关闭SELinux功能,避免导致后面的软件运行出现问题即可
3、修改时区并配置自动时间同步
1. 安装ntp软件
yum install -y ntp
2. 更新时区
rm -f /etc/localtime;sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
3. 同步时间
ntpdate -u ntp.aliyun.com
4. 开启ntp服务并设置开机自启
systemctl start ntpd
systemctl enable ntpd
3、克隆2台从节点
从node1主节点克隆出两台机器node2、node3
- 选择完整克隆
- 修改内存设置,仅分配2G即可
- 修过网络配置
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改IPADDR 为192.168.200.202
- 修改主机名
# 查看主机名
hostname
# 设置主机名,添加如下内容:
vim /etc/hostname
node2 # 保存退出
重启系统,使配置生效!
- node3机器也是同样的设置,这里就不再过多赘述!
4、测试集群内各机器之间的互通性
在node1机器ping node2、node3
5、拍摄快照
目前Linux虚拟机的状态基本准备就绪,可以对当前状态进行快照保存,以备后续恢复。对三台虚拟机均执行拍摄快照。