容器集群高可用部署实践

随着云原生应用的不断被接受,应用容器化方式部署也越来越普及,下面就如何基于华为CCE kubernetes集群中高可用部署容器应用集群展开探讨。

容器化集群的基本条件

  1. 集群实例无状态化:这里的“无状态化”指容器实例本身不缓存或永久存储数据,即无论容器本身无论如何重新创建,也不会因为容器被删除之后重新创建而丢失集群数据或状态。

  2. 无依赖本地存储:集群中的容器数据不会保存在某个节点上,即无论容器迁移到何处,也不会因为容器被删除之后重新创建而丢失集群数据或状态。

容器化集群高可用部署的要求

要实现容器化集群的基本条件,则集群的缓存与永久性存储都必须放到集群之外,那就需用到分布式缓存、分布式存储、分布式数据库。

容器高可用还需要考虑的是基础设施的高可用,如果所有容器都部署到同一个节点(虚拟机或物理机)上,即使容器集群本身实现了高可用,一旦节点异常,整个集群也不可用。所以,要求集群的容器分布到不同的节点之上。

以下是容器化集群高可用部署的基本拓扑图:

image.png

容器化集群高可用部署在华为CCE的实现

  1. 如何实现容器必须分散到不同节点上?

    利用华为CCE的亲和性策略,使用得部署的应用集群与自己反亲和,即集群所有的POD都不可能同时部署到一个节点上。

  2. 如果实现数据持久化?

    分布式数据库与分布式缓存,都是通过专门的中间件服务实现,这里就打开讲。这里主要分析应用落盘的数据。

    应用的集群模式分为二类,一种叫多主模式,另一种叫单主模式。

    多主模式指集群中所有实例都同时Active,通过负载均衡把请求分发到集群的不同实例中,集群中任何一个主实例出现故障,不影响其他主实例运行。这种集群适合使用k8s的replicaset(由deployment创建),由于应用实例都是Active状态,所以实例之间需要数据共享,这就要求所以需要一个分布式文件系统(如NFS)提供多读多写。

image.png
单主模式指集群中只有一个主能提供服务,有一个或多个备是Standby状态,集群通过主备实例切换或主实例选举来保证高可用。这种集群适合k8s的Statefulset,每个实例都有自己的状态。这样集群需要每个实例单独挂载一个存储(云硬盘),应用集群需要自已实现数据的同步,当主出现故障时,需要选举出新的主实例,同时proxy把流量切换到新的主实例。

![image.png](https://upload-images.jianshu.io/upload_images/10630044-744ad53acff7c927.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
  1. 如何实现升级?

    集群的高可用,还需要考虑应用升级过程中如何保持业务的可用性。

    kubernetes提供了一种比较方便的方式为滚动升级,在升级过程中,对集群中的实例进行逐渐替换成新版本,保证了服务可的用行。但这种升级模式是理想化的,为什么呢?这里有一个假设是新老版本的接口未发生变化,才能在升级过程中,不会影响上下游的服务。

    一旦大版本的更新(有新业务特性或接口变更),则需要使用灰度发布。通过灰度发布的策略,把流量有区别地分发到新老版本。

  2. 如何对节点进行维护?

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350

推荐阅读更多精彩内容