原文地址:https://github.com/kubernetes/kubernetes/blob/release-1.3/docs/design/architecture.md

Kubernetes architecture

一个运行的 kubernetes 集群,包涵 agents 节点(kubelet)和主节点组件(APIs,调度器等等),这些构建于分布式存储之上。下图展示了一个我们期望的架构,尽管我们还在完善,比如让kebelet(所有的组件)运行在容器当中,并使所有的调度程序100%可插拔。

The Kubernetes Node

当我们审视整个系统架构时,我们将其分解为两部分,在工作节点上运行的服务和群级控制层面的服务。

Kubernetes node 节点具有运行应用程序容器所需的服务,并可从 master 系统进行管理。

当然,每个节点都要运行Docker。Docker负责下载镜像,管理容器运行的细节。

kubelet

kubelet 管理 pods 和他们的容器, 镜像, 磁盘卷等资源。

kube-proxy

每个节点还运行一个简单的网络代理和负载均衡器(有关详细信息,请参阅服务常见问题解答)。这反映了services(在每个节点上的Kubernetes API中定义的服务文档以获取更多详细信息),并且可以跨一组后端执行简单的TCP和UDP流转发(循环)。

Service endpoints 目前通过DNS或环境变量找到。这些变量解析为 service proxy 管理的端口。

The Kubernetes Control Plane

Kubernetes控制层分为几部分组件。目前它们都在一个主节点上运行(single master node),但预计很快就会改变,以支持集群的高可用。这些组件协同工作以提供群集的统一视图。

etcd

集群中 master 节点的所有持久状态都存储在etcd中。它提供了一种可靠的方法,存储配置的数据。通过对watch的支持,可以非常快速地将变更通知到各个组件。

Kubernetes API Server

apiserver提供Kubernetes API。它旨在成为一个 CRUD-y 服务器,大多数/所有业务逻辑在单独的组件或插件中实现。apiserver主要处理 REST 操作,验证它们,并更新etcd(或者其他存储)中的相应对象。

Scheduler

Scheduler 程序通过 /binding API 将未调度的 pod 绑定到节点。调度程序是可拔插的,我们希望将来支持多个集群调度程序甚至用户提供的调度程序。

Kubernetes Controller Manager Server

所有其他集群级功能当前由 Controller Manager 执行。例如,Endpoints 对象由 endpoints controller 创建和更新,节点由 node controller 发现,管理和监视。这些最终可以分成单独的组件,使它们可以独立插入。

replication controller是一种机制,它在simple pod API 之上的层级。一旦实现,我们最终计划将其移植成为通用插件机制。

01-k8s 架构的更多相关文章

  1. [k8s]k8s架构图解

    k8s架构图解 启动参数及证书梳理 master端必须要装flannel 注: flannel网络能确保各节点间 Pod 网段实现互通 master 节点与 node 节点上的 Pods 通过 Pod ...

  2. [转帖]我花了10个小时,写出了这篇K8S架构解析

    我花了10个小时,写出了这篇K8S架构解析 https://www.toutiao.com/i6759071724785893891/   每个微服务通过 Docker 进行发布,随着业务的发展,系统 ...

  3. 01.基础架构:一条SQL查询语句是如何执行的?学习记录

    01.基础架构:一条SQL查询语句是如何执行的?学习记录http://naotu.baidu.com/file/1c8fb5a0f2497c3a2655fed89099cb96?token=ff25d ...

  4. k8s架构与组件详解

    没有那么多花里胡哨,直接进行一个K8s架构与组件的学习. 一.K8s架构 k8s系统在设计是遵循c-s架构的,也就是我们图中apiserver与其余组件的交互.在生产中通常会有多个Master以实现K ...

  5. k8s架构分析(二)--技术流ken

    master节点 k8s的集群由master和node组成,节点上运行着若干k8s服务. master节点之上运行着的后台服务有kube-apiserver .kube-scheduler.kube- ...

  6. k8s 架构浅析

    文章目录 目录 Kubernetes 的电梯间演讲 Kubernetes 的核心层级对象 Kubernetes 的组件架构 Kubernetes 的组件通信协议/接口 Kubernetes 的分层架构 ...

  7. k8s架构

    master节点 k8s的集群由master和node组成,节点上运行着若干k8s服务. master节点之上运行着的后台服务有kube-apiserver .kube-scheduler.kube- ...

  8. Kubernetes/K8s架构师实战集训营【中、高级班】-2020

    下载地址: [中级班] 链接:https://pan.baidu.com/s/1FWAz2V7BPsObixlZyW93sw提取码:mvu0 [高级班] 链接:https://pan.baidu.co ...

  9. k8s架构分析(二)

    master节点 k8s的集群由master和node组成,节点上运行着若干k8s服务. master节点之上运行着的后台服务有kube-apiserver .kube-scheduler.kube- ...

  10. jQuery源码分析-01总体架构

    1. 总体架构 1.1自调用匿名函数 self-invoking anonymous function 打开jQuery源码,首先你会看到这样的代码结构: (function( window, und ...

随机推荐

  1. http协议内容展示以及如何用telnet发送请求

    1.http协议组成: 报文首部:状态行(请求行) 请求首部字段 通用字段 其他信息 空行 报文主体 GET请求头: GET /test.php?a=1 HTTP/1.1 Host: localhos ...

  2. 【实战】SpringBoot + KafKa

    1.配置pom包 <dependency> <groupId>org.springframework.kafka</groupId> <artifactId& ...

  3. JVM 参数类型

    标准参数 -help -server -client -version -showversion -cp -classpath X参数 非标准化参数(在各个JDK版本中可能会变,但是变动比较小) -X ...

  4. spring 5.x 系列第3篇 —— spring AOP (xml配置方式)

    文章目录 一.说明 1.1 项目结构说明 1.2 依赖说明 二.spring aop 2.1 创建待切入接口及其实现类 2.2 创建自定义切面类 2.3 配置切面 2.4 测试切面 附: 关于切面表达 ...

  5. 动手写一个简单版的谷歌TPU-指令集

    系列目录 谷歌TPU概述和简化 基本单元-矩阵乘法阵列 基本单元-归一化和池化(待发布) TPU中的指令集 SimpleTPU实例: (计划中) 拓展 TPU的边界(规划中) 重新审视深度神经网络中的 ...

  6. SpringBoot 缓存注解 与EhCache的使用

    在SpringBoot工程中配置EhCache缓存 1.在src/main/resources下新建ehcache.xml文件 eternal=true //缓存永久有效,false相反 maxEle ...

  7. Node.js Windows Example

    Firstly, download the msi file from https://nodejs.org/en/ Second, click the msi file to install nod ...

  8. header 无法实现跳转

    错误:Warning: Cannot modify header information - headers already sent by (output started at 方法:“php.in ...

  9. scrapy基础知识之 parse()方法的工作机制思考:

    1.因为使用的yield,而不是return.parse函数将会被当做一个生成器使用.scrapy会逐一获取parse方法中生成的结果,并判断该结果是一个什么样的类型: 2.如果是request则加入 ...

  10. 【风哥干货】快速解决Oracle数据库故障必备的20个脚本与命令

    1.操作系统性能(通常故障出现时最先检查的内容)top.topas.vmstat.iostat.free.nmon 2.万能重启方法 如应急情况,需要重启数据库:tail -100f <对应路径 ...