偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

K8s 核心組件及運(yùn)行機(jī)制

云計(jì)算 云原生
一個(gè) Kubernetes 集群由一組被稱作節(jié)點(diǎn)的機(jī)器組成。這些節(jié)點(diǎn)上運(yùn)行 Kubernetes所管理的容器化應(yīng)用。集群具有至少一個(gè)工作節(jié)點(diǎn)。

kubernetes核心組件及運(yùn)行機(jī)制

一個(gè) Kubernetes 集群由一組被稱作節(jié)點(diǎn)的機(jī)器組成。這些節(jié)點(diǎn)上運(yùn)行 Kubernetes所管理的容器化應(yīng)用。集群具有至少一個(gè)工作節(jié)點(diǎn)。

工作節(jié)點(diǎn)托管作為應(yīng)用負(fù)載的組件的 Pod ??刂破矫婀芾砑褐械墓ぷ鞴?jié)點(diǎn)和 Pod 。為集群提供故障轉(zhuǎn)移和高可用性,這些控制平面一般跨多主機(jī)運(yùn)行,集群跨多個(gè)節(jié)點(diǎn)運(yùn)行。

k8s運(yùn)行機(jī)制

API server

API server 的核心功能是提供k8s各類資源對(duì)象(如Pod、RC、Service)的增刪改查及Watch等HTTP REST接口,成為集群內(nèi)各個(gè)功能模塊之間數(shù)據(jù)交互和通信的中心樞紐,是整個(gè)集群的數(shù)據(jù)總線和數(shù)據(jù)中心。 通常還具有以下功能。

  • 集群管理的API入口
  • 資源配額控制的入口
  • 提供了完備的集群安全機(jī)制。

通常我們會(huì)通過kubectl命令與API server進(jìn)行交互,提供restful API,所以說也可以通過代碼方式直接調(diào)用k8s的API server。

apiserver架構(gòu)圖

controller-manager

controller-manager 作為集群內(nèi)部的管理控制中心,負(fù)責(zé)集群內(nèi)部的Node、Pod、Endpoint、Namespace、ServiceAccount、ResourceQuota等的管理,意為控制器。

新版本replication controller 被ReplicaSet替代。

controller manager

從邏輯上講,每個(gè)控制器都是一個(gè)單獨(dú)的進(jìn)程, 但是為了降低復(fù)雜性,它們都被編譯到同一個(gè)可執(zhí)行文件,并在一個(gè)進(jìn)程中運(yùn)行。

每個(gè)controller通過API server 提供的接口實(shí)時(shí)監(jiān)控著集群里每個(gè)資源對(duì)象的狀態(tài),當(dāng)發(fā)生各種故障導(dǎo)致系統(tǒng)狀態(tài)發(fā)生變化,會(huì)嘗試著將系統(tǒng)從“現(xiàn)有狀態(tài)”修正到“期望狀態(tài)”。

以下為一些控制器的作用

  • 節(jié)點(diǎn)控制器(Node Controller): 負(fù)責(zé)在節(jié)點(diǎn)出現(xiàn)故障時(shí)進(jìn)行通知和響應(yīng) 。
  • 端點(diǎn)控制器(Endpoints Controller): 填充端點(diǎn)(Endpoints)對(duì)象(即加入 Service 與 Pod)。
  • 服務(wù)帳戶和令牌控制器(Service Account & Token Controllers): 為新的命名空間創(chuàng)建默認(rèn)帳戶和 API 訪問令牌。

scheduler

kube-scheduler意為調(diào)度器,在集群承擔(dān)了"承上啟下"的重要功能,“承上”指的是它負(fù)責(zé)接收 Controller -manager創(chuàng)建的新Pod。為其安排一個(gè)可以安置的node;“啟下”指的是安置完成之后,目前Node上的kubelet服務(wù)進(jìn)程接管后繼續(xù)工作,負(fù)責(zé)Pod生命周期中的下半生。

