容器云平台的稳定性设计.pdf

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
容器云平台的稳定性设计 目录 1 API 稳定性设计 1 1.1 API结构与版本 1 1.2 API扩展 6 2 平台优化实践 17 2.1 组件优化 18 2.2 节点优化24 2.3 网络优化 30 2.4 存储优化 39 3 业务稳定性保障41 3.1 负载均衡42 3.2 健康检查44 3.3 服务质量47 3.4 弹性伸缩 51 3.5 变更策略 55 4 本章总结 59 1 API 稳定性设计 Kubernetes 是一个灵活强大的生产级别的开源容器编排系统,与服务器,网络,存储等各基础设施和认 证授权,虚拟化,大数据等各种技术领域有着密切的交互与协作,同时也在不断吸纳各种其他领域, 迅速地 发展壮大。如何保证这样一个几乎"包罗万象"的系统在不断增加和扩展特性的快速迭代过程中各 版本的稳定 性和兼容性自然是一个至关重要的课题。 依托 Google 生产环境运维经验,同时凝聚社区最佳创意和实践,Kubernetes 社区以其开明的姿态吸引 全世界的开发者和爱好者参与其中,提供诸如讨论版,视频会议,Meetup 社区,特殊兴趣小组等互动讨论 和技术协作渠道,制定严格而高度自动化的开发,审核,迭代规范...。Kubernetes 社区重视代码, 重视民主 化的治理方式及其丰富的运作机制为 Kubernetes 产品本身的的稳定性提供了强有力的保障。 本节不打算讨 论社区治理方面的内容,仅就 Kubernetes 的 API 相关内容一窥 Kubernetes 的稳定性设计。 Kubernetes API 是 Kubernetes 系统的重要组成部分,组件之间的所有操作和通信以及外部对 Kuber- netes 的调用都是由 API Server 处理的 REST API 调用。API 的设计对于产品内部通信和外部协作 1.1 API 结构与版本 Kubernetes API 是通过 HTTP 提供的编程接口,以 REST 风格组织并管理资源,支持通过 POST , PUT ,DELETE , GET 等标准的 HTTP 方法对资源进行增删改查等操作。 1.1.1 资源 Kubernetes 中所有内容都被抽象为资源。所有资源都可以使用清单文件(manifest file)进行描述,使用 Etcd 数据库进行存储并由 API Server 统一管理。 ◎ 资源分为集群和命名空间两级作用域,命名空间级资源会在其命名空间删除时被删除。上图资源类 别并不代表其作用域 ◎ 所有资源在其资源对象模式(清单文件)中都有一个具体的表示形式,称为 Kind。同一资源的多个对 象(实例)可以组成集合 ◎ 可以通过 kubectl api-resources 命令查看当前 Kubernetes 环境支持的所有资源的名称,缩写, api 组,作用域及其对应的 Kind 1.1.2 API Kubernetes API 大多数情况下遵循标准的 HTTP REST 规范 ,JSON 和 Protobuf 是其主要序列化结构, 资源通过 API 接口传入 API Server 最终持久化到 Etcd 数据库。API 是由 API Server 组件提供服务,API Server 是 Kubernetes 的管理中心,是唯一能够与 Etcd 数据库交互的组件 API 群组 Kubernetes API 除了提供组织和管理各种资源的接口外,还包括一些系统层面的接口。目前 API 主要 分为三种形式: 除了系统级 API 外 ,Kubernetes 基本上是以 API Group(API 群组)的方式组织各种 API 的,核心组 API 并未使用/apis/core/v1 路径是历史原因(事实上核心组也成为遗留组)。API 群组是一组相关的 API 对象的 集合,使用群组概念能够更方便的管理和扩展 API。 结构示意如下: API 版本 为了在兼容旧版本的同时不断升级新的 API ,Kubernetes 支持多种 API 版本,不同的 API 版本代表其 处于不同的稳定性阶段,低稳定性的 API 版本在后续的产品升

文档评论(0)

智慧IT + 关注
实名认证
内容提供者

微软售前技术专家持证人

生命在于奋斗,技术在于分享!

领域认证该用户于2023年09月10日上传了微软售前技术专家

1亿VIP精品文档

相关文档