当前位置: 首页 > news >正文

外贸企业网站制作做网站创业

外贸企业网站制作,做网站创业,四川品牌网站建设,深圳美联英语总部概念 keepalived 是一款基于 VRRP#xff08;Virtual Router Redundancy Protocol#xff0c;虚拟路由冗余协议#xff09;协议来实现高可用#xff08;High Availability, HA#xff09;的轻量级软件。它主要用于防止单点故障#xff0c;特别是在 Linux 环境下#xff…概念 keepalived 是一款基于 VRRPVirtual Router Redundancy Protocol虚拟路由冗余协议协议来实现高可用High Availability, HA的轻量级软件。它主要用于防止单点故障特别是在 Linux 环境下为 LVSLinux Virtual ServerLinux 虚拟服务器集群和其他服务提供高可用性和故障转移功能。虽然它最初是为 LVS 设计的但现在也被广泛用于其他需要高可用性的场景比如 MySQL 数据库集群、Nginx 负载均衡器等。 工作原理 keepalived 在集群中通常部署为一对或多对主备服务器。每个 keepalived 实例都会运行 VRRP 协议并通过组播Multicast或单播Unicast方式与其他实例通信。主服务器定期发送 VRRP 广告包通知其他备份服务器其状态。如果备份服务器在一定时间内没有收到主服务器的广告包它会认为主服务器已经故障并接管虚拟 IP 和服务。 VRRP是什么 VRRPVirtual Router Redundancy Protocol虚拟路由器冗余协议是一种由IETFInternet Engineering Task Force互联网工程任务组提出的路由协议旨在解决局域网中配置静态网关时可能出现的单点失效问题。该协议于1998年推出。 VRRP的工作原理 1.选举机制VRRP协议通过选举机制确定哪台路由器成为Master路由器。选举基于路由器的优先级优先级高的路由器成为Master。如果优先级相同则比较接口IP地址IP地址大的成为Master。 2.状态维持Master路由器定期发送VRRP通告报文通知备份组内的其他路由器自己工作正常。Backup路由器则启动定时器等待通告报文的到来并根据收到的通告报文判断Master路由器的状态。 3.故障转移如果Backup路由器在定时器超时后仍未收到Master路由器的VRRP通告报文则认为Master路由器已经无法正常工作此时Backup路由器将升级为主路由器并对外发送VRRP通告报文接管数据转发任务。 keepalived的主要模块 1.core模块KEEPALIVED的核心模块负责主进程的启动、维护以及全局配置文件的加载和解析。 2.check模块负责健康检查包括各种常见的检查方式如ICMP、TCP端口状态、HTTP GET等以确保集群中各节点的正常运行。 3.vrrp模块实现VRRP协议的关键模块负责虚拟路由器的选举、状态维护和报文发送等工作。 keepalived的安装与基本配置 安装keepalived dnf install keepalived -y systemctl start keepalived keepalived的基本配置 配置文件位于/etc/keepalived/keepalived.conf 全局配置 notification_email { xxxxxxxqq.com #keepalived 发生故障切换时邮件发送的目标邮箱可以按行区 分写多个} notification_email_from keepalivedka1.exam.com #发邮件的地址 smtp_server 127.0.0.1 #指定用于发送邮件的 SMTP 服务器地址这里是 127.0.0.1 。 smtp_connect_timeou 30 #每个keepalived主机唯一标识 router_id ka1.exam.com #建议使用当前主机名但多节点 重名不影响 vrrp_skip_check_adv_addr #对所有通告报文都检查会比较消耗性能#启用此配置后如果收到的通告报文和上一 个报文是同一 个路由器则跳过检查默认 值为全检查 vrrp_strict #严格遵循vrrp协议 #启用此项后以下状况将无法启动服务: #1.无VIP地址 #2.配置了单播邻居 #3.在VRRP版本2中有IPv6地址 #建议不加此项配置 vrrp_garp_interval 0 #报文发送延迟0表示不延迟 vrrp_gna_interval 0 #消息发送延迟 vrrp_mcast_group4 224.0.0.18 #指定组播IP的地址。 虚拟服务器配置 vrrp_instance VI_1 {state BACKUPinterface eth0 #绑定为当前虚拟路由器使用的物理接口如eth0,可以和VIP不在一 个网卡virtual_router_id 100 #每个虚拟路由器惟一标识,范围0-255每个虚拟路由器此值必须唯一 #否则服务无法启动 #同属一个虚拟路由器的多个keepalived节点必须相同 #务必要确认在同一网络中此值必须唯一priority 80 #当前物理节点在此虚拟路由器的优先级范围1-254 #值越大优先级越高,每个keepalived主机节点此值不同advert_int 1 #vrrp通告的时间间隔默认1s#preempt_delay 5sauthentication { #认证机制auth_type PASS #AH为IPSEC认证(不推荐),PASS为简单密码(建议使用)auth_pass 1111 #预共享密钥仅前8位有效 #同一个虚拟路由器的多个keepalived节点必须一样}virtual_ipaddress { #虚拟IP,生产环境可能指定上百个IP地址172.25.254.100/24 dev eth0 label eth0:1 #指定VIP不指定网卡默认为eth0,注意不指定/prefix,默认32} }virtual_server IP port { #VIP和PORTdelay_loop #检查后端服务器的时间间隔lb_algo rr|wrr|lc|wlc|lblc|sh|dh #定义调度方法lb_kind NAT|DR|TUN INT #集群的类型,注意要大写persistence_timeout #持久连接时长 protocol TCP|UDP|SCTP #指定服务协议,一般为TCPsorry_server IPADDR PORT #所有RS故障时备用服务器地址real_server IPADDR PORT{ #RS的IP和PORTweight INT #RS权重notify_up STRING|QUOTED-STRING #RS上线通知脚本notify_down STRING|QUOTED-STRING #RS下线通知脚本 HTTP_GET|SSL_GET|TCP_CHECK|SMTP_CHECK|MISC_CHECK { ... } #定义当前主机健康状 态检测方法}}#注意:括号必须分行写,两个括号写在同一行,如: }} 会出错 应用层监测 HTTP_GET|SSL_GET { url { path URL_PATH #定义要监控的URL status_code INT #判断上述检测机制为健康状态的响应码一般为 200 } connect_timeout INTEGER #客户端请求的超时时长, 相当于haproxy的timeout server nb_get_retry INT #重试次数 delay_before_retry INT #重试之前的延迟时长 connect_ip IP ADDRESS #向当前RS哪个IP地址发起健康状态检测请求 connect_port PORT #向当前RS的哪个PORT发起健康状态检测请求 bindto IP ADDRESS #向当前RS发出健康状态检测请求时使用的源地址 bind_port PORT #向当前RS发出健康状态检测请求时使用的源端口} tcp监测 TCP_CHECK { connect_ip IP ADDRESS #向当前RS的哪个IP地址发起健康状态检测请求 connect_port PORT #向当前RS的哪个PORT发起健康状态检测请求 bindto IP ADDRESS #发出健康状态检测请求时使用的源地址 bind_port PORT #发出健康状态检测请求时使用的源端口 connect_timeout INTEGER #客户端请求的超时时长 } 定义VRRP script vrrp_script script STRING | QUOTED_STRING #shell命令或脚本路径 interval INTEGER #间隔时间单位为秒默认1秒 timeout INTEGER #超时时间 weight INTEGER #默认为0,如果设置此值为负数 #当上面脚本返回值为非0时 #会将此值与本节点权重相加可以降低本节点权重 #即表示fall. #如果是正数当脚本返回值为0 #会将此值与本节点权重相加可以提高本节点权重 #即表示 rise.通常使用负值 fall INTEGER #执行脚本连续几次都失败,则转换为失败建议设为2以上 rise INTEGER #执行脚本连续几次都成功把服务器从失败标记为成功 user USERNAME [GROUPNAME] #执行监测脚本的用户或组 init_fail #设置默认标记为失败状态监测成功之后再转换为成功状态 }keepalived实例 环境配置 实现master/slave的 keepalived 单主架构 ka1主机配置 [rootka1 ~]# vim /etc/keepalived/keepalived.conf global_defs {notification_email {923452780qq.com}notification_email_from keepalivedexam.orgsmtp_server 127.0.0.1smtp_connect_timeout 30router_id ka1.exam.orgvrrp_skip_check_adv_addrvrrp_strictvrrp_garp_interval 0vrrp_gna_interval 0vrrp_mcast_group4 224.0.0.18 }vrrp_instance VI_1 {state MASTERinterface eth0virtual_router_id 100priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {172.25.254.100/24 dev eth0 label eth0:1}ka2主机配置 vim /etc/keepalived/keepalived.conf global_defs {notification_email {923452780qq.com}notification_email_from keepalivedexam.orgsmtp_server 127.0.0.1smtp_connect_timeout 30router_id ka2.exam.orgvrrp_skip_check_adv_addrvrrp_strictvrrp_garp_interval 0vrrp_gna_interval 0vrrp_mcast_group4 224.0.0.18 }vrrp_instance VI_1 {state BACKUPinterface eth0virtual_router_id 100priority 80advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {172.25.254.100/24 dev eth0 label eth0:1} 测试 tcpdump -i eth0 -nn host 224.0.0.18关闭ka1主机上的keepalived服务时VIP将转移到ka2主机上 启用keepalived日志 vim /etc/sysconfig/keepalived KEEPALIVED_OPTIONS-D -S 6 systemctl restart keepalived.service vim /etc/rsyslog.conf local6.* /var/log/keepalived.log systemctl restart keepalived.service rsyslog.service tail -f /var/log/keepalived.log 实现独立子配置文件 注意如果需要独立子配置文件就需要把原配置文件的内容注释掉或者删掉 vim /etc/keepalived/keepalived.conf include /etc/keepalived/conf.d/*.conf[rootka1 ~]# mkdir -p /etc/keepalived/conf.d[rootka1 ~]# vim /etc/keepalived/conf.d/172.25.254.100.conf vrrp_instance VI_1 {state MASTERinterface eth0virtual_router_id 100priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}virtual_ipaddress {172.25.254.100/24 dev eth0 label eth0:1} }systemctl restart rsyslog.service keepalived的通知脚本配置 邮件配置 yum install mailx -y ​ ​ vim /etc/mail.rc #######mail set########## set fromXXXXXXXXqq.com set smtpsmtp.qq.com set smtp-auth-userXXXXXXXXqq.com set smtp-auth-passwordXXXXXXXX #自己邮箱的授权码 set smtp-authlogin set ssl-verifyignore ​ #发送邮件 echo hello word | mail -s test xxxxxxxxxqq.com实现Keepalived状态切换的通知脚本 vim /etc/keepalived/mail.sh #!/bin/bash mail_dstxxxxxxxxxqq.com send_message() {mail_sub$HOSTNMAE to be $1 vip movemail_msgdate %F\ %T: vrrp move $HOSTNAME change $1echo $mail_msg | mail -s $mail_sub $mail_dst } case $1 inmaster)send_message master;;backup)send_message backup;;fault)send_message fault;;*);; esacchmod x /etc/keepalived/mail.sh vim /etc/keepalived/keepalived.conf vrrp_instance VI_1 { ...unicast_src_ip 172.25.254.10 #本机IPunicast_peer {172.25.254.20 #对端IP}notify_master /etc/keepalived/mail.sh masternotify_backup /etc/keepalived/mail.sh backupnotify_fault /etc/keepalived/mail.sh fault } ​实现 master/master 的 Keepalived 双主架构 master/slave的单主架构同一时间只有一个Keepalived对外提供服务此主机繁忙而另一台主机却 很空闲利用率低下可以使用master/master的双主架构解决此问题。 master/master 的双主架构 即将两个或以上VIP分别运行在不同的keepalived服务器以实现服务器并行提供web访问的目的提高 服务器资源利用率 ka1主机和ka2主机都要配置都需要添加一个VRRP虚拟路由冗余协议实例的配置模块。 [rootka1 ~]# vim /etc/keepalived/keepalived.conf vrrp_instance VI_1 {state MASTERinterface eth0virtual_router_id 100priority 100advert_int 1vrrp_ipsets keepalived#preempt_delay 5sauthentication {auth_type PASSauth_pass 1111}virtual_ipaddress {172.25.254.100/24 dev eth0 label eth0:1}unicast_src_ip 172.25.254.10unicast_peer {172.25.254.20} }vrrp_instance VI_2 {state MASTERinterface eth0virtual_router_id 200priority 80advert_int 1vrrp_ipsets keepalived#preempt_delay 5sauthentication {auth_type PASSauth_pass 1111}virtual_ipaddress {172.25.254.200/24 dev eth0 label eth0:2}unicast_src_ip 172.25.254.10unicast_peer {172.25.254.20} }[rootka2 ~]# vim /etc/keepalived/keepalived.conf vrrp_instance VI_1 {state BACKUPinterface eth0virtual_router_id 100priority 80advert_int 1#preempt_delay 5sauthentication {auth_type PASSauth_pass 1111}virtual_ipaddress {172.25.254.100/24 dev eth0 label eth0:1}unicast_src_ip 172.25.254.20unicast_peer {172.25.254.10} }vrrp_instance VI_2 {state MASTERinterface eth0virtual_router_id 200priority 100advert_int 1#preempt_delay 5sauthentication {auth_type PASSauth_pass 1111}virtual_ipaddress {172.25.254.200/24 dev eth0 label eth0:2}unicast_src_ip 172.25.254.20unicast_peer {172.25.254.10} } 测试 实现单主的 LVS-DR 模式 准备web服务器并使用脚本绑定VIP至web服务器lo网卡realserver1主机和realserver2主机都要配置 [rootrealserver1 ~]# ip a a172.25.254.100 dev lo [rootrealserver1 ~]# vim /etc/sysctl.d/arp.conf net.ipv4.conf.all.arp_ignore1 net.ipv4.conf.lo.arp_ignore1 net.ipv4.conf.all.arp_announce2 net.ipv4.conf.lo.arp_announce2[rootrealserver1 ~]# sysctl --system[rootrealserver2 ~]# ip a a172.25.254.100 dev lo [rootrealserver2 ~]# vim /etc/sysctl.d/arp.conf net.ipv4.conf.all.arp_ignore1 net.ipv4.conf.lo.arp_ignore1 net.ipv4.conf.all.arp_announce2 net.ipv4.conf.lo.arp_announce2[rootrealserver2 ~]# sysctl --system配置keepalived服务ka1主机和ka2主机都要做 [rootka1 ~]# vim /etc/keepalived/keepalived.conf virtual_server 172.25.254.100 80 {delay_loop 6lb_algo wrrlb_kind DR#persistence_timeout 50protocol TCPreal_server 172.25.254.110 80 {weight 1HTTP_GET {url {path /status_code 200}connect_timeout 3nb_get_retry 2delay_before_retry 2}}real_server 172.25.254.120 80 {weight 1HTTP_GET {url {path /status_code 200}connect_timeout 3nb_get_retry 2delay_before_retry 2}} }[rootka1 ~]# systemctl restart keepalived.service [rootka1 ~]# ipvsadm -Ln测试 将realserver2的http服务停掉我们可以观察到keepalived会控制ipvsadm自动将172.25.254.120这个策略剔除。但是如果realserver2的http服务重新启动keepalived会将172.25.254.120这个策略重新恢复。 重启后
http://www.dnsts.com.cn/news/22815.html

