k8s 组件

在这里插入图片描述

master 节点

集群的控制面板功能,负责管理整个集群,控制包括全局的角色和调度

kubectl 是一个客户端管理工具,直接管理 API server,提供一个请求到 api server ,中间有一个 auth认证,认证通过后 api 将信息存储到 etcd 数据库中。

  • api server

k8s各类资源对象的增删改查 及 watch 等http rest 接口,是整个系统的数据总线和数据中心。

所有服务访问的统一入口

  • etcd : 键值对数据库,存储k8s重要数据。(持久化)
    在这里插入图片描述
    etcd采用http 协议,wal 为 写入数据的一个预备份。raft 为写入算法,store 为本地磁盘
  • scheduler:调度器,接受任务选择合适的节点进行分配任务
    controller-manager
    维护副本的数量,比如pod的数量

node节点

在这里插入图片描述
kubelet :操作docker创建容器,维持pod的生命周期,和容器引擎交互
kube-proxy :负责写入规则 到 iptables、ipvs 实现服务映射访问
pod之间的通信和维持负载均衡。通过操作防火墙来实现 firewall
docker(或者其他容器引擎)

插件

COREDNS:为集群中得svc创建一个域名ip的对应关系解析
DASHBOARD:给 k8s 集群提供一个B/S 结构的访问体系
INGRESS CONTROLLER:官方只能提供四层代理,INGRESS 可以实现7层
FEDERATION:提供一个可以跨集群中心多k8s 统一管理功能
PROMETHEUS:提供一个k8s集群的监控能力
ELK:提供k8s 集群日志统一分析介入平台

在这里插入图片描述

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