我们将在VMware下搭建一个学习用的简易集群:
一、CentOS 7 安装:
Ⅰ、虚拟机创建
Ⅱ、CentOS终端版系统安装
二、集群搭建
Ⅰ、分配局域网IP
Ⅱ、VMware虚拟机网络配置:
Ⅲ、IP配置
① Windows端:
② CentOS端
Ⅳ、增加域名映射
① CentOS端
② Windows端:
Ⅴ、CentOS配置网络服务
Ⅵ、网络连通性测试
① CentOS端
② Windows端:
Ⅶ、相关安装配置
㈠ 配置SecureCRT远程连接
㈡ 临时关闭防火墙
① Windows端
② CentOS端
㈢ 设置时间同步
㈣ 安装SecureCRT文件传输插件
㈤ 安装JDK
1.JDK下载安装
2.为JDK配置环境变量
3.JDK安装测试:
-------------------------- 一台CentOS机器安装配置完毕 ------------------------
Ⅷ、克隆得到多个已配置系统
1.克隆centos7-01
2.对克隆系统进行相应配置修改
Ⅸ、各节点免密钥登陆
1.配置SSH
2.SSH连通测试
需要先下载安装好VMware并下载好CentOS 7 DVD版(及完整版)的.ios镜像文件
1、VMware创建新的虚拟机
2、选择自定义并点击下一步:
3、点击下一步:
4、选择稍后安装操作系统并点击下一步:
5、客户机操作系统选择Linux(L),版本选择CentOS 7 64位版并点击下一步:
6、输入虚拟机名称和位置,点击下一步:
7、处理器配置保持默认并点击下一步:
8、虚拟机内存配置保持默认的1G,点击下一步:
9、网络类型选择使用网络地址转换(NAT),点击下一步:
10、IO控制器类型和磁盘类型均保持默认选项,点击下一步:
11、磁盘选择创建新的虚拟磁盘:
12、磁盘大小保持默认20G,点击下一步:
13、点击下一步:
14、点击完成,完成虚拟机的创建:
1、将下载好的CentOS 7 镜像文件添加到刚创建好的虚拟机的DVD中:
点击浏览并选择下载好的CentOS 7 镜像文件,点击确定:
2、开启虚拟机:
3、安装选择
选择Install CentOS7:
4、语言设置
选择English,并点击Continue:
5、时区设置
点击DATE&TIME
点击地图上中国的位置得到上海(Shanghai)时区,点击Done:
6、软件选择
本次我们选择安装终端版,故SOFTWARE-->SOFTWARE SELECTION保持默认,即最小化安装
7、磁盘分区
选择SYSTEM-->INSTALLATION DESTNATION
在Other Storage Options 选择I will configure parttioning(自主分区),点击Done:
⭐按照以下步骤进行分区:
①选择 Standard Partition
②点击下面的 +
①在Mount Point选择类型,如 /
②在Desired Capacity输入要分配的大小,如10240m(或10g)
③点击 Add mount point 完成添加
重复以上步骤,最终添加以下分区:
类型 大小 / 10g /boot 300m swap 1024m
《----- 可适当分配大些
《----- /boot 200m~300m即可
《----- swap 交换区建议和内存等大小
点击Done完成:
点击接受完成磁盘分区:
8、开始安装
点击Begin Instalation开始安装:
9、设置Root用户密码
点击ROOT PASSWORD
10、添加普通用户
点击USER CREATION
记得勾选 Make this user administrator ,否则无法使用sudo 命令!
11、重启系统
等待安装完成后点击 Reboot 完成安装:
12.修改主机名(hostname)
为方便后续操作我们将通过以下步骤修改主机名
① 打开CentOS7系统,登陆管理员账号(及安装时设置的非root用户,我这里为centos7-01)
② 输入命令以下命令查看当前主机名:
hostname
发现当前主机名为localhost.localdomain
输入以下命令修改主机名:
sudo hostnamectl set-hostname [new hostname]
例如本次我将主机名修改为centos7-01便输入以下命令:
sudo hostnamectl set-hostname centos7-01
输入密码后即可修改成功:
注意 : 需要确保虚拟机网络适配器为NAT模式
集群IP分配表 系统 网关 IP 子网掩码 Windows10 192.168.2.1 192.168.2.2 255.255.255.0 centos7-01 192.168.2.1 192.168.2.128 255.255.255.0 centos7-02 192.168.2.1 192.168.2.129 255.255.255.0 centos7-03 192.168.2.1 192.168.2.130 255.255.255.0
-----------后续IP配置均按照该表进行设置----------------
1.在CentOS关机状态下,选择一个CentOS系统,并点击VMware的编辑选项---》虚拟网络编辑器:
2.选择NAT模式,再点击下面的更改设置增加管理员特权
3.依照下图进行选择:
④中修改项:
将子网IP修改为 :192.168.2.0
将子网掩码修改为 : 255.255.255.0
4.NAT设置
点击NAT设置:
将网关设置为192.168.2.1:
5.DHCP设置
点击DHCP设置:
设置网段为:
起始:192.168.2.128
结束:192.168.2.254:
6.完成虚拟机网络配置
点击确定完成虚拟机网络配置:
依次打开 “我的电脑” ---》属性 ---》更改适配器设置 ---》打开VMnet8 ---》 属性 ---》双击Internet协议版本4 ---》根据设计好的IP分配表配置IP ---》确认修改 完成Windows的配置
1.查看网卡名
打开一个CentOS终端,输入以下命令查看网卡名:
可得知网卡名为ifcfg-ens33 (也可能为其他,但格式同样为ifcfg-xxxxx)cd /etc/sysconfig/network-scripts/ ls
2.编辑网卡
输入以下命令打开网卡配置文件:
- 在上文打开路径基础上的相对路径指令:
sudo vi ./ifcfg-ens33
- 绝对路径指令
sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
得到原始文件内容为:
进行如下配置:
【按a进入编辑模式】
设 BOOTPROTO=static --》 固定IP
设 ONBOOT=yes -----------》 开机后将自动加载改配置
在文件尾部添加:
IPADDR=192.168.2.128 -------------》 配置IP地址
GATEWAY=192.168.2.1 -------------》 配置网关
BROADCAST=192.168.2.255 ------》 配置子网掩码
DNS1=114.114.114.114 ------------》 配置电信的DNS解析器地址
DNS2=8.8.8.8 -----------------------》 配置Google的DNS解析器地址
【保存并推出】【方法一:esc键 shift+z+z】【方法二:esc键 :wq(注意带冒号)】
注 : 这里我们一次性将多个系统的IP映射均添加上去 , 以后克隆机器后就无需再配置这一步
>> 以centos7-01为例 <<
1.输入以下指令:
sudo vi /etc/hosts
2.在文件尾部添加:
192.168.2.128 centos7-01
192.168.2.129 centos7-02
192.168.2.130 centos7-03
保存并退出~
1.打开C:\Windows\System32\drivers\etc\hosts:
2.在文件尾部添加:
192.168.2.128 centos7-01
192.168.2.129 centos7-02
192.168.2.130 centos7-03
保存并退出~
※ 无权限修改?请参考本文:Win10修改host文件
1.网络服务配置修改
在CentOS依次执行:
sudo service NetworkManager stop sudo /etc/init.d/network restart sudo chkconfig NetworkManager off
2.追加本地网关
输入以下命令,打开配置文件:
sudo vi /etc/resolv.conf
在第一行添加: nameserver 192.168.2.1
保存后退出~
3.重启网络
sudo systemctl restart network
1.测试网络连通性
输入命令:
ping www.baidu.com -c 4
CentOS端出现上述结果即网络连通成功~
2.测试与主机的连通性
输入以下命令:
ping 192.168.2.2
出现上述结果表示 Windows >>>>> CentOS 通路正常~
※ 注:若Windows可以ping通CentOS,但CentOS不能ping同Windows可能是因为Windows没有开启网络共享
打开命令行ping刚配置好的CentOS:
ping 192.168.2.128
出现上述结果表示CentOS >>>> Windows通路正常
⭐远程连接centos7-1
连接成功:
在学习时为了方便,需要临时关闭双方的防火墙
按照以下步骤操作即可:
⭐ 使用完毕建议重新打开防火墙!
依次输入以下指令:
sudo systemctl stop firewalld 《------关闭防火墙
sudo systemctl disable firewalld 《------使防火墙不再开启
为了防止多个节点之间通信时,时间不同步造成的服务拒绝
输入以下命令:
sudo yum -y install npt ntpdate 《--- 安装时间插件
sudo ntpdate cn.pool.ntp.org 《--- 设置一个时间同步的服务器
sudo hwclock --systohc 《--- 将时间写入硬盘
附:systohc功能官方描述: -w, --systohc set the hardware clock from the current system time
可以方便文件的传输~
输入指令:
sudo yum install lrzsz
1) 下载JDK8的64位的.rpm版:
2) 通过SecureCRT将其安装包发送到CentOS:
【方法一】:直接在Windows上将文件拖到SecureCRT连接界面
【方法二】:在SecureCRT输入 rz 命令,在打开的窗口中选择文件并上传
注:若从Windows传输文件到CentOS失败并现实 xxxx was skipped 说明对当前文件夹无操作权限,需要通过指令sudo su切换到root用户身份进行传输即可
通过以下命令安装:
sudo rpm -ivh [jdkFileName].rpm
等待jdk安装好之后可以看到当前路径(/usr)多了一个名为java的文件:
输入以下命令打开环境变量配置文件:
sudo vi /etc/profile
在文件最后追加以下配置:
export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
export CLASSPATH=$JAVA_HOME\lib:$CLASSPATH
export PATH=$JAVA_HOME\bin:$PATH
输入以下命令使变量配置立即生效:
sudo source /etc/profile
输入以下命令:
java -version
目标 : 克隆(关机状态下)得到centos7-02、centos7-03:
⭐ 以克隆得到CentOS7-02为例
同理克隆得到centos7-03~
1) 内存 :若内存有限,一般建议,将主节点设置高一些,其他低一些
我将centos7-02和centos7-02内存改为512m
2) hostname 修改为对应的hostname
sudo hostnamectl set-hostname centos7-02
3) IP sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
(1)修改 IPADDR 为自己的IP地址
(2)删除UUID行(唯一值,删除后会自动产生正确的UUID)
修改完后刷新网卡配置 sudo systemctl restart network
ping www.baidu.com -c 4 测试网络连通性
⭐ 设置三个节点之间的 免密钥登录
思路:先生成一个密钥,系统拥有一个私钥,并将一个公钥发给别人,通信时将进行公钥、私钥匹配
① 生成密钥:(输入以下命令后一直按Enter键即可)
sudo ssh-keygen -t rsa
②私钥留给自己:(根据指示输入yes和root密码)
sudo ssh-copy-id localhost
③ 公钥发给别人:
sudo ssh-copy-id 别人的ip
例如 sudo ssh-copy-id centos7-02 <---ip映射
--------------------------------------------------------------依次将三台机器配好---------------------------------------------------------------------------------
以centos7-01为例,依次输入命令:
sudo ssh centos7-02 sudo ssh centos7-03
若能实现自由切换则表明集群配置成功~
⭐⭐⭐ 集群配置成功 ( ̄y▽ ̄)╭ Ohohoho.....⭐⭐⭐