相关文章:

  • wordpress网站无法登陆广州网站建设怎么样
  • 利用微博网站做淘客四川建设厅网站复查中
  • ac域名的网站有啥不同湖南株洲建设局网站
  • 在东营怎么建网站数商云电子商务网站建设
  • 上海公司网站建设价格自己电脑做服务器上传网站 需要备案吗
  • html5 中文网站模板做网站的
  • 微信 网站设计模板房屋装修图片
  • 建站论坛系统4p营销理论
  • 济宁嘉祥网站建设吴中企业建设网站报价
  • 网站建设与维护期末考试题addaction wordpress
  • 郑州有哪些搞网站开发的公司教育网站设计
  • 做网站小图标大全wordpress 添加下载按钮
  • 济南网站建设报价新品牌推广方案
  • 卖游戏币网站制作wordpress 单页模版
  • 医院网站建设哪家好自己做小程序开个社区团购
  • php英文网站源码太原住房和城乡建设部网站
  • 做农业需关注什么网站青岛互联网企业排名
  • 给帅哥做奴视频网站wordpress 文章 标题
  • 成年男女做羞羞视频网站视频制作软件手机版
  • 企业网站搭建费用眉山建行网站
  • 不再更新的网站注册公司的条件
  • 做网站得叫什么udacity 移动网站开发
  • 教学网站开发应用指导方案聊城网站建设招聘
  • 做网站 怎么做留言Wordpress 仿站 工具
  • 长春建设平台网站的公司吗wordpress调用微博
  • 中国在数码网站注册域名好 gt桥梁建设工程网站
  • 东莞网站制作模板公司网站放哪些内容
  • 在济南什么人想做网站网站logo怎么改
  • 手机网站制作织梦网站模板沧州企业网站制作的
  • 网站开发时数据库的工作wordpress本地做好如何改站点地址