首页 > 其他分享 >Kubernetes分布式架构分析

Kubernetes分布式架构分析

时间:2022-12-19 17:46:13浏览次数:34  
标签:容器 架构 Kubernetes 集群 节点 分布式

 

一个Kubernetes平台可以管理几百台容器主机,以及运行在这些主机上的容器应用。如果容器主机采用裸金属服务器,则一台容器主机上运行的容器应用可以超过200个。也就是说,一个 Kubernetes 平台编配的容器应用数量是数千到数万个,要想确保这么多容器应用正常运行,且各自运行在对应的容器主机上,并对这些容器应用的生命周期进行合理管理,就需要Kubernetes自身的架构具有一定的可靠性及比较好的容错能力。Kubernetes 架构自身是一个经典的分布式架构。

图1所示为 Kubernetes 分布式架构设计示意图。分布式架构软件的运行需要多个服务器或虚拟机,一个有效的Kubernetes部署称为一个集群,集群中有多个节点,每个节点可以是物理服务器,也可以是虚拟机,每个节点上运行的操作系统是Linux,且每个节点上都运行着数十到数百个容器。这些节点可以分为两类:控制节点和计算节点,而 Kubernetes 架构的分布式体现在它的控制节点。

 

图 1 Kubernetes 分布式架构设计

 

控制节点是Kubernetes集群的神经中枢。控制平面包括用于控制集群的Kubernetes 组件以及一些有关集群状态和配置的数据。这些核心Kubernetes 组件负责处理重要的工作,以确保容器以足够的数量和资源运行。控制平面会一直与计算节点的容器主机保持联系。生产环境中控制平面的高可用部署包括三个节点,每个节点上运行的组件相同。

etcd是Kubernetes控制平面最重要的组件,etcd存储着集群的配置数据和集群状态的数据。图1 中 etcd为三节点集群部署,每条键值对的数据会存储到三个节点上,这种容错的设计可以保证每条数据有三个副本,任何一个节点的故障宕机都不会影响控制平面编排调度的正常进行。etcd 提供持久化集群状态数据,使得Kubernetes 集群在面对升级、大范围重启及其他复杂场景时都能运行自如。

标签:容器,架构,Kubernetes,集群,节点,分布式
From: https://www.cnblogs.com/tiduyun/p/16992695.html

相关文章

  • VS2010创建基于C/S的三层架构模型
    在VS2010环境下创建基于C/S架构的三层模型:基础知识准备:    三层:UI、BLL、DAL另加数据模型Model    Winform作为UI界面。1、创建空的解决方案      新......
  • Kubernetes 集群搭建
    环境和版本CentOS:7.6kubelet:1.20.5kubeadm:1.20.5kubectl:1.20.5master节点:腾讯云服务器为2C2G,公网IP:xxx.xxx.xx.xxxnode1节点:华为云(不建议)服务器为2核4GB,公......
  • 分布式ID生成方案
    分布式ID生成方案朱门酒肉臭,路有冻死骨。简介对于单体项目,主键ID常用主键自动的方式进行设置。但是在分布式系统中,分库分表之后就不行了,如果还采用简单数......
  • 运维架构图
    文字描述之后再补上,图片先行。......
  • Spring Cloud构建微服务架构(二)服务消费者
     NetflixRibbonisanInterProcessCommunication(IPC)cloudlibrary.Ribbonprimarilyprovidesclient-sideloadbalancingalgorithms.Apartfromtheclient-si......
  • 工作十年,谈谈我的高可用架构和系统设计经验
    本文从研发规范层面、应用服务层面、存储层面、产品层面、运维部署层面、异常应急层面这六大层面去剖析一个高可用的系统需要有哪些关键的设计和考虑一、高可用架构和系统设......
  • 迅为3A5000_7A2000开发板龙芯LoongArch架构
         迅为3A5000_7A2000开发板龙芯LoongArch架构主要参数    处理器:龙芯3A5000主频:2.3GHz-2.5GHz桥片:7A2000内存:8GB、16GBDDR4......
  • 迅为3A5000_7A2000开发板龙芯LoongArch架构
    迅为3A5000_7A2000开发板龙芯LoongArch架构主要参数   处理器:龙芯3A5000主频:2.3GHz-2.5GHz桥片:7A2000内存:8GB、16GBDDR4带ECC纠错(配置可选)系统:Loongn......
  • kubernetes 1.21 版本升级
    1.规划升级前:组件名称位置版本kube-apiserver/usr/bin/kube-apiserverv1.21.13etcd、etcdctl/usr/bin/etcd、/usr/bin/etcdctl3.5.4kube-controll......
  • 基于消息队列实现分布式事务
    注意:本文把消息队列与购物车系统看作同一个事务目标:掌握消息队列的事务场景:订单系统产生订单,购物车系统减购物车中的商品。实现思路:订单系统在消息队列上开启一个事务......