CentOS6.4 LVS+keepalived高可用负载均衡服务配置

简介: <p style="color:rgb(85,85,85)"><span style="font-size:24px; color:#4f81bd"><strong>CentOS6.4 LVS+keepalived高可用负载均衡服务配置</strong></span></p> <p style="color:rgb(85,85,85)"> </p> <p style="color:rg

CentOS6.4 LVS+keepalived高可用负载均衡服务配置

 

 

一:测试环境信息

服务器DELL-R720

虚拟化 KVM

虚拟机4台: ipvs01ipvs02web01web02

[root@KVM01~]# virsh list

 Id    Name                           State

----------------------------------------------------

 1     SN-web01                    running

 2     SN-web02                    running

 3     SN-ipvs01                    running

 4     SN-ipvs02                    running

 

网络环境:

Ipvs01:192.168.40.90

Ipvs02:192.168.40.91

Web01:192.168.40.86

Web02:192.168.40.87

Vip:192.168.40.6

 

系统版本:

物理机CentOS6.4 64bit

虚拟机CentOS6.4 64bit

二:服务配置

软件包6.4系统已经自带ipvs1.25keepalived1.2.7 测试用yum自行安装。

 

LVS服务器ipvs01配置:

[root@ipvs01 ~]# yum list >yum.list

[root@ipvs01 ~]# cat yum.list|grep ipvs

ipvsadm.x86_64                         1.25-10.el6                       @base

[root@ipvs01 ~]# cat yum.list |grep keepalived

keepalived.x86_64                       1.2.7-3.el6                        @base

[root@ipvs01 ~]#yum install ipvsadm keepalived

[root@ipvs01 ~]#ipvsadm

[root@ipvs01 ~]#lsmod |grep ip_vs  查看模块是否加载成功

ip_vs_rr                1420  1

ip_vs_wrr               2179  0

ip_vs                 115643  5 ip_vs_rr,ip_vs_wrr

libcrc32c               1246  1 ip_vs

ipv6                  321422  11 ip_vs

[root@ipvs01 ~]#cd /etc/keepalived/

[root@ipvs01 ~]#cp -a keepalived.conf ./keepalived.bak

[root@ipvs01 ~]#vi keepalived.conf

 

 

! Configuration File for keepalived

 

global_defs {

   notification_email {

     acassen@firewall.loc

     failover@firewall.loc

     sysadmin@firewall.loc

   }

   notification_email_from Alexandre.Cassen@firewall.loc

   smtp_server 192.168.200.1

   smtp_connect_timeout 30

   router_id LVS_MASTER

}

 

vrrp_instance VI_1 {

    state MASTER   #角色主MASTER,备服务器改为BACKUP

    interface eth0   #HA侦听接口

    virtual_router_id 51   #虚拟路由标记ID,同一组vrrp一致

   priority 100   #优先级自定义,MASTER高于BACKUP即可

    advert_int 1   #HA 侦听间隔:1

    authentication {   #认证形式

        auth_type PASS   #认证类型PASSPASS/AH 2种可选

        auth_pass 1111   #认证密码,同一组vrrp密码一致

    }

    virtual_ipaddress {   #虚拟服务地址,可以多个,分多行

        192.168.40.6

    }

}

 

virtual_server 192.168.40.6 80 {   #虚拟服务地址和端口

    delay_loop 6   #运行情况检查,单位秒

    lb_algo rr   #负载调度算法,RR为轮询

    lb_kind DR   #LVS负载工作模式为DR,三大模式NAT,TUN,DR

    nat_mask 255.255.255.0   #网络掩码

    #persistence_timeout 50   #会话保持时间,50秒内分配同一节点,测试时候为了查看均衡效果可以先注释掉

    protocol TCP    #协议类型TCP/UDP

 

    real_server 192.168.40.86 80 {   #配置真实服务器节点IP和端口

        weight 5            #权值大小,越大权值越高

        TCP_CHECK {           #realserver 状态检测时间,单位秒

            connect_timeout 3           #连接超时时间3

            nb_get_retry 3                  #重试次数:3

            delay_before_retry 3       #重试间隔

            connect_port 80                #连接端口

            }

    }

real_server 192.168.40.87 80 {

        weight 5

        TCP_CHECK {

            connect_timeout 3

            nb_get_retry 3

            delay_before_retry 3

            connect_port 80

        }

    }

}

 

备服务器ipvs02上将主服务器配置文件复制过去,然后修改2处:

state BACKUP

priority 100

其他保持不变。

 

三:服务节点配置:

Web01web02 http服务安装略

[root@web01 ~]# cat /var/www/html/index.html

<h1>WEB01/192.168.40.86</h1>

[root@web02 ~]# cat /var/www/html/index.html

<h1>WEB02/192.168.40.87</h1>

 

web01web02上分别运行脚本

ifconfig lo:0 192.168.40.6 netmask 255.255.255.0 up    

route add -host 192.168.40.6 dev lo:0       

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore       

echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce       

echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore       

echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

 

执行完毕后查看路由有一条虚拟IP的路由指向lo接口

[root@web01 ~]# route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.40.6    0.0.0.0         255.255.255.255 UH    0      0        0 lo

 

四:测试LVS

ipvs01ipvs02 keepalived服务启动

