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

秦皇岛陵县网站建设html5网站开发案例视频

秦皇岛陵县网站建设,html5网站开发案例视频,设计之家app,南京建设网站首页基于keepalived(主从双主) LVS(DR模型) DNS实现http高可用集群 keepalived高可用主机IP#xff1a;172.21.5.22和172.21.5.21 http服务高可用主机IP#xff1a;172.21.5.16和172.21.5.18 VIP采用172.16.32.5 各虚拟机及主机名和IP对应关系如下所示#xff1a; 虚拟机主机…基于keepalived(主从双主) LVS(DR模型) DNS实现http高可用集群 keepalived高可用主机IP172.21.5.22和172.21.5.21 http服务高可用主机IP172.21.5.16和172.21.5.18 VIP采用172.16.32.5 各虚拟机及主机名和IP对应关系如下所示 虚拟机主机名IP地址HA1node1172.21.5.22HA2node2172.21.5.21HA3node3172.21.5.16HA4node4172.21.5.18 接下来我们先去配置好http高可用服务两台主机然后再回来配置keepalived。既然是LVS的DR模型那我们先来配置另外两台主机来实现http高可用集群。 首先打开另外两外两台提供http服务的虚拟机这里是HA3和HA4。为了方便你也可以改为RS1和RS2。 在DR模型中只添加个http服务还不行还有许多需要修改貌似不是很简单好吧为了节约时间这里我们通过一个脚本实现修改各个数据。 #!/bin/bash # # Script to start LVS DR real server. # chkconfig: - 90 10 # description: LVS DR real server #. /etc/rc.d/init.d/functionsVIP172.16.32.5 # 定义VIP host$(/bin/hostname)case $1 in start)# Start LVS-DR real server on this machine./sbin/ifconfig lo down/sbin/ifconfig lo upecho 1 /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 /proc/sys/net/ipv4/conf/lo/arp_announceecho 1 /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 /proc/sys/net/ipv4/conf/all/arp_announce/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up/sbin/route add -host $VIP dev lo:0;; stop)# Stop LVS-DR real server loopback device(s)./sbin/ifconfig lo:0 downecho 0 /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 0 /proc/sys/net/ipv4/conf/lo/arp_announceecho 0 /proc/sys/net/ipv4/conf/all/arp_ignoreecho 0 /proc/sys/net/ipv4/conf/all/arp_announce;; status)# Status of LVS-DR real server.islothere$(/sbin/ifconfig lo:0 | grep $VIP)isrothere$(netstat -rn | grep lo:0 | grep $VIP)if [ ! $islothere -o ! $isrothere ]; then# Either the route or the lo:0 device not found.echo LVS-DR real server Stopped.elseecho LVS-DR real server Running.fi;; *)# Invalid entry.echo $0: Usage: $0 {start|status|stop}exit 1;; esac记得该脚本需要在另一个主机上也要执行一下。 两台主机上都执行过上边的脚本后验证下各参数是否已经修改下面几个命令均在node3主机上执行可在node3上使用ssh node4 COMMAND’来验证下node4上各参数是否已修改 [rootwh ~]# ifconfig #在node3上执行该命令查看是否有VIP使用ssh node4 ifconfig命令查看node4上是否也有VIP eth0 Link encap:Ethernet HWaddr 00:0C:29:7F:8F:44inet addr:172.21.5.18Bcast:172.16.255.255Mask:255.255.0.0UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1RX packets:162748errors:0dropped:0overruns:0frame:0TX packets:2368errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:1000RX bytes:26502458(25.2MiB) TX bytes:200681(195.9KiB)Interrupt:59Base address:0x2000 lo Link encap:Local Loopbackinet addr:127.0.0.1Mask:255.0.0.0UP LOOPBACK RUNNING MTU:16436Metric:1RX packets:10errors:0dropped:0overruns:0frame:0TX packets:10errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:0RX bytes:666(666.0b) TX bytes:666(666.0b)lo:0Link encap:Local Loopbackinet addr:172.16.32.5Mask:255.255.255.255UP LOOPBACK RUNNING MTU:16436Metric:1 [rootwh ~]# route -n #查看是否有配置的VIP特定路由 Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 172.16.32.50.0.0.0255.255.255.255UH 000lo 169.254.0.00.0.0.0255.255.0.0U 000eth0 172.16.0.00.0.0.0255.255.0.0U 000eth0 0.0.0.0172.16.0.10.0.0.0UG 000eth0 [rootwh ~]# cat /proc/sys/net/ipv4/conf/all/arp_ignore 1 [rootwh ~]# cat /proc/sys/net/ipv4/conf/all/arp_announce 2到此我们的两台RealServer都以配置完毕而且其http服务也已正常工作。 现在去编辑我们的keepalived的配置文件并修改成我们所需要的。 #先在node1主机上进行修改 [rootwh ~]# vim /etc/keepalived/keepalived.conf global_defs {}vrrp_script chk_httpd {script killall -0 httpdinterval 2weight -2fall 2rise 1 }vrrp_script chk_schedown {script [[ -f /etc/keepalived/down ]] exit 1 || exit 0interval 2weight -2 }vrrp_instance VI_1 {state MASTERinterface eth0virtual_router_id 132priority 101advert_int 1authentication {auth_type PASSauth_pass langdu}virtual_ipaddress {172.16.32.5/16 dev eth0 label eth0:0}track_script {chk_httpdchk_schedown}notify_master /etc/keepalived/notify.sh masternotify_backup /etc/keepalived/notify.sh backupnotify_fault /etc/keepalived/notify.sh fault }virtual_server 172.16.32.5 80 {delay_loop 6lb_algo rrlb_kind DRnat_mask 255.255.0.0protocol TCPreal_server 172.21.5.16 80 {weight 1HTTP_GET {url {path /status_code 200}connect_timeout 2nb_get_retry 3delay_before_retry 2}}real_server 172.21.5.18 80 {weight 2HTTP_GET {url {path /status_code 200}connect_timeout 2nb_get_retry 3delay_before_retry 3}} }下面这个脚本时实现健康检查用的。即上边用到的notify.sh脚本 #!/bin/bash # Author: onlyyou # description: 一个通知脚本示例ifalias${2:-eth0:0} interface$(echo $ifalias | awk -F: {print $1}) vip$(ip addr show $interface | grep $ifalias | awk {print $2}) contactrootlocalhost workspace$(dirname $0)notify() {subject$vip 地址切换为 $1body$vip 地址切换为 $1 $(date %F %H:%M:%S)echo $body | mail -s $1 过渡 $contact # 实现发送邮件 }case $1 in master)notify masterexit 0;; backup)notify backup/etc/rc.d/init.d/httpd restartexit 0;; fault)notify faultexit 0;; *)echo 用法: $(basename $0) {master|backup|fault}exit 1;; esacscp /etc/keepalived/keepalived.conf node2:/etc/keepalived/ # 将配置文件发给另一个keepalived主机这里发给node2假如你的主机不是node2请做相应修改 # 在node2主机上修改刚传过来的keepalived的配置文件。这里只需修改两项即可 state BACKUP #设置该node2主机为backup路由priority 100 #设定node2主机的优先级为100低于node1 # 在node2主机上我们只需修改上述两项即可。修改完成后保存退出 现在我们去安装ipvsadm软件包然后再启动keepalived服务 ssh node2 yum -y install ipvsadm #通过node1主机在node2上安装ipvsadm软件包 yum -y install ipvsadm #在node1上安装软件包 安装完毕后启动我们的keepalived服务。 service keepalived start #启动node1上的keepalived服务 ssh node2 service keepalived start #在node1上启动node2的keepalived服务查看下ipvs规则 ipvsadm -l -n #使用该命令查看是否有ipvs规则显示如下 IP Virtual Server version 1.2.1(size4096) Prot LocalAddress:Port Scheduler Flags - RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 172.16.32.5:80rr - 172.21.5.18:80Route 100 - 172.21.5.16:80Route 100ifconfig #查看下node1上的IP配置情况 eth0 Link encap:Ethernet HWaddr 00:0C:29:9F:2F:AFinet addr:172.21.5.22Bcast:172.16.255.255Mask:255.255.0.0UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1RX packets:290653errors:1dropped:0overruns:0frame:0TX packets:13874errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:1000RX bytes:46393162(44.2MiB) TX bytes:2014631(1.9MiB)Interrupt:59Base address:0x2000 eth0:0Link encap:Ethernet HWaddr 00:0C:29:9F:2F:AFinet addr:172.16.32.5Bcast:0.0.0.0Mask:255.255.0.0UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1Interrupt:59Base address:0x2000 lo Link encap:Local Loopbackinet addr:127.0.0.1Mask:255.0.0.0UP LOOPBACK RUNNING MTU:16436Metric:1RX packets:10errors:0dropped:0overruns:0frame:0TX packets:10errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:0RX bytes:666(666.0b) TX bytes:666(666.0b)配置的VIP也已生效我们的ipvs规则已经实现。现在在我们的物理机上访问下172.16.32.5看一下是否可以访问显示什么信息吧。 到目前为止貌似我们还没有实现IP地址漂移。我们只需在master路由主机上在相应目录下创建一个down文件即可实现手动漂移IP地址。 在node1上 cd /etc/keepalived/#进入该目录 touch down #创建该文件用来实现手动漂移IP地址tail /var/log/messages #停几秒钟后查看日志 May 1619:15:32node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) Entering MASTER STATE May 1619:15:32node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) setting protocol VIPs. May 1619:15:32node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for172.16.32.5 May 1619:15:32node1 Keepalived_healthcheckers[2815]: Netlink reflector reports IP 172.16.32.5added May 1619:15:32node1 Keepalived_vrrp[2816]: Netlink reflector reports IP 172.16.32.5added May 1619:15:32node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) Received higher prio advert #收到更高优先级的通告信息 May 1619:15:32node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) Entering BACKUP STATE #进入backup状态 May 1619:15:32node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) removing protocol VIPs. #转移VIP地址 May 1619:15:32node1 Keepalived_healthcheckers[2815]: Netlink reflector reports IP 172.16.32.5removed May 1619:15:32node1 Keepalived_vrrp[2816]: Netlink reflector reports IP 172.16.32.5removedifconfig #使用该命令查看下node1主机的VIP是否存在可看到已转移到其他主机 eth0 Link encap:Ethernet HWaddr 00:0C:29:9F:2F:AFinet addr:172.21.5.22Bcast:172.16.255.255Mask:255.255.0.0UP BROADCAST RUNNING MULTICAST MTU:1500Metric:1RX packets:347881errors:1dropped:0overruns:0frame:0TX packets:21333errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:1000RX bytes:50760780(48.4MiB) TX bytes:2653767(2.5MiB)Interrupt:59Base address:0x2000 lo Link encap:Local Loopbackinet addr:127.0.0.1Mask:255.0.0.0UP LOOPBACK RUNNING MTU:16436Metric:1RX packets:10errors:0dropped:0overruns:0frame:0TX packets:10errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:0RX bytes:666(666.0b) TX bytes:666(666.0b) 在node2主机上查看其日志。 bash tail /var/log/messages #查看node2的日志信息 May 1619:15:32node1 Keepalived_vrrp[2464]: VRRP_Instance(VI_1) forcing a new MASTER election May 1619:15:32node1 Keepalived_vrrp[2464]: VRRP_Instance(VI_1) forcing a new MASTER election May 1619:15:33node1 Keepalived_vrrp[2464]: VRRP_Instance(VI_1) Transition to MASTER STATE May 1619:15:34node1 Keepalived_vrrp[2464]: VRRP_Instance(VI_1) Entering MASTER STATE #进入master状态 May 1619:15:34node1 Keepalived_vrrp[2464]: VRRP_Instance(VI_1) setting protocol VIPs. #设定VIP May 1619:15:34node1 Keepalived_healthcheckers[2463]: Netlink reflector reports IP 172.16.32.5added May 1619:15:34node1 avahi-daemon[3375]: Registering new address record for172.16.32.5on eth0. May 1619:15:34node1 Keepalived_vrrp[2464]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for172.16.32.5 May 1619:15:34node1 Keepalived_vrrp[2464]: Netlink reflector reports IP 172.16.32.5added May 1619:15:39node1 Keepalived_vrrp[2464]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for172.16.32.5在在我们的物理机访问下看能否访问。依然在浏览器地址栏输入172.16.32.5可以看到访问正常。 现在我们删掉/etc/keepalived/down这个文件看能否实现IP漂移回来。 rm -f /etc/keepalived/down #删除node1主机上该文件tail /var/log/messages #查看日志信息 May 1619:15:32node1 Keepalived_vrrp[2816]: Netlink reflector reports IP 172.16.32.5removed May 1619:27:54node1 Keepalived_vrrp[2816]: VRRP_Script(chk_schedown) succeeded May 1619:27:55node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) forcing a new MASTER election May 1619:27:55node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) forcing a new MASTER election May 1619:27:56node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) Transition to MASTER STATE May 1619:27:57node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) Entering MASTER STATE #进入master状态 May 1619:27:57node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) setting protocol VIPs. May 1619:27:57node1 Keepalived_vrrp[2816]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for172.16.32.5 May 1619:27:57node1 Keepalived_healthcheckers[2815]: Netlink reflector reports IP 172.16.32.5added May 1619:27:57node1 Keepalived_vrrp[2816]: Netlink reflector reports IP 172.16.32.5added至此我们已成功实现了keepalived的相关功能。以上演示的仅仅是主从模式下地址漂移。那我们能否实现在双主模式下实现地址漂移呢答案是肯定的。
http://www.sczhlp.com/news/181825/

