新聞中心
云控制器管理器
FEATURE STATE: Kubernetes v1.11 [beta]

創(chuàng)新互聯(lián)是一家專業(yè)提供饒陽(yáng)企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站、小程序制作等業(yè)務(wù)。10年已為饒陽(yáng)眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。
使用云基礎(chǔ)設(shè)施技術(shù),你可以在公有云、私有云或者混合云環(huán)境中運(yùn)行 Kubernetes。 Kubernetes 的信條是基于自動(dòng)化的、API 驅(qū)動(dòng)的基礎(chǔ)設(shè)施,同時(shí)避免組件間緊密耦合。
組件 cloud-controller-manager 是指云控制器管理器, 云控制器管理器是指嵌入特定云的控制邏輯的 控制平面組件。 云控制器管理器使得你可以將你的集群連接到云提供商的 API 之上, 并將與該云平臺(tái)交互的組件同與你的集群交互的組件分離開來(lái)。
通過(guò)分離 Kubernetes 和底層云基礎(chǔ)設(shè)置之間的互操作性邏輯, 云控制器管理器組件使云提供商能夠以不同于 Kubernetes 主項(xiàng)目的 步調(diào)發(fā)布新特征。
?cloud-controller-manager? 組件是基于一種插件機(jī)制來(lái)構(gòu)造的, 這種機(jī)制使得不同的云廠商都能將其平臺(tái)與 Kubernetes 集成。
設(shè)計(jì)
云控制器管理器以一組多副本的進(jìn)程集合的形式運(yùn)行在控制面中,通常表現(xiàn)為 Pod 中的容器。每個(gè) cloud-controller-manager 在同一進(jìn)程中實(shí)現(xiàn)多個(gè) 控制器。
你也可以用 Kubernetes 插件 的形式而不是控制面中的一部分來(lái)運(yùn)行云控制器管理器。
云控制器管理器的功能
云控制器管理器中的控制器包括:
節(jié)點(diǎn)控制器
節(jié)點(diǎn)控制器負(fù)責(zé)在云基礎(chǔ)設(shè)施中創(chuàng)建了新服務(wù)器時(shí)為之 更新 節(jié)點(diǎn)(Node)對(duì)象。 節(jié)點(diǎn)控制器從云提供商獲取當(dāng)前租戶中主機(jī)的信息。節(jié)點(diǎn)控制器執(zhí)行以下功能:
- 使用從云平臺(tái) API 獲取的對(duì)應(yīng)服務(wù)器的唯一標(biāo)識(shí)符更新 Node 對(duì)象;
- 利用特定云平臺(tái)的信息為 Node 對(duì)象添加注解和標(biāo)簽,例如節(jié)點(diǎn)所在的 區(qū)域(Region)和所具有的資源(CPU、內(nèi)存等等);
- 獲取節(jié)點(diǎn)的網(wǎng)絡(luò)地址和主機(jī)名;
- 檢查節(jié)點(diǎn)的健康狀況。如果節(jié)點(diǎn)無(wú)響應(yīng),控制器通過(guò)云平臺(tái) API 查看該節(jié)點(diǎn)是否 已從云中禁用、刪除或終止。如果節(jié)點(diǎn)已從云中刪除,則控制器從 Kubernetes 集群 中刪除 Node 對(duì)象。
某些云驅(qū)動(dòng)實(shí)現(xiàn)中,這些任務(wù)被劃分到一個(gè)節(jié)點(diǎn)控制器和一個(gè)節(jié)點(diǎn)生命周期控制器中。
路由控制器
Route 控制器負(fù)責(zé)適當(dāng)?shù)嘏渲迷破脚_(tái)中的路由,以便 Kubernetes 集群中不同節(jié)點(diǎn)上的 容器之間可以相互通信。
取決于云驅(qū)動(dòng)本身,路由控制器可能也會(huì)為 Pod 網(wǎng)絡(luò)分配 IP 地址塊。
服務(wù)控制器
服務(wù)(Service)與受控的負(fù)載均衡器、 IP 地址、網(wǎng)絡(luò)包過(guò)濾、目標(biāo)健康檢查等云基礎(chǔ)設(shè)施組件集成。 服務(wù)控制器與云驅(qū)動(dòng)的 API 交互,以配置負(fù)載均衡器和其他基礎(chǔ)設(shè)施組件。 你所創(chuàng)建的 Service 資源會(huì)需要這些組件服務(wù)。
鑒權(quán)
本節(jié)分別講述云控制器管理器為了完成自身工作而產(chǎn)生的對(duì)各類 API 對(duì)象的訪問(wèn)需求。
節(jié)點(diǎn)控制器
節(jié)點(diǎn)控制器只操作 Node 對(duì)象。它需要讀取和修改 Node 對(duì)象的完全訪問(wèn)權(quán)限。
?v1/Node?:
- Get
- List
- Create
- Update
- Patch
- Watch
- Delete
路由控制器
路由控制器會(huì)監(jiān)聽(tīng) Node 對(duì)象的創(chuàng)建事件,并據(jù)此配置路由設(shè)施。 它需要讀取 Node 對(duì)象的 Get 權(quán)限。
?v1/Node?:
- Get
服務(wù)控制器
服務(wù)控制器監(jiān)測(cè) Service 對(duì)象的 Create、Update 和 Delete 事件,并配置 對(duì)應(yīng)服務(wù)的 Endpoints 對(duì)象。 為了訪問(wèn) Service 對(duì)象,它需要 List、Watch 訪問(wèn)權(quán)限;為了更新 Service 對(duì)象 它需要 Patch 和 Update 訪問(wèn)權(quán)限。 為了能夠配置 Service 對(duì)應(yīng)的 Endpoints 資源,它需要 Create、List、Get、Watch 和 Update 等訪問(wèn)權(quán)限。
?v1/Service?:
- List
- Get
- Watch
- Patch
- Update
其他
云控制器管理器的實(shí)現(xiàn)中,其核心部分需要?jiǎng)?chuàng)建 Event 對(duì)象的訪問(wèn)權(quán)限以及 創(chuàng)建 ServiceAccount 資源以保證操作安全性的權(quán)限。
?v1/Event?:
- Create
- Patch
- Update
?v1/ServiceAccount?:
- Create
用于云控制器管理器 RBAC 的 ClusterRole 如下例所示:
apiVersion: rbac.authorization.K8S.io/v1
kind: ClusterRole
metadata:
name: cloud-controller-manager
rules:
- apiGroups:
- ""
resources:
- events
verbs:
- create
- patch
- update
- apiGroups:
- ""
resources:
- nodes
verbs:
- '*'
- apiGroups:
- ""
resources:
- nodes/status
verbs:
- patch
- apiGroups:
- ""
resources:
- services
verbs:
- list
- patch
- update
- watch
- apiGroups:
- ""
resources:
- serviceaccounts
verbs:
- create
- apiGroups:
- ""
resources:
- persistentvolumes
verbs:
- get
- list
- update
- watch
- apiGroups:
- ""
resources:
- endpoints
verbs:
- create
- get
- list
- watch
- update 文章名稱:創(chuàng)新互聯(lián)kubernetes教程:Kubernetes 云控制器管理器
地址分享:http://fisionsoft.com.cn/article/dpjcjgo.html


咨詢
建站咨詢
