Kubernetes Add-ons 附件介绍

131 阅读2分钟

Kubernetes Add-ons (附件)

负责扩展Kubernetes集群的功能的应用程序,通常以Pod形式托管运行于Kubernetes集群之上

分必选附件和可选附件

Cluster DNS:集群DNS服务器(SRV) --必选附件

负责DNS解析 将service name 和 service ip的解析

负责服务注册、发现

当下的实现是CoreDNS (service功能的第二个)

  • 第1代 SkyDNS
  • 第2代 KubeDNS
  • 第3代 CoreDNS 真正意义上k8s原生的

Service的关键组成

  • service name:
    • 定义格式: service.namespace.svc.domain_name 字符串格式(FQDN)
  • service ip(也叫cluster ip)

Network Plugin:网络插件(CNI的实现) --必选附件

  • 经由CNI接口,负责为Pod提供专用的通信网络,有多种实现
    • Flannel --CoreOS研发的

    • Project --Calico研发的

可选附件

image.png

  • Ingress Controller:
    • Ingress控制器,负责为Ingress资源提供具体的实现,实现http/https协议的七层路由和流量调度,
    • 有多种实现,例如Ingress-Nginx、Contour等

日志中心 --关键组件

EFK stack

监控指标中心 --关键组件

Prometheus + Grafna

链路追踪(DT distribute tracing) --关键组件

opentracing zipkin skywalking 微服务场景下必备

UI Dashboard:基于Web的UI --关键组件

  • kuboard
  • ranger

服务网格 Istio --关键组件

  • 让k8s支持云原生 服务网格功能

Servless Platform: knative --关键组件

ArgoCD/Rollouts --关键组件

- 流量质量 发布

配置管理

  • config map 、secrets

服务发现

  • Kubernets Service
  • Ingerss Resources

服务发布

  • Kubernets Service
  • Ingerss Resources

负载均衡

  • Kubernets Service

韧性 容错能力

  • Kubernets health check
  • resource isolation 资源隔离

自动伸缩 自愈能力

  • Kubernets health check
  • self healing 自愈
    • 如果删除pod 会自动创建出来
  • autoscaling

kubernets 是什么? (声名式API)

  • Platform for Platform 本身就是一个平台, 他的功能是去构建其他的平台
  • 底层化能力
    • 可以纳管底层基础设施类的服务
    • kubernets 可以将Kafka的功能 封装成API 对外暴露服务
  • 容器的编排功能
  • 服务网格平台的底层设施

展开讲 软件系统组成部分

  • OS + 硬件
  • 基础设施类服务
    • 中间件服务, 支持业务组件协同的服务 go/c/c++ 开发的
    • Kafka、mysql、redis
  • 业务软件、业务应用 java/python程序
    • 自己开发的软件 应用

image.png