• k8s framework


    reference

    1. k8s master framework

    master

    master 是k8s cluster运行着daemon服务:kube-apiserver, kube-scheduler, kube-contronller-manager, etcd, flannel(pod网络)

    kube-apiserver(API Server)

    API Server是k8s cluster的前端接口,各种客户端工具(CLI或UI)以及k8s其他组件可以通过它管理cluster的各种资源。

    kube-contronller-manager(controller manager)

    controller manager负责管理cluster各种资源,保证资源处于预期的状态。Controller Manager 由多种 controller 组成,包括 replication controller、endpoints controller、namespace controller、serviceaccounts controller 等例如 replication controller 管理 Deployment、StatefulSet、DaemonSet 的生命周期,namespace controller 管理 Namespace 资源。

    kube-scheduler(Scheduler)

    Scheduler复制决定将pod放到哪个node运行,scheduler在调度时会考虑到cluster的拓扑结构,当前各个节点的负载,以及应用对高可用,性能的需求。

    etcd

    etcd负责保存k8s cluster的配置信息和各种资源的状态信息。当数据发生变化时,etcd会快速地通知k8s相关组件。

    pod网络(flannel)

    Pod 要能够相互通信,Kubernetes Cluster 必须部署 Pod 网络,flannel 是其中一个可选方案。

    2. k8s node framework

    kubelet

    kubelet是node的agent,当scheduler确定在某个node上运行pod后,会将pod的具体配置信息(image,volume)发送给该节点的kubelet,kubelet根据这些信息创建和运行容器,并向master报告运行状态。

    kube-proxy

    service在逻辑上代表了后端的多个pod,外界通过service访问pod。每个node都会运行kube-proxy服务,它负责将访问service的TCP/UDP数据流转发到后端的容器,如果有多个副本,kube-proxy会实现负载均衡。

    pod网络

    Pod 要能够相互通信,Kubernetes Cluster 必须部署 Pod 网络,flannel 是其中一个可选方案。

  • 相关阅读:
    递归
    lecture-11
    最近公共祖先LCA
    微软面试100题
    0-1背包问题
    ubuntu网络已禁用解决办法
    cors(cross-resource-oragin-sharing 跨域资源共享) 解决跨域问题
    本地修改域名对应的IP地址
    oracle 解锁用户被锁住
    oracle 改变表中 某列的数据类型(该列已有数据)
  • 原文地址:https://www.cnblogs.com/vickey-wu/p/9330221.html
Copyright © 2020-2023  润新知