• 记一次全站代理切换----血的教训


    这是一个忧伤的故事,首先要从一次故障说起。。。。

    事故

      

    先简要介绍一下公司网站架构,

    代理服务器分为一级代理和二级代理,

    一级代理是腾讯云的负载均衡,抗压能力比较强,防范ddos能力比较强,重要业务入口放在一级代理之上,比如www,gameapi,game等,然后反向代理到我们自己服务器。

    二级代理是我们机房的服务器,lvs+keepalived高可用的,主要有两个作用:

    • 老的SNS业务入口,以及一些访问量少的业务都在二级代理上。
    • 备用,如果一级代理故障,紧急切换到二级代理上,保障线上业务正常。

     当日北京骨干网波动,,虽然将一级代理切换到二级代理之上,,,不要以为结束了,还没,有一个非常重要的域名的配置有问题,就是gameapi。

    切换二级代理时,将gameapi的解析记录由xxx.xxx.1.72改为xxx.xxx.233.123,但四台后端服务器设置的VIP不是xxx.xxx.233.123,而是另一个xxx.xxx.233.121,修改这个有专门脚本更改的,但是给忘记了。

    我们代理切换之后,简易测试之后没问题,又跟踪了一会,大概凌晨两点,开始逐步休息。

    此后。。。报警小精灵发现曲线故障,打电话给xxx,由于晚上没打通,第二天才发现gameapi故障,于是手动切换vip。。

    事后措施

    自从这次故障后,我就在想,为什么不将所有业务都放到一级代理之上呢?

    这样既大量节省了VIP资源,做https又方便,如果前端代理是lvs,做https的话,既要lvs上开启443端口,又要在后端web服务器nginx上配置https,如果前端代理是nginx,可以直接在前端代理上配置nginx,而不需要再后端web服务器上配置https。

    和老大一商量,一拍既合,准备将全站入口都放在腾讯云上。前前后后准备有一个多月,

    发送邮件周知

    其中遇到的问题(坑)

    网站dns里面记录大概4w多条,需要操作的有大概200多条,需要逐一在nginx上配置,测试通过。。。求测试心理阴影面积。

    切换在运维和开发配合下没有遇到问题,完全无缝钢材(切换)。

  • 相关阅读:
    文本框输入限制 [大全]
    JavaScript关于window.open()应用
    你还敢使用window.open弹广告吗?
    在HTML网页中插入ActiveX控件
    XMLDOC的常用方法和属性
    细说HTML元素的ID和Name属性的区别
    常用的40个网站制作技巧
    激活 ActiveX 控件
    laravel 配置 elasticsearch
    mac上运行ls 命名查看做面文件的出现“Operation not permitted”错误
  • 原文地址:https://www.cnblogs.com/xiaoming279/p/6114483.html
Copyright © 2020-2023  润新知