此文章为学习了张磊《深刻刨析Kubernetes》的总结
浏览此文章须要有肯定的docker和linux根底

一.什么是kubernetes

官网中文文档:https://www.kubernetes.org.cn/docs

kubernetes能做什么?

  • 编排
  • 调度
  • 容器云
  • 集群治理
  • 提供运维能力:网关、程度扩大、监控、备份、灾备等

(初学简化概念,实操后再精密补充)

二.Kubernetes组成

  • master:管制节点

    • kube-apiserver:负责API服务
    • kube-scheduler:负责调度
    • kube-controller-manager:负责容器编排
    • etcd:负责集群的长久化数据存储

  • node:计算节点

    • Networking
    • kubelet
    • container runtime
    • volume plugin
    • device plugin
    • linux os
kubelet:是计算节点的外围局部,次要负责同容器运行时(比方Docker我的项目)打交道。交互依赖CRI(container runtime interface)的近程调用接口,这个接口定义了容器运行时的各项外围操作,比方一个容器所须要的所有参数。所以只有这个镜像是规范的容器镜像,就能够通过CRI接入到Kubernetes我的项目中。
OCI:容器运行时,个别通过OCI这个容器运行时标准同底层的linux操作系统进行交互,即把CRI的申请转换成对linux零碎的调用(Namespace Cgroups)。
gRPC:kubelet通过该协定于Device Plugin的插件进行交互,是kubernetes治理GPU等宿主机物理设施的次要组件。