相关文章:

  • 医疗网站跳出率wordpress怎么中文字体
  • 免费手机网站建站学广告设计平面设计
  • 淘宝客网站备案网站建设业动态
  • 山西省这房和城乡建设厅网站公司网页设计模板
  • 重庆网站备案系统网站建设济南云畅网络技术有限公司
  • 买卖平台有哪些网站吉林中岩峰建设有限公司网站
  • 中国建设教育网官网是什么网站建筑网app
  • 东莞正规制作网站公司吗模板建站有什么优势
  • 石家庄网站建设德信互联科技有限公司网络规划师报名时间
  • 安阳市建设安全监督站网站怎样做品牌推广
  • 如果搭建网站山东中恒建设集团网站
  • 做网站没有手机端wordpress导航制作
  • 门户网站建设依据9.9元包邮网站怎么做
  • 河北网站备案系统山东电商运营公司排名
  • 网站合同 下载可以做天猫代码的网站
  • 如何不用百度推广做网站wordpress 壁纸模板
  • 大渡口区网站建设公司网站建设亚运村
  • Redis 64字节分界线与跳表实现原理 - 实践
  • [SpringCloud][7]负载均衡介绍,以及一些搭建
  • BERT模型简化技术提升效率与容量
  • 251010
  • 网站建设张世勇wordpress concise
  • 东莞市主营网站建设服务机构discuz 网站标题
  • 重庆网站设计最佳科技网络游戏软件开发app
  • 160 作者 网站建设室内设计资源网
  • 网站开发支付宝二维码支付seo整站优化
  • 手机网站设计公司哪家专业英文网站常用字体
  • 金融网站的设计中国徐州网
  • 怎么做电影流量网站吗网站建设能赚很多钱
  • 北京公司网站制作哪家专业公司必备的几个部门