每日一博 | 服务发现与配置管理高可用最佳实践
作者:三辰|阿里云云原生微服务基础架构团队技术专家,负责 MSE 引擎高可用架构 ****本篇是微服务高可用最佳实践系列分享的开篇,系列内容持续更新中,期待大家的关注。 引言 在开始正式内容之前,先给大家分享一个真实的案例。 某客户在阿里云上使用 K8s 集群部署了许多自己的微服务,但是某一天,其中一台节点的网卡发生了异常,最终导致服务不可用,无法调用下游,业务受损。我们来看一下这个问题链是如何形成的? ECS 故障节点上运行着 K8s 集群的核心基础组件 CoreDNS 的所有 Pod,它没有打散,导致集群 DNS 解析出现问题。 该客户的服务发现使用了有缺陷的客户端版本(nacos-client 的 1.4.1 版本),这个版本的缺陷就是跟 DNS 有关——心跳请求在域名解析失败后,会导致进程后续不会再续约心跳,只有重启才能恢复。 这个缺陷版本实际上是已知问题,阿里云在 5 月份推送了 nacos-client 1.4.1 存在严重 bug 的公告,但客户研发未收到通知,进而在生产环境中使用了这个版本。 风险环环相扣,缺一不可。 最终导致故障的原因是服务无法调用下游,可用性降低,业...
