【有夜间上线困惑的小伙伴,可以关注“SRE运维部落”并在下方评论交流。】
各位研发运维小伙伴们一定忘不了凌晨12点上线时被困意支配的恐惧,很多公司为了保证业务文档要求必须夜间上线,有些特殊情况不可避免,但是看了这篇文章,基本可以避免绝大部分的夜间上线。
首先我们既要保证服务稳定可用还要重启切换服务,第一步肯定是要保证接口链路的稳定,其次保证集群压力负载的稳定,节点不可过多离线。
首先我们解决第一个问题,单节点应用的优雅重启。
网上相关的优雅重启的方案有很多,很多都有一定的开发量和代码侵入性,对于热衷自动化运维的我,自然选用的无代码侵入和便于改造的Eureka REST API优雅重启服务这项技术。
api文档如上图所示,两个接口可以解决这个问题
1.在Authorization填写注册中心账号
2.按照上述文档的要求,拼接完整URL,发出请求
appID为微服务名称
instanceID为微服务实例名称
OUT_OF_SERVICE的节点服务在集群中依旧正常运行,可以处理逻辑,但是不再接受新的请求,新请求会被分流到其他节点,保证服务集群的稳定可用。