请选择 进入手机版 | 继续访问电脑版
点击联系客服
客服QQ:509006671 客服微信:mengfeiseo

兰州老站长

 找回密码
 立即注册
查看: 56|回复: 0

k8s:基本概念和组件

[复制链接]

1

主题

1

帖子

-7

积分

限制会员

积分
-7
发表于 2021-3-7 14:32:50 | 显示全部楼层 |阅读模式
基本概念

Kubernetes中的大部分概念都抽象为Kubernetes管理的资源对象。

master:master节点是负责管理和控制整个群集的Kubernetes群集的控制节点。主节点包含以下组件:

Kube-apiserver:提供HTTP  REST服务的群集控制门户Kube-Controller-manager:Kubernetes群集中所有资源对象的自动化控制中心kube-scheduler: Pod调度节点节点包含以下组件

Kubelet:负责Pod的创建、启动、监控、重新启动、废弃等任务,并与主节点一起工作,实现群集管理的基本功能。Kube-proxy: Kubernetes服务通信和负载平衡执行容器化(Pod)应用程序Pod: Pod是Kubernetes最基本的部署调度单元。每个Pod可以由一个或多个业务容器和一个根容器(Pause容器)组成。Pod表示应用程序的实例

ReplicaSet: Pod副本的抽象,用于解决Pod的扩展和扩展

Deployment:Deployment表示部署,内部使用ReplicaSet实施。通过部署,您可以创建相应的复制集,以完成Pod副本的创建

服务:服务是Kubernetes最重要的资源对象。Kubernetes的服务对象可以是微服务体系结构中的微服务。服务定义服务调用方访问服务后端Pod副本实例的服务访问门户。服务通过与标签选择器相同的后端的Pod副本设置。部署可确保后端Pod副本的数量,即服务的可扩展性。





Kubernetes  主要由以下几个核心组件组成:

Etcd存储整个群集的状态,即数据库。Apiserver为资源操作提供唯一的门户,并提供身份认证、授权、访问控制、API注册和检索等机制。Controller  manager可维护群集状态,如故障检测、自动扩展、滚动更新等。Scheduler负责资源调度,并根据预定的调度战略将Pod分配给该系统。Kubelet在保持容器生命周期的同时,还负责卷(CSI)和网络(CNI)的管理。容器运行时负责镜像管理和Pod和容器的实际操作(CRI)。Kube-proxy为服务提供群集内服务发现和负载平衡。当然了除了上面的这些核心组件,还有一些推荐的插件:

Kube-dns负责为整个群集提供dns服务。Ingress  Controller为服务提供外部网络门户网站Heapster。资源监控(已停止维护,并用Prometheus替换)Dashboard提供GUI  组件通信。

Kubernetes多组件之间的通信原理:

Apiserver负责etcd存储的所有工作,只有apiserver直接对etcd群集apiserver内部(群集的其他组件)和外部(用户)操作集成REST  API。其他组件通过apiserver通信controller  manager、scheduler、kube-proxy和kubelet等通过apiserver  watch  API监视资源更改。需要为资源更新相应任务资源状态的所有任务都通过apiserver的REST  API,apiserver也直接调用kubelet  API(例如,logs、exec、attach等)。默认情况下,kubelet证书不被确认,但可以通过-kube





用户通过REST  API创建Podapiserver并将其写入etcdscheduluer。检测并更新etcdscheduluer检测到未绑定节点的Pod。节点绑定kubelet检测到新的Pod日程。通过container运行时运行此Podkubelet,通过content运行
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|无图版|手机版|小黑屋|兰州@IT精英团

GMT+8, 2021-4-14 18:03 , Processed in 0.060758 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2021, Tencent Cloud.

快速回复 返回顶部 返回列表