LVS搭建

   日期:2020-08-05     浏览:103    评论:0    
核心提示:1.1 LVS-DR的配置及运用1.1.1 基础环境准备LVS调度器只作为WEB访问入口Web访问出口由各个节点服务器分别承担(1)集群拓朴(2) 节点规划主机名IP角色备注DS192.168.79.157 VIP:192.168.79.200LVS负载调度器VIP为LVS的浮动IPRS1192.168.79.161真实服务器1提供WEB服务RS2192.168.79.162真实服务器2提供WEB服务NFS-SER192.168._.

1.1 LVS-DR的配置及运用

1.1.1 基础环境准备

LVS调度器只作为WEB访问入口
Web访问出口由各个节点服务器分别承担

(1)集群拓朴


(2) 节点规划

主机名 IP 角色 备注
DS 192.168.79.157 VIP:192.168.79.200 LVS负载调度器 VIP为LVS的浮动IP
RS1 192.168.79.161 真实服务器1 提供WEB服务
RS2 192.168.79.162 真实服务器2 提供WEB服务
NFS-SER 192.168.79.162 数据共享服务器 提供网页共享数据

此案例WEB服务器选用apache,数据共享服务器选用NFS。

(3)配置主机名

[root@localhost ~]# hostnamectl set-hostname DS
[root@localhost ~]# su -l
[root@localhost ~]# hostnamectl set-hostname RS1
[root@localhost ~]# su -l
[root@localhost ~]# hostnamectl set-hostname RS2
[root@localhost ~]# su -l
[root@localhost ~]# hostnamectl set-hostname NFS-SER
[root@localhost ~]# su -l

(4)处理防火墙

分别在四个节点上执行

systemctl stop firewalld
systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0

(5)同步时钟源

分别在四个节点上执行

yum -y install ntp ntpdate
ntpdate cn.pool.ntp.org
hwclock --systohc

1.1.2 配置NFS数据共享服务器

(1)在nfs-ser上配置服务端

安装服务:

[root@net-ser ~]# yum -y install nfs-utils rpcbind
[root@net-ser ~]# rpm -qa nfs-utils rpcbind
nfs-utils-1.3.0-0.65.el7.x86_64
rpcbind-0.2.0-48.el7.x86_64

配置 exports文件

[root@nfs-ser ~]# cat /etc/exports
/data 192.168.79.0/24(rw,sync)

启动服务

[root@nfs-ser ~]# systemctl restart nfs
[root@nfs-ser ~]# grep nfs /etc/passwd
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
[root@nfs-ser ~]# mkdir /data
[root@nfs-ser ~]# chown -R nfsnobody:nfsnobody /data
[root@nfs-ser ~]# ll -d /data/
drwxr-xr-x 2 nfsnobody nfsnobody 6 8   2 15:25 /data/

本地挂载测试

[root@nfs-ser ~]# mount 192.168.79.156:/data/ /mnt
[root@nfs-ser ~]# ls /data/
[root@nfs-ser ~]# ls /mnt/
[root@nfs-ser ~]# touch /data/a
[root@nfs-ser ~]# ls /data/
a
[root@nfs-ser ~]# ls /mnt/
a
[root@nfs-ser ~]# touch /mnt/b
[root@nfs-ser ~]# ls /data/
a  b
[root@nfs-ser ~]# ls /mnt/
a  b

(2)在rs1,rs2上配置nfs客户端

安装软件

[root@rs1 ~]# yum install nfs-utils -y

本地测试

[root@rs1 ~]# showmount -e 192.168.79.156
Export list for 192.168.79.156:
/data 192.168.79.0/24

在rs2上执行相同的操作

1.1.3 配置WEB服务器

安装服务

[root@rs1 ~]# yum install httpd -y

启动服务

[root@rs1 ~]# systemctl start httpd
[root@rs1 ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service
to /usr/lib/systemd/system/httpd.service.

挂载网页共享目录

[root@rs1 ~]# mount -t nfs 192.168.79.156:/data /var/www/html/
[root@rs1 ~]# vim /etc/fstab
[root@rs1 ~]# mount -a

在sr2上同样执行以上命令。
在nfs服务器上创建测试目录

[root@nfs-ser ~]# vim /data/index.html
[root@nfs-ser data]# cat index.html
<HTML>
<head>
<title>测试</title>
</head>
<body>
<h1>每一发的努力的背后,都有加倍的赏赐!!!</h1>
</body>
</HTML>

网页测试

1.1.4 配置LVS负载调度服务器

(1)在DS节点上配置LVS负载均衡

下载ipvs管理工具

[root@ds ~]# yum install ipvsadm -y

配置LVS

绑定浮动IP
[root@ds ~]# nmcli con sh
NAME   UUID                                  TYPE      DEVICE
ens32  9af3f520-6854-4f68-a7ec-b2e9864064be  ethernet  ens32
[root@ds ~]# nmcli con mod ens32 +ipv4.addr 192.168.79.200/24
[root@ds ~]# systemctl restart network
[root@ds ~]# ipvsadm -A -t 192.168.79.200:80 -s rr
[root@ds ~]# ipvsadm -a -t 192.168.79.200:80 -r 192.168.79.161:80 -g
[root@ds ~]# ipvsadm -a -t 192.168.79.200:80 -r 192.168.79.162:80 -g
[root@ds ~]# ipvsadm -l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  ds:http rr
  -> 192.168.79.161:http          Route   1      0          0
  -> 192.168.79.162:http          Route   1      0          0

调整会话保持
[root@ds ~]# ipvsadm --set 1 2 1

(2)在sr1,sr2上配置网络,绑定服务IP到回环网卡上

[root@rs1 html]# cd /etc/sysconfig/network-scripts/
[root@rs1 network-scripts]# vim ifcfg-lo:10
DEVICE=lo:10
IPADDR=192.168.79.200
NETMASK=255.255.255.255
ONBOOT=yes
[root@rs1 network-scripts]# systemctl restart network

在rs2上做相同的配置

(3)调整内核参数,关闭arp响应

[root@rs1 network-scripts]# vim /etc/sysctl.conf
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2

在rs2上做相同配置

1.1.5 集群功能测试

使用浮动IP访问

重启一个linux客户端测试(192.168.79.160)
执行访问两次

在rs1,rs2上动态打印的日志如下


由此可见,这个轮询效果。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服