文中实验须要使用如下软件:html
为了方便安装软件,咱们设置yum源为公司yum源linux
[root@lvs ~]# vim /etc/yum.repos.d/XXX.repo
[root@lvs ~]# yum makecache
分别为算法
以上系统均为CentOS7
,所用虚拟软件为Virtual Box
。shell
能够经过先建立一台虚机后,逐个复制的方法来快速建立虚机。apache
记得勾选“从新初始化全部网卡的MAC地址(R)”vim
全部虚机均启用两个网卡,以下图所示,链接方式
选择未指定
。服务器
之因此选择
未指定
方式是为了后面在GSN中方便连线网络
为了方便管理,咱们后面会将eth0
,即第一个网卡用于内部;相对的,eth1
,即第二个网卡用于外部。curl
按照下图所示的方式链接各台虚机,图中所示的IP
及网卡链接方式
都可先忽略,后面会讲述。 url
在GSN中的RS1
图标上右击,选择Configure
而后,在
network
选项卡中,设置Adapters
为1
其实对于RS1而言,上面的操做不作也能够...可是当须要启用外部网卡
eth1
的时候,就须要设置Adapters
为2了。
网卡1
的链接方式
选择仅主机(Host Only)网络
。
咱们先来看下网卡信息,输入ip addr
指令能够看到
固然,我这里是已经设置后的情形,设置前稍有不一样,不过咱们能够看到网卡1
的名称应该为enp0s3
, 因此咱们能够这样来修改网卡1
的配置
[root@rs1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-enp0s3 TYPE="Ethernet" PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static IPADDR=192.168.30.17 PREFIX=24 GATEWAY=192.168.30.200 DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE=stable-privacy NAME="enp0s3" DEVICE="enp0s3" ONBOOT="yes"
这里须要注意将其网关设置为192.168.30.200
,即LVS
的内部地址。
修改后经过service network restart
指令来使新配置生效。
[root@rs1 ~]# service network restart Restarting network (via systemctl): [ 肯定 ]
为了方便后面访问lvs时候知道访问到了哪台机器,咱们在每台RS上都安装apache服务,以开放80端口服务。
# 安装apache服务 [root@rs1 ~]# yum install -y httpd # 启动apache服务 [root@rs1 ~]# httpd
修改默认主页内容为RS1
[root@localhost rs1]# echo RS1 > /var/www/html/index.html
为了方便区分,在两台不一样的RS上,咱们须要输入不一样的内容。
可使用 setenforce 0
来临时关闭防火墙,可是重启电脑后会失效
[root@rs1 ~]# getenforce Enforcing [root@rs1 ~]# setenforce 0 [root@rs1 ~]# getenforce Permissive
[root@rs1 ~]# vim /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=enforce # SELINUXTYPE= can take one of three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
把SELINUX=enforce 改为disabled就能够了,重启电脑reboot
,永久生效
[root@rs1 ~]# reboot # 输入上面的命令后Xshell断开链接 [root@rs1 ~]# Connection closing...Socket close. Connection closed by foreign host. Disconnected from remote host(本机CentOS) at 15:31:57. # 再次开机后 [root@rs1 ~]# getenforce Disabled
关闭firewall
此外还须要执行下面的命令
# 查看防火墙状态 firewall-cmd --state # 临时关闭防火墙 systemctl stop firewalld.service # 永久关闭防火墙 systemctl disable firewalld
这样一来RS1
便设置好了。
与设置RS1虚机方式相似,只是要记住
IPADDR
为192.168.30.27
RS2
LVS须要设置的内容比较多,咱们先把共性的地方设置了
同RS服务器设置,再也不多说
与RS相似,可是不须要配置网关了
[root@lvs ~]# vim /etc/sysconfig/network-scripts/ifcfg-enp0s3 TYPE="Ethernet" PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static IPADDR=192.168.30.200 PREFIX=24 DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE=stable-privacy NAME="enp0s3" DEVICE="enp0s3" ONBOOT="yes"
LVS须要一个网卡用于链接外部网络,故须要额外设置。
网卡2的链接方式
须要在Virtual Box
中改成桥接模式
。
而且修改网卡2的配置文件:
[root@lvs ~]# vim /etc/sysconfig/network-scripts/ifcfg-enp0s8 DEVICE="enp0s8" BOOTPROTO="none" IPADDR=172.20.0.200 PREFIX=24
你机器上的网卡二可能不叫
enp0s8
,同前文同样ip addr
能够查看网卡的名字。
service network restart
重启服务后,网卡改动生效。
linux 内核自带了 ipvs,可是ipvsadm
仍是要咱们本身安装的。
[root@lvs ~]# yum -y install ipvsadm ... 已安装: ipvsadm.x86_64 0:1.27-7.el7 完毕!
检查是否安装成功
[root@lvs yum.repos.d]# ipvsadm IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn
看到如上内容,安装就成功了
[root@lvs ~]# echo 1 >/proc/sys/net/ipv4/ip_forward [root@lvs ~]# echo net.ipv4.ip_forward = 1 >> /etc/sysctl.conf [root@lvs ~]# sysctl -p net.ipv4.ip_forward = 1
#建立一个集群服务,调度算法rr [root@lvs ~]# ipvsadm -A -t 172.20.0.200:80 -s rr #添加rs1 nat方式 [root@lvs ~]# ipvsadm -a -t 172.20.0.200:80 -r 192.168.30.17 -m #添加rs2 nat方式 [root@lvs ~]# ipvsadm -a -t 172.20.0.200:80 -r 192.168.30.27 -m
Client虚机的配置方式很简单,毕竟它只是用来访问LVS的,咱们只须要配置他的网卡2信息就好。
配置方式和LVS
网卡2的配置方式类似,只是要注意:
IPADDR
为172.20.0.123
service network restart
重启服务后,网卡改动生效。
咱们只要在Client机器上访问LVS机器的外部网卡IP便可。
[root@client ~]# curl 172.20.0.200 RS1 [root@client ~]# curl 172.20.0.200 RS2
若是能依次出现“RS1”和“RS2”,那就说明咱们搭建成功了!