美文网首页
文档需要---记一次keepalived 测试

文档需要---记一次keepalived 测试

作者: 一个热爱生活的好少年 | 来源:发表于2019-11-19 11:06 被阅读0次

LVS+Keepalived

image.png

实验环境:

1.Win10下的VMware 的虚拟机

2.网络链接模式:桥接

3.系统:centos7最小化安装

4.nginx服务也是设置在lvs上

基础准备工作:

1) 绑定静态IP地址/设定主机名 重启服务后ping下百度以及下面看是否通了

192.168.1.232 lvs-master

192.168.1.231 lvs-slave

2) IP地址与主机名的绑定 /etc/hosts

3) 关闭防火墙 service iptables stop(有就关)

配置两台Web服务器

  1. 安装nginx

快速安装方式:登陆官网<u>http://nginx.org/en/linux_packages.html#stable</u>

image.png

Vim /etc/yum.repos.d/nginx.repo

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/7/$basearch/

gpgcheck=0

enabled=1

保存后 yum install nginx 即可。

启动服务:nginx -c 到配置文件 这里 nginx –c /etc/nginx/nginx.conf

即可看到:为了区别两台nginx 可在html下的index 进行修改

image.png

设置VIP

1、 分别在backup lvs和master lvs上安装lvs

2、

安装方式1:直接yum install ipvsadm

安装方式 2:源码包安装

  1. wget <u>http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz</u>

安装依赖:yum groupinstall 'Development tools' -y

yum install libnl* popt* -y

解压tar包

Make make install 就好了

3.安装好ipvsadm后

①进入指定文件夹:cd /etc/init.d/

②编辑脚本文件:vim realserver.sh


SNS_VIP=192.168.1.230

/etc/rc.d/init.d/functions

case "$1" in

start)

       ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP

       /sbin/route add -host $SNS_VIP 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

       sysctl -p >/dev/null 2>&1

       echo "RealServer Start OK"

       ;;

stop)

       ifconfig lo:0 down

       route del $SNS_VIP >/dev/null 2>&1

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

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

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

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

       echo "RealServer Stoped"

       ;;

*)

       echo "Usage: $0 {start|stop}"

       exit 1

esac

exit 0

这里我们设置vip为1.230

chmod 755 realserver 修改权限后 我们执行改脚本即可。

/这个脚本之前需要 安装下ifconfig 不然无法使用 yum install net-tools 最小化安装无ifconfig。

配置主负载服务器

(1) 安装Keepalived相关包:yum install -y keepalived 源码包安装同上

(2) 编辑keepalived.conf配置文件

①进入keepalived.conf所在目录:cd /etc/keepalived


global_defs {

   notification_email {

         edisonchou@hotmail.com

   }

   notification_email_from sns-lvs@gmail.com

   smtp_server 192.168.80.1

   smtp_connection_timeout 30

   router_id LVS_DEVEL  # 设置lvs的id,在一个网络内应该是唯一的

}

vrrp_instance VI_1 {

    state MASTER   #指定Keepalived的角色,MASTER为主,BACKUP为备

    interface eno16777736  #这个是出口网卡与外网相连的网卡一致。 

    virtual_router_id 51  #虚拟路由编号,主备要一致

    priority 100  #定义优先级,数字越大,优先级越高,主DR必须大于备用DR

    advert_int 1  #检查间隔,默认为1s

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.1.230  #定义虚拟IP(VIP)为192.168.2.33,可多设,每行一个

    }

}

# 定义对外提供服务的LVS的VIP以及port

virtual_server 192.168.1.230 80 {

    delay_loop 6 # 设置健康检查时间,单位是秒

    lb_algo wrr # 设置负载调度

    lb_kind DR # 设置LVS实现负载的机制,有NAT、TUN、DR三个模式

    nat_mask 255.255.255.0

    persistence_timeout 0

    protocol TCP

    real_server 192.168.1.232 80 {  # 指定real server1的IP地址

        weight 3   # 配置节点权值,数字越大权重越高

        TCP_CHECK {

        connect_timeout 10

        nb_get_retry 3

        delay_before_retry 3

        connect_port 80

        }

    }

    real_server 192.168.1.231 80 {  # 指定real server2的IP地址

        weight 3  # 配置节点权值,数字越大权重越高

        TCP_CHECK {

        connect_timeout 10

        nb_get_retry 3

        delay_before_retry 3

        connect_port 80

        }

     }

}

启动keepalived:service keepalived start

配置完成后:ip a 虚拟ip必须在你对外网卡上才算成功。

image.png

配置从负载服务器:

从负载服务器与主负载服务器大致相同,只是在keepalived的配置文件中需要改以下两处:

(1)将state由MASTER改为BACKUP

(2)将priority由100改为99

查看进程是否完全启动:

image.png

即可得到:

image.png image.png

相关文章

  • 文档需要---记一次keepalived 测试

    LVS+Keepalived 实验环境: 1.Win10下的VMware 的虚拟机 2.网络链接模式:桥接 3.系...

  • keepalived用脚本实现切换

    思路: 平时做好了keepalived单主或者双住架构后,我们在测试的时候经常需要手动去停止keepalived服...

  • 2019-04-26

    测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测试文档测...

  • keepalived安装文档

    1. 安装环境 su - root yum -y install kernel-devel* yum -y ins...

  • keepalived

    1:keepalived安装 keepalived安装教程 注:脚本需要设置为相关权限

  • web测试流程

    项目的测试流程大只包含的几个阶段:立项、需求评审、用例评审、测试执行、测试报告文档 一、立项后测试需要拿到的文档1...

  • Ubuntu 18.04.3 LTS keepalived 启动

    Ubuntu16.04下KeepAlived+Nginx 布署 最近需要用keepalived+redis,搭建r...

  • Xshell连接虚拟机中的CentOS

    因配置ng+keepalived环境,需要多台机器测试,所以用虚拟机配置一台centos环境,但在虚拟机中操作很不...

  • 二进制安装-k8s高可用集群07-部署高可用组件

    本文档讲解使用 keepalived 和 haproxy 实现 kube-apiserver 高可用的步骤: ke...

  • 2019-11-04

    1.1为什么需要软件测试? 测试流程:(1)将所有的经理根据客户需求来编写需求文档 (2)开发根据需求文档来编写代...

网友评论

      本文标题:文档需要---记一次keepalived 测试

      本文链接:https://www.haomeiwen.com/subject/yvlwictx.html