kubernetes 架构

2022-06-02 08:09:18 浏览数 (1)

文章目录

跑太快了,容易扯着蛋

不要想着我咋反复横跳,一会儿 mesh简介一会儿又跑回 docker,然后又 istio 简介又跑回 kubernetes 架构。看上面。

Kubernetes中提供灵活和松耦合的机制用于服务发现,像大多数分布式集群平台,Kubernetes集群中至少包含一个主节点和多个工作节点。


Kubernetes组件:

  • etcd

etcd的官方将它定位成一个可信赖的分布式键值存储服务,它能够为整个分布式集群存储一些关键数据,协助分布式集群的正常运转。

Raft从一开始就被设计成一个易于理解和实现的共识算法。每一个Raft集群中都包含多个服务器,在任何时刻,每一台服务器只可能处于Leader、Follower以及Candidate三种状态;在处于正常的状态时,集群中只会存在一个Leader,其余的服务器都是Follower

推荐在Kubernetes集群中使用etcd v3,v2版本已在Kubernetes v.11中弃用

  • Kubernetes API Server

作为Kubernetes系统的入口,其封装了核心对象的增删改查操作,以Restful API接口方式提供给外部客户和内部组件调用。维护的REST对象持久化到Etcd中存储

  • Kubernetes Scheduler

新建立的Pod进行节点(node)选择(即分配机器),负责集群的资源调度。组件抽离,可以方便替换成其他调度器

  • Controller Manager

负责维护集群的状态,比如故障检测、自动扩展、滚动更新等

  • Kubelet

负责维护容器的生命周期,同时也负责Volume(CSI)和网络(CNI)的管理

  • Container runtime

负责镜像管理以及Pod和容器的真正运行(CRI)

  • Kube-proxy

负责为Service提供cluster内部的服务发现和负载均衡

  • CoreDNS

负责为整个集群提供DNS服务

  • Ingress Controller

为K8S中的服务提供外网入口

  • Prometheus

为整个集群提供资源监控能力

  • Dashboard

提供B/S的访问体系,允许用户通过web进行集群管理及设置

  • Federation

提供跨可用区的集群,提供不同数据中心的K8S集群的管理能力

扯点别的吧,为什么这篇叫 “浅析” 呢,为啥我会又转回来整 k8s 的基础呢? 没有自己一个一个安装过去,都不好意思说自己看过 k8s 架构图,我说的是 源码安装。 为啥转回来,昨天 istio 弄得好好的,安装不了,排查一下发现我的 k8s 集群给丢了好几个组件,coredns 和 cni… 那可真是“连根拔起”啊,连配置文件都消失了。。。

0 人点赞