web01web02 http服务启动

在主LVS服务器上查看lvs状态如下 说明配置生效

[root@ipvs01 ~]# ipvsadm -ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn

TCP  192.168.40.6:80 rr persistent 50

  -> 192.168.40.86:80             Route   5      0          0        

  -> 192.168.40.87:80             Route   5      0          0 

 

ip a 命令来看 虚拟IP现在是在ipvs01上的,而从服务器上ip a没有虚拟IP

[root@ipvs01 ~]# ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

    inet 127.0.0.1/8 scope host lo

    inet6 ::1/128 scope host

       valid_lft forever preferred_lft forever

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

    link/ether 52:54:00:06:88:f4 brd ff:ff:ff:ff:ff:ff

    inet 192.168.40.90/24 brd 192.168.40.255 scope global eth0

    inet 192.168.40.6/32 scope global eth0

    inet6 fe80::5054:ff:fe06:88f4/64 scope link

       valid_lft forever preferred_lft forever

 

>测试负载均衡效果:

打开浏览器测试:

刷新一下

 

>测试一下HA效果

ipvs01 keepalived服务器停掉,然后查看ipvs02 ip a状态

[root@ipvs01 ~]# /etc/init.d/keepalived stop

Stopping keepalived:                                       [  OK  ]

[root@SN349_ipvs02 ~]# ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

    inet 127.0.0.1/8 scope host lo

    inet6 ::1/128 scope host

       valid_lft forever preferred_lft forever

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

    link/ether 52:54:00:45:f8:78 brd ff:ff:ff:ff:ff:ff

    inet 192.168.40.91/24 brd 192.168.40.255 scope global eth0

    inet 192.168.40.6/32 scope global eth0

    inet6 fe80::5054:ff:fe45:f878/64 scope link

       valid_lft forever preferred_lft forever

 

此时ipvs02绑定了虚拟IP 顶替了ipvs01的服务。

 

相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
13天前
|
运维 算法 Linux
LVS详解(四)——LVS安装与配置命令
LVS详解(四)——LVS安装与配置命令
15 2
|
1月前
|
弹性计算 负载均衡 容灾
slb配置后端服务器组
配置阿里云SLB后端服务器组涉及四个主要步骤:创建服务器组、添加ECS实例、关联监听规则和设定负载均衡策略。这使得流量根据业务需求和服务器特性进行转发,便于应用架构的灵活管理和扩展,支持蓝绿部署、灰度发布,并通过多可用区提升系统可用性和容灾能力。
25 3
|
22小时前
|
负载均衡 监控 Linux
CentOS6.5高可用集群LVS+Keepalived(DR模式)
CentOS6.5高可用集群LVS+Keepalived(DR模式)
|
23小时前
|
运维 网络协议 Linux
【运维系列】Centos7安装并配置PXE服务
PXE是Intel开发的预启动执行环境,允许工作站通过网络从远程服务器启动操作系统。它依赖DHCP分配IP,DNS服务分配主机名,TFTP提供引导程序,HTTP/FTP/NFS提供安装源。要部署PXE服务器,需关闭selinux和防火墙,安装dhcpd、httpd、tftp、xinetd及相关服务,配置引导文件和Centos7安装源。最后,通过syslinux安装引导文件,并创建pxelinux.cfg/default配置文件来定义启动参数。
5 0
|
23小时前
|
运维 网络协议 Linux
【运维系列】Centos7安装并配置postfix服务
安装CentOS7的Postfix和Dovecot,配置Postfix的`main.cf`文件,包括修改完全域名、允许所有IP、启用邮箱等。然后,配置Dovecot的多个配置文件以启用auth服务和调整相关设置。重启Postfix和Dovecot,设置开机自启,并关闭防火墙进行测试。最后,创建邮箱账户并在Windows邮箱客户端中添加账户设置。
8 0
|
1天前
|
Linux 网络安全
Centos6.5安装并配置NFS服务
该内容描述了在Linux系统中设置NFS服务的步骤。首先挂载yum源,然后安装NFS服务,并编辑配置文件。接着,重启rpcbind和NFS服务,可能需要重复此过程以解决初始可能出现的问题。此外,关闭防火墙策略,并再次重启服务。最终,根目录被共享,特定IP网段被允许访问。
6 0
|
14天前
|
网络协议
centos8 网卡 Nmcli(是network的简写 Nmcli)配置网络
centos8 网卡 Nmcli(是network的简写 Nmcli)配置网络
15 0
|
1月前
|
弹性计算 缓存 网络协议
slb配置监听规则
配置Server Load Balancer的监听规则涉及选择协议(如HTTP/HTTPS/TCP/UDP)、设置端口,配置后端服务器组,设定健康检查(TCP或HTTP),定义转发规则(轮询、权重等),配置SSL证书、会话保持及安全优化措施。在阿里云上,这可通过登录控制台,选择SLB实例,添加监听并设置相关参数来完成。不同云服务商的具体步骤可能略有差异,参考官方文档为宜。
33 3
|
1月前
|
运维 Linux 应用服务中间件
Centos7如何配置firewalld防火墙规则
Centos7如何配置firewalld防火墙规则
44 0
|
1月前
|
弹性计算 负载均衡 算法
SLB配置与使用
SLB配置与使用
28 4