应用通过容器部署由K8S调度,对于此类应用的业务连续性要求实现同城双活,异地容灾,需要考虑哪些方面?

应用通过容器部署由K8S调度,对于这类应用的业务连续性要求实现同城双活,异地容灾:在网络方面、数据库方面需要考虑哪些方面? 有没有最佳实践推荐?- 显示全部

应用通过容器部署由K8S调度,对于这类应用的业务连续性要求实现同城双活,异地容灾:在网络方面、数据库方面需要考虑哪些方面? 有没有最佳实践推荐?-

收起
参与9

查看其它 2 个回答糖粑的回答

糖粑糖粑课题专家组系统分析师中国移动

感谢回复,因为双活可以分几层,网络双活、应用双活、数据库双活、存储双活,我想进一步了解下,跨集群应用部署,数据库双活这块在K8S环境下【应用和数据库都容器化了】有哪些经验分享? 因为K8S设计之初就假定容器/pod是不稳定的,应用部署在跨数据中心的K8S集群组里,怎么保障业务的连续性?

互联网服务 · 2020-04-03
浏览2772
  • 您的回复体现了您的专业。您提到的几种方式都是实现双活的重要组成部分。针对 Kubernetes / OpenShift 平台来看,网络双活我们希望构建在大网DNS/Loadbalencer的配合之下,因此通常会借助 DNS/LoadBalancer Plugin与主网络环境直接整合,这样更易于实现统一的网络双活。而目前 OpenShift Hive 项目所期望的 Cluster as a Service 能力是期望让这种网络双活变得更加灵活和可用,期望能够借助快速集群供应能力随时衍生出全能力的新集群。应用双活层面其实并不依赖Kuberenetes,当然微服务理论对这个能力有所助益,可以考虑微服务的熔断与流量迁移能力来降低应用本身的构建复杂度。数据库双活如我回答中提到的借助工具可以实现多点数据同步,但难度在于不管哪种技术,即使在传统数据库双活技术中,数据的最终一致性还是需要同一时间的唯一性,这需要在双活技术中人为控制最终一致控制点。有时候还会牵扯到一致性控制的区域性问题。存储双活目前高性能存储技术与软件定义存储都有相应的方案,但对于Kuberenetes/OpenShift来讲,复杂度在于对 PV/PVC 区域的人工映射匹配。这需要人为方案来控制,也是一个相对复杂的工程,无法一言而尽。
    2020-04-05

回答者

糖粑
系统分析师中国移动
擅长领域: 云计算容器容器云

糖粑 最近回答过的问题

回答状态

  • 发布时间:2020-04-03
  • 关注会员:4 人
  • 回答浏览:2772
  • X社区推广