具體來說,Kubernetes Scheduler的作用是將待調(diào)度的Pod(API新創(chuàng)建的Pod、Controller Manager為補(bǔ)足副本而創(chuàng)建的Pod等)按照特定的調(diào)度算法和調(diào)度策略綁定(Binding)到集群中某個(gè)合適的Node上,并將綁定信息寫入etcd中。在整個(gè)調(diào)度過程中涉及三個(gè)對(duì)象,分別是待調(diào)度Pod列表、可用Node列表,以及調(diào)度算法和策略。簡(jiǎn)單地說,就是通過調(diào)度算法調(diào)度為待調(diào)度Pod列表中的每個(gè)Pod從Node列表中選擇一個(gè)最適合的Node。

scheduler運(yùn)行機(jī)制

kubelet

一個(gè)在集群中每個(gè)節(jié)點(diǎn)(node)上運(yùn)行的代理。 它保證容器(containers)都 運(yùn)行在 Pod 中。

kubelet 接收一組通過各類機(jī)制提供給它的 PodSpecs,確保這些 PodSpecs 中描述的容器處于運(yùn)行狀態(tài)且健康。

kube-proxy

kube-proxy 是集群中每個(gè)節(jié)點(diǎn)上運(yùn)行的網(wǎng)絡(luò)代理, 實(shí)現(xiàn) Kubernetes 服務(wù)(Service) 概念的一部分。

kube-proxy 維護(hù)節(jié)點(diǎn)上的網(wǎng)絡(luò)規(guī)則。這些網(wǎng)絡(luò)規(guī)則允許從集群內(nèi)部或外部的網(wǎng)絡(luò)會(huì)話與 Pod 進(jìn)行網(wǎng)絡(luò)通信。

如果操作系統(tǒng)提供了數(shù)據(jù)包過濾層并可用的話,kube-proxy 會(huì)通過它來實(shí)現(xiàn)網(wǎng)絡(luò)規(guī)則。否則, kube-proxy 僅轉(zhuǎn)發(fā)流量本身

這里介紹一下 RC RSDeployment的區(qū)別

  • replicationController POD管理控制器 老版本使用
  • replicaset 新版本的POD控制器,替代RC 支持集合式的selector:(version in (v1.0, v2.0)或env notin (dev, qa))
  • Deployment 聲明式的pod部署方式 支持rolling update,Deployment為Pod和ReplicaSet提供聲明式更新。

你只需要在Deployment中描述你想要的目標(biāo)狀態(tài)是什么,Deployment controller就會(huì)幫你將Pod和Replica

Set的實(shí)際狀態(tài)改變到你的目標(biāo)狀態(tài)。你可以定義一個(gè)全新的Deployment,也可以創(chuàng)建一個(gè)新的替換舊的Deployment


責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2023-07-04 07:30:03

容器Pod組件

2015-11-20 11:20:54

js開發(fā)

2022-04-22 13:32:01

K8s容器引擎架構(gòu)

2021-03-11 12:31:33

K8sCoreDNSDNS服務(wù)器

2018-03-15 16:45:47

前端JavaScriptthis

2019-05-10 14:00:21

小程序運(yùn)行機(jī)制前端

2022-04-29 10:40:38

技術(shù)服務(wù)端K8s

2009-12-11 10:52:37

PHP運(yùn)行機(jī)制

2009-02-03 14:00:20

PHP運(yùn)行PHP調(diào)用PHP原理

2023-06-06 08:14:18

核心Docker應(yīng)用程序

2022-06-14 07:56:15

Kubernetes存儲(chǔ)架構(gòu)K8S

2024-05-27 00:00:10

KubernetesK8s云原生

2024-12-30 08:58:04

2023-11-06 07:16:22

WasmK8s模塊

2023-09-11 15:35:25

2022-08-29 08:21:00

k8sDocker

2021-12-20 00:03:38

Webpack運(yùn)行機(jī)制

2010-02-01 17:19:30

C++運(yùn)行機(jī)制

2018-12-26 16:30:09

SQL Server內(nèi)部運(yùn)行機(jī)制數(shù)據(jù)庫

2010-01-05 16:10:21

.NET Framew
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)