大数据集群环境预配置的流程如下:
以三台虚拟机为例搭建大数据集群环境
软件使用:
xshell5
VM8
- 关闭防火墙
- 关闭selinux
- 更改主机名后重启虚拟机
- 配置域名映射
- 设置免密登陆
- 时钟同步
- 三台机器安装jdk
1.三台虚拟机关闭防火墙
service iptables stop
chkconfig iptables off
2.三台虚拟机关闭selinux
逐个关闭三台
vim /etc/selinux/config
注释语句 : SELINUX=enforcing
添加语句 : SELINUX=disabled
按键 i 输入
结束 esc : wq 保存退出
3.三台机器更改主机名
三台机器逐个更改
vim /etc/sysconfig/network
逐个修改
HOSTNAME=node01.hadoop.com
HOSTNAME=node02.hadoop.com
HOSTNAME=node02.hadoop.com
重启后检查(做完下面第四步再重启)
4.三台机器做主机名与IP地址的映射
三台机器逐个打开 vim /etc/hosts
三台机器逐个添加 (192.168的IP地址根据自己的机器修改)
192.168.52.100 node01.hadoop.com node01
192.168.52.110 node02.hadoop.com node02
192.168.52.120 node03.hadoop.com node03
三台机器重启
reboot -h now
5.三台机器免密登录
免密码登录:
第一步:每台机器生成公钥与私钥
第二步:将每台机器的私钥拷贝到同一台机器上面去
第三步:将拷贝后的私钥发给所有其他的机器
ssh-keygen -t rsa
ssh-copy-id node01
more authorized_keys
scp authorized_keys node02:$PWD
检测免密码登录
6.三台机器时钟同步
第一种同步方式:通过网络进行时钟同步
通过网络连接外网进行时钟同步,必须保证虚拟机连上外网
阿里云时钟同步服务器 (三台机器都要)
ntpdate ntp4.aliyun.com
(三台机器定时任务 )每一台都要执行
直接与阿里云服务器进行时钟同步
crontab -e
*/1 * * * * /usr/sbin/ntpdate ntp4.aliyun.com;
(用第一种,不用第二种)
第二种时钟同步方式:通过某一台机器进行同步(不联网)
以192.168.52.100这台服务器的时间为准进行时钟同步
第一步:确定是否安装了ntpd的服务
rpm -qa | grep ntpd
如果没有安装,可以进行在线安装
yum -y install ntpd
启动ntpd的服务
service ntpd start
设置ntpd的服务开机启动
chkconfig ntpd on
第二步:编辑/etc/ntp.conf
编辑第一台机器的/etc/ntp.conf
vim /etc/ntp.conf
在文件中添加如下内容
restrict 192.168.52.0 mask 255.255.255.0 nomodify
注释一下四行内容
#server 0.centos.pool.ntp.org
#server 1.centos.pool.ntp.org
#server 2.centos.pool.ntp.org
#server 3.centos.pool.ntp.org
去掉以下内容的注释,如果没有这两行注释,那就自己添加上
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
配置以下内容,保证BIOS与系统时间同步
vim /etc/sysconfig/ntpd
添加一行内容
SYNC_HWLOCK=yes
第三步:另外两台机器与第一台机器时间同步
另外两台机器与192.168.52.100进行时钟同步
crontab -e
*/1 * * * * /usr/sbin/ntpdate 192.168.52.100
7.三台机器安装jdk
三台都要卸载
rpm -qa | grep java
rpm -e
说明:为了保持我们的安装环境统一和一致,我们这里创建两个约定俗称的文件夹,来进行我们的软件包的存放和软件的安装
所有软件的安装路径
mkdir -p /export/servers
所有软件压缩包的存放路径
mkdir -p /export/softwares
tar -zxvf jdk-8u141-linux-x64.tar.gz -C …/servers/
cd /export/softwares
cd /export/servers
写脚本实现一键安装
vim installjdk.sh
#!/bin/bash
#第一步: jdk拷贝给其他机器
for m in node02 node03
do
scp -r /export/servers/jdk1.8.0_141 $m:/export/servers
done
#第二步 其他机器配置环境变量
for n in node02 node03
do
ssh $n “echo ‘export JAVA_HOME=/export/servers/jdk1.8.0_141’ >> /etc/profile;echo ‘export PATH=:$JAVA
_HOME/bin:$PATH’ >> /etc/profile”
done
sh installjdk.sh
source /etc/profile
jps