云原生服务高可用性保持的简单思考

从云计算到云原生,从IaaS到PaaS,从资源层到服务层,当前整个云平台的高可靠、高可用性本质上是越来越复杂的。

同样的,随着云原生的深入,从传统的单体应用到目前主流的微服务架构,总体服务的高可靠、高可用的维持也越发艰难。

从本质上来说,单体服务拆分为一个个微服务是云原生阶段的重要特征,但这种拆分往往带来的是可扩展性方面的提升:

  • 从某种程度上来说,高可靠与高扩展是相互矛盾的,类似于CAP理论中的不可能三角。

虽然在微服务架构下,由于容灾降级等方案的存在,某一个微服务出现故障宕机时不会影响其他的微服务,但随着云原生技术的不断发展演进,业界也更加强调平台+应用 、强调云原生技术底座 、强调各种共性技术服务能力的共享------诸如消息中间件与缓存(DMS)、安全(SEC)、数据库(RDS)、认证系统(IAM)、网关(APIG)等等。

我们可以看到,即使我们做了微服务拆分,但其底层所依赖的底座却越来越重、依赖性也越来越高。

一旦底座服务出现影响,那么上层所有的微服务均会收到影响。因此,对于我们整个底座的高可用性要求就会越来越高。

针对这种风险,除了实践混沌工程模拟可能出现的现网故障、完善监控等手段外,在去中心化架构下强调控制面与数据面进行分离也是方法之一,但也未必保险:

正如最近阿里云发生的P0级别故障,本质上来说是RAM(Resource Access Management,访问控制)出现了故障,虽然其本质上属于控制面,但长时间故障+高实时性要求,同样会引发大规模的数据面问题。

当然了,时代不能回头、技术也不能退化,这一切都只会"驰骋"在云原生的战车一路狂奔。

相关推荐
人间凡尔赛36 分钟前
AI-Native 云原生架构:2026 年从容器编排到智能体编排的范式革命
后端·云原生·架构
Linux-187411 小时前
分布式链路追踪系统之docker-compose安装skywalking
云原生·docker-compose·skywalking·分布式链路追踪系统·应用程序性能监控
隔窗听雨眠16 小时前
Spring Boot在云原生时代的编程范式革新研究
spring boot·后端·云原生
Hui Baby18 小时前
K8S使用CRD和控制器简单应用
云原生·容器·kubernetes
阿里云云原生19 小时前
从“告警驱动”到“巡检驱动”:Agent 智能体如何实现前端体验治理的闭环?
云原生
AOwhisky20 小时前
Python 学习笔记(第十三期)——运维自动化(下·前篇):远程命令执行——paramiko基础篇
运维·python·学习·云原生·自动化·运维开发·paramiko
AOwhisky21 小时前
Python 学习笔记(第十四期)——运维自动化(下·中篇):远程文件传输——paramiko进阶篇
运维·python·学习·云原生·自动化·文件传输·paramiko
云烟成雨TD1 天前
Micrometer 系列【2】可观测性:指标(Metrics)
java·云原生·micrometer
运维老郭1 天前
Ubuntu下编译安装Redis:从0到1可用的完整指南
运维·云原生
Linux-18741 天前
分布式链路追踪系统之二进制安装skywalking
elasticsearch·云原生·skywalking·分布式链路追踪系统·应用程序性能监控