高可用集群keepalived的应用以及部署

1.高可用集群

1.1.集群类型

  • LB:Load Balance 负载均衡

    LVS/haproxy/nginx(http/upstream,stream/upstream)

  • HA : High Point of Failure 高可用集群

    数据库、Redis

  • SPoF:single point Of failure 解决单点故障

    HPC:High performmance computing 高性能集群

1.2.系统可用性

SLA:Service-Level Agreement 服务等级协议(提供服务的企业与客户之间就服务的品质、水准、性能 等方面所达成的双方共同认可的协议或契约)

A = MTBF / (MTBF+MTTR)

99.95%:(60*24*30)*(1-0.9995)=21.6分钟 #一般按一个月停机时间统计

1.3.系统故障

硬件故障:设计缺陷、wear out(损耗)、非人为不可抗拒因素

软件故障:设计缺陷 bug

1.4.实现高可用

提升系统高用性的解决方案:降低MTTR- Mean Time To Repair(平均故障时间) 解决方案:建立冗余机制

  • active/passive 主/备

  • active/active 双主

  • active --> HEARTBEAT --> passive

  • active <--> HEARTBEAT <--> active

1.5.VRRP:Virtual Router Redundancy Protocol

虚拟路由冗余协议,解决静态网关单点风险

  • 物理层:路由器、三层交换机

  • 软件层:keepalived

1.5.1VRRP相关术语

  • 虚拟路由器:Virtual Router

  • 虚拟路由器标识:VRID(0-255),唯一标识虚拟路由器

  • VIP:Virtual IP

  • VMAC:Virutal MAC (00-00-5e-00-01-VRID)

  • 物理路由器:

    • master:主设备

    • backup:备用设备

    • priority:优先级

1.5.2VRRP相关技术

通告:心跳,优先级等;周期性 工作方式:抢占式,非抢占式 安全认证:

  • 无认证

  • 简单字符认证:预共享密钥

  • MD5

工作模式

  • 主/备:单虚拟路由器

  • 主/主:主/备(虚拟路由器1)、备/注(虚拟路由器2),他们互为主备

2.keepalived部署

2.1keepalived简介及功能

简介

Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的高可用解决方案软件。

功能:

基于vrrp协议完成地址流动

为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)

为ipvs集群的各RS做健康状态检测

基于脚本调用接口完成脚本中定义的功能,进而影响集群事务,以此支持nginx、haproxy等服务

2.2keepalived工作原理

keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议。

虚拟路由冗余协议,可以认为是实现路由器高可用的协议,即将N台提供相同功能的路由器组成一个路由器组,这个组里面有一个master和多个backup,master上面有一个对外提供服务的vip(该路由器所在局域网内其他机器的默认路由为该vip),master会发组播,当backup收不到vrrp包时就认为master宕掉了,这时就需要根据VRRP的优先级来选举一个backup当master。这样的话就可以保证路由器的高可用了。

2.3keepalived架构

用户空间核心组件:

vrrp stack:VIP消息通告

checkers:监测real server

system call:实现 vrrp 协议状态转换时调用脚本的功能

SMTP:邮件组件

IPVS wrapper:生成IPVS规则

Netlink Reflector:网络接口

WatchDog:监控进程

控制组件:提供keepalived.conf 的解析器,完成Keepalived配置

IO复用器:针对网络目的而优化的自己的线程抽象

内存管理组件:为某些通用的内存管理功能(例如分配,重新分配,发布等)提供访问权限

2.4keepalived相关文件

  • 软件包名:keepalived

  • 主程序文件:/usr/sbin/keepalived

  • 主配置件:/etc/keepalived/keepalived.conf

  • 配置文件示例:/usr/share/doc/keepalived/

  • UnitFile:/lib/systemd/system/keepalived.service

  • Unit File的环境配置文件:/etc/sysconfig/keepalived

2.6环境

我们基于rhel7

克隆四台rhel7的虚机,分别是

realserver1:172.252.50.110

realserver2:172.25.250.120

KA1:172.252.50.10

KA2:172.25.250.20

VIP:172.25.250.100

关闭防火墙和SElinux

