原文链接:
http://click.aliyun.com/m/27084/
一、Kubernetes的总架构图 二、Kubernetes各个组件介绍 (一)kube-master[控制节点] master的工作流程图 Kubecfg将特定的请求,比如创建Pod,发送给Kubernetes Client。
本文CSDN博客地址:http://blog.csdn.net/huwh_/article/details/71308171
一、Kubernetes的总架构图
Center
二、Kubernetes各个组件介绍
(一)kube-master[控制节点]
master的工作流程图
Kubecfg将特定的请求,比如创建Pod,发送给Kubernetes Client。
Kubernetes Client将请求发送给API server。
API Server根据请求的类型,比如创建Pod时storage类型是pods,然后依此选择何种REST Storage API对请求作出处理。
REST Storage API对的请求作相应的处理。
将处理的结果存入高可用键值存储系统Etcd中。
在API Server响应Kubecfg的请求后,Scheduler会根据Kubernetes Client获取集群中运行Pod及Minion/Node信息。
依据从Kubernetes Client获取的信息,Scheduler将未分发的Pod分发到可用的Minion/Node节点上。
1、API Server[资源操作入口]
提供了资源对象的唯一操作入口,其他所有组件都必须通过它提供的API来操作资源数据,只有API Server与存储通信,其他模块通过API Server访问集群状态。
第一,是为了保证集群状态访问的安全。
第二,是为了隔离集群状态访问的方式和后端存储实现的方式:API Server是状态访问的方式,不会因为后端存储技术etcd的改变而改变。
作为kubernetes系统的入口,封装了核心对象的增删改查操作,以RESTFul接口方式提供给外部客户和内部组件调用。对相关的资源数据“全量查询”+“变化监听”,实时完成相关的业务功能。
2、Controller Manager[内部管理控制中心]
实现集群故障检测和恢复的自动化工作,负责执行各种控制器,主要有:
endpoint-controller:定期关联service和pod(关联信息由endpoint对象维护),保证service到pod的映射总是最新的。
replication-controller:定期关联replicationController和pod,保证replicationController定义的复制数量与实际运行pod的数量总是一致的。
3、Scheduler[集群分发调度器]
Scheduler收集和分析当前Kubernetes集群中所有Minion节点的资源(内存、CPU)负载情况,然后依此分发新建的Pod到Kubernetes集群中可用的节点。
实时监测Kubernetes集群中未分发和已分发的所有运行的Pod。
Scheduler也监测Minion节点信息,由于会频繁查找Minion节点,Scheduler会缓存一份最新的信息在本地。
最后,Scheduler在分发Pod到指定的Minion节点后,会把Pod相关的信息Binding写回API Server。
(二)kube-node[服务节点]
kubelet结构图
1、Kubelet[节点上的Pod管家]
负责Node节点上pod的创建、修改、监控、删除等全生命周期的管理
定时上报本Node的状态信息给API Server。
kubelet是Master API Server和Minion之间的桥梁,接收Master API Server分配给它的commands和work,与持久性键值存储etcd、file、server和http进行交互,读取配置信息。
具体的工作如下:
设置容器的环境变量、给容器绑定Volume、给容器绑定Port、根据指定的Pod运行一个单一容器、给指定的Pod创建network 容器。
同步Pod的状态、同步Pod的状态、从cAdvisor获取Container info、 pod info、 root info、 machine info。
在容器中运行命令、杀死容器、删除Pod的所有容器。
2、Proxy[负载均衡、路由转发]
Proxy是为了解决外部网络能够访问跨机器集群中容器提供的应用服务而设计的,运行在每个Node上。Proxy提供TCP/UDP sockets的proxy,每创建一种Service,Proxy主要从etcd获取Services和Endpoints的配置信息(也可以从file获取),然后根据配置信息在Minion上启动一个Proxy的进程并监听相应的服务端口,当外部请求发生时,Proxy会根据Load Balancer将请求分发到后端正确的容器处理。
Proxy不但解决了同一主宿机相同服务端口冲突的问题,还提供了Service转发服务端口对外提供服务的能力,Proxy后端使用了随机、轮循负载均衡算法。
3、kubectl(kubelet client)[集群管理命令行工具集]
通过客户端的kubectl命令集操作,API Server响应对应的命令结果,从而达到对kubernetes集群的管理。
参考文章:
https://yq.aliyun.com/articles/47308?spm=5176.100240.searchblog.19.jF7FFa
版权声明:本文内容由互联网用户自发贡献,本社区不拥有所有权,也不承担相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:yqgroup@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
原文链接:
http://click.aliyun.com/m/27084/
分享到:
相关推荐
Kubernetes架构图,描述了Kubernetes的底层架构,原理解析
Kubernetes架构培训笔记 Kubernetes(简称K8s),是一个自动部署、扩展和管理容器化应用程序的开源系统。它提供了一个灵活、可扩展、可靠的平台,用于自动部署、扩展和管理容器化应用程序。 Kubernetes架构概览 --...
Kubernetes 与 OpenStack 融合的企业级微服务架构技术创新 微服务架构是随着云计算的发展应运而生的软 件设计风格,与之对立的是传统的单体架构技术视角。微服务架构具有自包含性,可作为独立的进程存在,通过轻量...
在这种架构下,容器化成为应用程序部署的标准方式,而Kubernetes则成为了执行这一任务的关键技术。Kubernetes具有高度的可移植性,支持不同云提供商、不同发行版和服务之间的应用程序迁移,使得开发人员和企业可以...
本资源"K8S部署+实战+集群架构图.zip"提供了关于Kubernetes部署、实战应用以及集群架构的深入理解,包括3个架构图、1个部署文档和1个实战文档。以下将详细阐述这些关键知识点。 1. **Kubernetes(K8s)基础知识**:...
在了解了架构的组件之后,需要指出的是,虽然文件描述中提到这是一个“简洁的架构示意图”,但实际的Kubernetes架构可能比示意图中展示的要复杂,它可能包括了像网络插件、持久化存储解决方案、监控和日志系统等多种...
总的来说,Kubernetes 通过其精心设计的组件和工作流程,为企业级容器管理和部署提供了强大而灵活的解决方案,满足现代云原生应用的需求。然而,值得注意的是,尽管 Kubernetes 具有巨大的潜力,但它也需要深入的...
### Kubernetes架构权威指南知识点概述 #### 一、Kubernetes简介与基本概念 - **Kubernetes简介**:Kubernetes(简称K8s)是一种开源系统,用于自动化容器化应用的部署、扩展和管理。它能够提供容器化的应用生命...
k8s架构图整体框架知识合集是对kubernetes架构的深入剖析和总结,本文对k8s的架构、设计、实现原理、存储、网络、调度、监控、安全、应用管理等方面进行了详细的介绍和分析。 一、k8s架构设计 k8s架构设计是围绕着...
在IT行业中,系统架构图是描述软件或硬件系统组织方式的重要工具,它们帮助开发者、项目经理和利益相关者理解系统的组成部分、交互方式以及整体工作流程。本压缩包“各种系统架构图与详细说明.zip”中包含的文档...
Kubernetes的架构包括: * Master节点:负责调度和管理Kubernetes集群 * Node节点:运行容器和提供计算资源 * Pod:最小的部署单元,包含一个或多个容器 * Controller:管理Pod的生命周期 * Service:提供负载均衡...
在.NET Core系统架构图设计中,涉及的要素包括但不限于功能设计、架构设计、部署设计、运营设计等方面。对于.NET Core开发人员来说,以下是一些详细的知识点。 1. 功能设计: 在功能设计上,系统需要集成多种功能,...
这包括了对DevOps技术和基础架构技术的相关性分析,从而为用户在选择与Kubernetes集成的工具和服务时提供参考。同时,报告还探讨了在生产环境中使用Kubernetes所面临的问题和挑战。 Kubernetes用户体验调查:用户...
08.Kubernetes横空出世背后的秘密 09.Kubernetes架构深度解析 10.Kubernets集群入门 11.Kubernetes集群部署实践 12.Kubernetes的分布式网络实践 13.Kubernetes Service的负载均衡和网络路由秘密 14.Kubernetes API和...
总的来说,这些架构图揭示了大型互联网公司如何构建可扩展、高可用的系统,涉及到的技术和概念包括微服务、容器化(Docker)、编排(Kubernetes)、云原生、服务网格等。对于IT从业者来说,深入理解这些架构设计有助...
本资源“30种java技术框架-方案架构图汇总.zip”包含了针对不同场景和需求的30个Java技术框架的方案架构图,旨在帮助开发者理解和选择适合的框架。以下是对这些框架及其在实际应用中的作用的详细说明: 1. **Spring...
总的来说,《Kubernetes 指南》是全面了解和掌握Kubernetes的宝贵资料,无论你是初学者还是经验丰富的管理员,都能从中受益匪浅。通过深入学习和实践,你将能够熟练地构建、管理和优化Kubernetes集群,从而更好地...
Kubernetes 的架构图如图所示,当用户将应用从传统平台转移到 Kubernetes 时,首当其冲的任务就是将应用容器化,并定义 Pod 和 ReplicaSet(或者 PetSets,如果迁移的是有状态应用)来运行应用,Kubernetes 提供针对...
此外,还有“Kubernetes概览”,在这一部分,会详细介绍Kubernetes系统的架构和它能提供的各种功能。 接下来是关于如何创建和部署Kubernetes集群的章节。其中,“创建Kubernetes集群”详细说明了创建一个新集群的...