k8s熟练度标准

背景

这几年,运维体系的变化主要就是从原来的以 自动化工具 + 云计算(ansible/puppet + ecs + 各中间件) 为主 逐渐变成以 k8s + 各中间件 为主。 因此对 k8s 的认识和熟练度就变得越来越重要。
我们通常去评判一个人在某块技能上的水平,通常使用类似于 初级中级高级专家 这类标准,可以认为是站在 熟练度 这个维度做的划分。但光说 熟练度 这个东西有点虚,需要有一些标准来度量,因此在这里做了简单的我的一点认识。

需要注意的是,这里对 k8s 的熟练度,仅仅指 k8s 这个应用的熟练度,而非基于 k8s 的整个云原生体系的熟练度,也并非是基于 k8s 这个平台的微服务体系的熟练度。

k8s 熟练度标准

以下是我定义的 k8s 初级熟练度的一些标志:

  1. 熟练使用 kubectl 进行 k8s 基本操作
    • 查看资源、创建资源、修改资源、删除资源、查看字段含义、查看资源状态
  2. 自行定义及修改内置的资源对象
    • 例如 deploy、replicasets、daemonsets、statefulsets、service、ingress、endpoint、configmap、secret、events、role、sc、pv、pvc 等
  3. 事件触发机制及处理流程
    • api-server、informer(controller-manager)、scheduler、kubelet、网络插件、coredns
  4. CRD 的定义和简单使用
    • 操作第三方 operator、使用 CRD 创建 operator

以下是我定义的 k8s 中级熟练度的一些标志:

  1. 熟悉 k8s 的 CRD,能熟练自定义 CRD 并开发相关功能 (转化、业务逻辑)
  2. 能完整理清 k8s 网络流程 (网络实现原理及跟踪)
  3. 能对 k8s 的实现有整体模块级理解 (模块划分及各模块基本实现)
  4. 熟悉当前 k8s 各生态位及当前状态

以下是我定义的 k8s 高级熟练度的一些标志:

  1. 能对 k8s 部分运行逻辑有代码级认识
  2. 能对 k8s 各部分能力极限有定量性认识

对 k8s 的熟练度我计划是达到 中级熟练度,目前大约在初级的 50% ,不过没有进行考察型检测,这部分要做好,做到 ”可衡量“。可以参考市面上的 k8s 标准。

以上仅仅是对 k8s 的熟练度,一般在做业务时,对 k8s 的熟练度要求不是特别高,基本在初级的 50% 就能做绝大多数业务运维(前提是k8s本身比较稳定,比如用的公有云)。

除了要对 k8s 本身具备一定熟练度,对业务运维而言,更多的还是需要了解 业务本身 ,业务系统中例如 服务提供的能力、服务可观测性、服务可恢复性、服务可扩展性 等。

另外,不得不说,最快学习和掌握 k8s 的资料其实是官方文档

TODO

  • 参考市面上对 k8s 认证的标准
  • 参考 k8s 官网的标准、k8s 指导手册的标准
  • 增加对运维能力的度量标准 !
  • 把 k8s 官方文档 整体读一遍!!

As an organizer I start from where the world is, as it is, not as I would like it to be.
Saul Alinsky


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!