复制代码
realserver1、realserver2主机都下载Apache

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

[root@realserver1 ~]# systemctl enable --now httpd

[root@realserver1 ~]# echo realserver1 - 172.25.250.110 > /var/www/html/index.html

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

[root@realserver2 ~]# systemctl enable --now httpd

[root@realserver2 ~]# echo realserver2 - 172.25.250.120 > /var/www/html/index.html

2.7keepalived虚拟路由管理

2.7.1 ka1主机

复制代码
###KA1和KA2主机下载keepalived

[root@ka1 ~]# yum install keepalived -y

[root@ka2 ~]# yum install keepalived -y



[root@ka1 ~]# rpm -ql | grep keepalived    //查看文件

[root@ka1 ~]# vim /etc/keepalived/keepalived.conf     //keepalived主配置文件

root@ka1 \~\]# systemctl enable --now keepalived.service \[root@ka1 \~\]# ifconfig ![](https://i-blog.csdnimg.cn/direct/a2c128e856bf415793a5e61a2401cd2a.png) #### 2.7.2ka2主机 [root@ka1 ~]# scp /etc/keepalived/keepalived.conf root@172.25.250.20:/etc/keepalived/keepalived.conf //将KA1里面 /etc/keepalived/keepalived.conf 文件内容复制到KA2的/etc/keepalived/keepalived.conf ##然后我们去KA2主机打开/etc/keepalived/keepalived.conf ![](https://i-blog.csdnimg.cn/direct/13459ad688d049c79d6934d82afcb42c.png) [root@ka2 ~]# systemctl enable --now keepalived.service [root@ka2 ~]# ifconfig ![](https://i-blog.csdnimg.cn/direct/e13445ea31594605891538f92b326115.png) 然后我们关闭KA1主机的keepalived,再去KA2主机查看 \[root@ka1 \~\]# systemctl stop keepalived.service ![](https://i-blog.csdnimg.cn/direct/029327ddd087464da613c6a663b94a4c.png) ### 2.8 虚拟路由的通信设定 最开始ka1主机或ka2主机是ping不通VIP的 因为默认情况会把VIP访问功能禁掉 iptables -nL 如果想要实现通信 \[root@ka1 \~\]# vim /etc/keepalived/keepalived.conf ![](https://i-blog.csdnimg.cn/direct/4ccd1ba59cad4976958a1b9e379b1baa.png) ### 2.9日志分离 \[root@ka1 \~\]# vim /etc/sysconfig/keepalived ![](https://i-blog.csdnimg.cn/direct/3b0ddf0e59e64b9e9d04a6c3c608778a.png) \[root@ka1 \~\]# vim /etc/rsyslog.conf ![](https://i-blog.csdnimg.cn/direct/3effceecb0344966a8dc3325f7efd029.png) [root@ka1 ~]# systemctl restart keepalived.service [root@ka1 ~]# systemctl restart rsyslog.service [root@ka1 ~]# ll /var/log/keepalived.log -rw-------. 1 root root 2121218 Aug 12 20:56 /var/log/keepalived.log ### 2.10独立子配置文件 当生产环境复杂时, /etc/keepalived/keepalived.conf 文件中内容过多,不易管理 将不同集群的配置,比如:不同集群的VIP配置放在独立的子配置文件中利用include 指令可以实现包含 子配置文件 \[root@ka1 \~\]# vim /etc/keepalived/keepalived.conf ![](https://i-blog.csdnimg.cn/direct/81952d6362c14865ab9eddc654373a88.png) 然后创建目录 ![](https://i-blog.csdnimg.cn/direct/2c33701fb1a24a77ad8f7d18a7da58c3.png) ![](https://i-blog.csdnimg.cn/direct/467d9509a7324ad78713d9d85cbd36a4.png) ## 3.keepalived企业应用示例 ### 3.1抢占模式和非抢占模式 #### 3.1.1非抢占模式 nopreempt 默认为抢占模式preempt,即当高优先级的主机恢复在线后,会抢占低先级的主机的master角色, 这样会使vip在KA主机中来回漂移,造成网络抖动, 建议设置为非抢占模式 nopreempt ,即高优先级主机恢复后,并不会抢占低优先级主机的master角色 非抢占模块下,如果原主机down机, VIP迁移至的新主机, 后续也发生down时,仍会将VIP迁移回原主机 注意:要关闭 VIP抢占,必须将各 keepalived 服务器state配置为BACKUP **ka1主机** \[root@ka1 \~\]# vim /etc/keepalived/keepalived.conf ![](https://i-blog.csdnimg.cn/direct/e42476518d434aed9fabb6f580e23f85.png) **ka2主机** \[root@ka2 \~\]# vim /etc/keepalived/keepalived.conf ![](https://i-blog.csdnimg.cn/direct/b97afa3f72ba4f119d09207bb2d558d2.png) 然后测试结果就是当ka1关闭keepalived时,VIP就会到ka2主机,然后ka1再次开启keepalived时,VIP不会回到ka1主机,而是继续在ka2主机 #### 3.1.2延时抢占模式 > 抢占延迟模式,即优先级高的主机恢复后,不会立即抢回VIP,而是延迟一段时间(默认300s)再抢回 VIP > > preempt_delay # #指定抢占延迟时间为#s,默认延迟300s > > 注意:需要各keepalived服务器state为BACKUP,并且不要启用 vrrp_strict ka1主机配置 vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 20 priority 100 #优先级高 preempt_delay 10s #抢占延迟10s advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.25.250.100/24 dev eth0 label eth0:1 } } #KA2主机配置 vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 20 priority 80 #优先级低 advert_int 1 preempt_delay 10s #抢占延迟10S authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.25.250.100/24 dev eth0 label eth0:1 } } 然后我们做完延时抢占模式实验后建议把延时注释掉,不然会影响后面实验 ### 3.2VIP单播配置 默认keepalived主机之间利用多播相互通告消息,会造成网络拥塞,可以替换成单播,减少网络流量 注意:启用 vrrp_strict 时,不能启用单播 > #在所有节点vrrp_instance语句块中设置对方主机的IP,建议设置为专用于对应心跳线网络的地址,而非使 用业务网络 > > unicast_src_ip \ #指定发送单播的源IP > > unicast_peer { > > \#指定接收单播的对方目标主机IP > > ...... > > } > > #启用 vrrp_strict 时,不能启用单播,否则服务无法启动,并在messages文件中记录下面信息 **ka1主机** \[root@ka1 \~\]# vim /etc/keepalived/keepalived.conf ![](https://i-blog.csdnimg.cn/direct/ae848b27c40f4b8faed2cce23996e9a6.png) ![](https://i-blog.csdnimg.cn/direct/e4ded3a358834119a98d0b15f44de586.png) **ka2主机** \[root@ka2 \~\]# vim /etc/keepalived/keepalived.conf ![](https://i-blog.csdnimg.cn/direct/a81a1f447b124e7e99cdf5ef98464257.png) 然后我们关掉ka1主机的keepalived \[root@ka1 \~\]# systemctl stop keepalived.service ![](https://i-blog.csdnimg.cn/direct/45ecc811fa03423d997903db10875d1a.png) ### 3.3通知脚本配置 ka1和ka2主机都下载mailx yum install mailx -y qq邮箱通知 ![](https://i-blog.csdnimg.cn/direct/aad2dff4a2d84fb0a3315de664936a87.png) \[root@ka2 \~\]# vim /etc/mail.rc ![](https://i-blog.csdnimg.cn/direct/2386e6a5a8d84f269cea63841a1f5ca2.png) ![](https://i-blog.csdnimg.cn/direct/3dc71b1428034f68840d568f00066d6d.png) **写脚本** [root@ka1 ~]# vim /etc/keepalived/mail.sh #!/bin/bash mail_dst=".....@qq.com" //你自己的qq邮箱 send_message() { mail_sub="$HOSTNAME to be $1 vip move" mail_msg="`date +%F\ %T`: vrrp move $HOSTNAME chage $1 " echo $mail_msg | mail -s "$mail_sub" $mail_dst } case $1 in master) send_message master ;; backup) send_message backup ;; fault) send_message fault ;; *) ;; esac [root@ka1 ~]# chmod +x /etc/keepalived/mail.sh //给脚本执行权限 \[root@ka1 \~\]# vim /etc/keepalived/keepalived.conf ![](https://i-blog.csdnimg.cn/direct/63e838d1e3c94babb9adfa82b43d2a26.png) 然后 /etc/keepalived/mail.sh fualt //你就会收到邮件 \[root@ka1 \~\]# systemctl stop keepalived.service \[root@ka1 \~\]# systemctl restart keepalived.service 你也会收到对应的邮件 ka2主机上一样的操作 ### 3.4双主机 **ka1主机** [root@ka1 ~]# vim /etc/keepalived/keepalived.conf vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 100 priority 100 advert_int 1 #preempt_delay 5s authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.25.250.100/24 dev eth0 label eth0:1 } unicast_src_ip 172.25.250.10 unicast_peer { 172.25.250.20 } } vrrp_instance VI_2 { state BACKUP interface eth0 virtual_router_id 200 priority 80 advert_int 1 #preempt_delay 5s authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.25.250.200/24 dev eth0 label eth0:2 } unicast_src_ip 172.25.250.10 unicast_peer { 172.25.250.20 } } ![](https://i-blog.csdnimg.cn/direct/6feaa04b23e541f79944e466c950adce.png) **ka2主机** [root@ka2 ~]# vim /etc/keepalived/keepalived.conf vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 100 priority 80 advert_int 1 # preempt_delay 5s authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.25.250.100/24 dev eth0 label eth0:1 } unicast_src_ip 172.25.250.20 unicast_peer { 172.25.250.10 } } vrrp_instance VI_2 { state MASTER interface eth0 virtual_router_id 200 priority 100 advert_int 1 # preempt_delay 5s authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.25.250.200/24 dev eth0 label eth0:2 } unicast_src_ip 172.25.250.20 unicast_peer { 172.25.250.10 } } ![](https://i-blog.csdnimg.cn/direct/19d15a3f635a4735bc49d5a5f408fefc.png) **测试** ![](https://i-blog.csdnimg.cn/direct/270ba0a861f9442b904ac071b366dc02.png) ![](https://i-blog.csdnimg.cn/direct/75f2c64f0a10449990d2c27c090f91ac.png) ![](https://i-blog.csdnimg.cn/direct/02efd559a9cc4503a79c256aa8a57cb6.png) ### 3.5实现ipvs的高可用性 #### 3.5.1实现单主机lvs-DR模式 **准备web服务器并使用脚本绑定VIP至web服务器lo网卡** ##rs1主机和rs2主机 [root@realserver1 ~]# yum install httpd -y [root@realserver2 ~]# yum install httpd -y [root@realserver1 ~]# echo realserver1 - 172.25.250.110 > /var/www/html/index.html [root@realserver2 ~]# echo realserver2 - 172.25.250.120 > /var/www/html/index.html #rs1主机 [root@realserver1 ~]# ip a a 172.25.250.100/32 dev lo [root@realserver1 ~]#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore [root@realserver1 ~]#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore [root@realserver1 ~]#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce [root@realserver1 ~]#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce #rs2主机 [root@realserver2 ~]# ip a a 172.25.250.100/32 dev lo [root@realserver2 ~]#echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore [root@realserver2 ~]#echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore [root@realserver2 ~]#echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce [root@realserver2 ~]#echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce **配置keepalived** #ka1主机 [root@ka1 ~]# vim /etc/keepalived/keepalived.conf virtual_server 172.25.250.100 80 { delay_loop 6 lb_algo wrr lb_kind DR protocol TCP real_server 172.25.250.110 80 { weight 1 HTTP_GET { url { path / status_code 200 } connect_timeout 3 nb_get_retry 2 delay_before_retry 2 } } real_server 172.25.250.120 80 { weight 1 HTTP_GET { url { path / status_code 200 } connect_timeout 3 nb_get_retry 2 delay_before_retry 2 } } } #ka2主机 [root@ka2 ~]# vim /etc/keepalived/keepalived.conf virtual_server 172.25.250.100 80 { delay_loop 6 lb_algo wrr lb_kind DR protocol TCP real_server 172.25.250.110 80 { weight 1 HTTP_GET { url { path / status_code 200 } connect_timeout 3 nb_get_retry 2 delay_before_retry 2 } } real_server 172.25.250.120 80 { weight 1 HTTP_GET { url { path / status_code 200 } connect_timeout 3 nb_get_retry 2 delay_before_retry 2 } } } #测试结果 [root@ka1 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 172.25.250.100:80 wrr -> 172.25.250.110:80 Route 1 0 0 -> 172.25.250.120:80 Route 1 0 0 TCP 10.10.10.2:1358 rr persistent 50 -> 192.168.200.200:1358 Masq 1 0 0 TCP 10.10.10.3:1358 rr persistent 50 ![](https://i-blog.csdnimg.cn/direct/e6797cf369194334b0f9e284ffebc7c9.png) ![](https://i-blog.csdnimg.cn/direct/389bd31048d34da685ee998c6c023351.png) ![](https://i-blog.csdnimg.cn/direct/95c01ada1181439588b88055b779e38c.png) **模拟rs1故障** **\[root@realserver1 \~\]# systemctl stop httpd** ![](https://i-blog.csdnimg.cn/direct/f43b10a3720e42648c3093b24f011fc7.png) ### 3.6实现其它应用的高可用性 VRRP script keepalived利用 VRRP Script 技术,可以调用外部的辅助脚本进行资源监控,并根据监控的结果实现优先 动态调整,从而实现其它应用的高可用性功能 #### 3.6.1VRRP script配置 分两步实现 vrrp_script:自定义资源监控脚本,vrrp实例根据脚本返回值,公共定义,可被多个实例调用,定 义在vrrp实例之外的独立配置块,一般放在global_defs设置块之后。 通常此脚本用于监控指定应用的状态。一旦发现应用的状态异常,则触发对MASTER节点的权重减至 低于SLAVE节点,从而实现 VIP 切换到 SLAVE 节点 #### 3.6.2利用脚本实现主从角色切换 [root@ka1 ~]# cat /mnt/check_file.sh //脚本随便写在那个路径,唯一要注意的就是在配置文件里面的路径要与这里一致 #!/bin/bash [ ! -f "/mnt/file" ] [root@ka1 ~]# chmod +x /mnt/check_file.sh //给脚本执行权限 ################### [root@ka1 ~]# sh /etc/keepalived/test.sh [root@ka1 ~]# echo $? 0 //如果没有/mnt/file这个文件,那么返回0,不会做任何改变 [root@ka1 ~]# touch /mnt/file [root@ka1 ~]# sh /etc/keepalived/test.sh [root@ka1 ~]# echo $? 1 //如果有/mnt/file这个文件,返回为1,那么就会触发降低权重 ##################### [root@ka1 ~]# vim /etc/keepalived/keepalived.conf vrrp_script check_file { script "/mnt/check_lee.sh" #此脚本返回值为非0时,会触发下面OPTIONS执行 interval 1 weight -30 fall 2 rise 2 timeout 2 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 100 priority 100 advert_int 1 #preempt_delay 5s authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.25.250.100/24 dev eth0 label eth0:1 } teack_script { check_file } unicast_src_ip 172.25.250.10 unicast_peer { 172.25.250.20 } } ![](https://i-blog.csdnimg.cn/direct/a980d4c7a82a4710a32dde4c91062a27.png) ![](https://i-blog.csdnimg.cn/direct/c4e2e92d7d2d4fb6b9d8d07ef0b4db94.png) ![](https://i-blog.csdnimg.cn/direct/0b0cdc825f5448b4b821394223be1958.png) ![](https://i-blog.csdnimg.cn/direct/012d88158e71475db20056877e8d614e.png) ![](https://i-blog.csdnimg.cn/direct/287be42f26b2460a9b4ca74ec6161e65.png) #### 3.7.3实现haproxy与keepalived的高可用 #在ka1和ka2主机安装haproxy [root@ka1 ~]# yum install haproxy -y [root@ka2 ~]# yum install haproxy -y #在ka1和ka2主机实现haproxy的配置 #ka1主机 [root@ka1 ~]# vim /etc/haproxy/haproxy.cfg listen webserver bind 172.25.250.100:80 server web1 172.25.250.110:80 check server web2 172.25.250.120:80 check #ka2主机 [root@ka2 ~]# vim /etc/haproxy/haproxy.cfg listen webserver bind 172.25.250.100:80 server web1 172.25.250.110:80 check server web2 172.25.250.120:80 check #在两个ka1和ka2先实现haproxy的配置 backend webcluster bind 172.25.250.100:80 mode http balance roundrobin server realserver1 172.25.250.110:80 check inter 3 fall 2 rise 5 server realserver2 172.25.250.120:80 check inter 3 fall 2 rise 5 ![](https://i-blog.csdnimg.cn/direct/6196e1178d1b4343a5e7a0d614ac7662.png) #在两个ka1和ka2两个节点启用内核参数 [root@ka1 ~]# cat /etc/sysctl.conf # sysctl settings are defined through files in # /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/. # # Vendors settings live in /usr/lib/sysctl.d/. # To override a whole file, create a new file with the same in # /etc/sysctl.d/ and put new settings there. To override # only specific settings, add a file with a lexically later # name in /etc/sysctl.d/ and put new settings there. # # For more information, see sysctl.conf(5) and sysctl.d(5). net.ipv4.ip_nonlocal_bind = 1 //这条参数 #在ka1中编写检测脚本 [root@ka1 ~]# vim /etc/keepalived/scripts/haproxy.sh #!/bin/bash /usr/bin/killall -0 haproxy [root@ka1 ~]# chmod +X /etc/keepalived/scripts/haproxy.sh #在ka1中配置keepalived [root@ka1 ~]# vim /etc/keepalived/keepalived.conf vrrp_script check_haproxy { script "/etc/keepalived/scripts/haproxy.sh" interval 1 weight -30 fall 2 rise 2 timeout 2 } vrrp_instance web { state MASTER interface eth0 virtual_router_id 100 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 172.25.250.100 dev eth0 label eth0:1 } track_script { check_haproxy } } 测试 我们把ka1主机的haproxy关掉,可以看到VIP飘到ka2主机上 ![](https://i-blog.csdnimg.cn/direct/d9e246beaa654ef4b00e7f2df81b5f02.png) 然后客户机一直访问172.25.250.100 ,会发现访问不会断 ![](https://i-blog.csdnimg.cn/direct/979e23a58d904daf9087e7aa0d17c960.png) 这就是haproxy和keepalived联用实现高可用,利用keepalived检测haproxy是否存活,如果存活则不会有任何操作,如果不存活则会把VIP飘到另外一台haproxy存活的主机上,然后客户端主机访问不受影响

相关推荐
HIT_Weston37 分钟前
18、【Ubuntu】【远程开发】技术方案分析:私网ip掩码
linux·tcp/ip·ubuntu
cccccc语言我来了41 分钟前
(Linux (6):从包管理到工具探索,构建系统操作基础认知)
linux·运维·服务器
8K超高清1 小时前
高校巡展:中国传媒大学+河北传媒学院
大数据·运维·网络·人工智能·传媒
ben9518chen1 小时前
嵌入式Linux C语言程序设计九
linux·c语言
wuk9982 小时前
CentOS7环境搭建L2TP服务器
运维·服务器
恒创科技HK2 小时前
香港1核2G云服务器当网站服务器够用不?
运维·服务器
IT 小阿姨(数据库)2 小时前
PostgreSQL 之上的开源时序数据库 TimescaleDB 详解
运维·数据库·sql·postgresql·开源·centos·时序数据库
颜大哦2 小时前
linux安装mysql
linux·运维·mysql·adb
学习3人组3 小时前
Node.js 网站服务器开发
运维·服务器·node.js
来知晓3 小时前
Linux:WSL内存空间管理之清完内存C盘可用空间不增问题解决
linux·运维·服务器