跳至內容
主選單
主選單
移至側邊欄
隱藏
導覽
首頁
近期變更
隨機頁面
MediaWiki說明
Taiwan Tongues 台語維基
搜尋
搜尋
外觀
建立帳號
登入
個人工具
建立帳號
登入
檢視 Kubernetes 的原始碼
頁面
討論
臺灣正體
閱讀
檢視原始碼
檢視歷史
工具
工具
移至側邊欄
隱藏
操作
閱讀
檢視原始碼
檢視歷史
一般
連結至此的頁面
相關變更
特殊頁面
頁面資訊
外觀
移至側邊欄
隱藏
←
Kubernetes
由於以下原因,您無權編輯此頁面:
您請求的操作只有這些群組的使用者能使用:
使用者
、taigi-reviewer、apibot
您可以檢視並複製此頁面的原始碼。
'''Kubernetes'''(定簡稱做'''K 八 s''')是用著自動部署、擴充佮管理「容器化(containerized)應用程式」的開源系統。該系統由 Google 設計並捐贈予 Cloud Native Computing Foundation(今屬 Linux 基金會)來使用。 伊旨咧提供「跨主機密集的自動部署、擴充猶閣有執行應用程式容器的平台」。 伊支援一系列容器工具,包括講 Docker 等。 ==歷史== Kubernetes(咧希臘語意為「舵手」抑是「駕駛員」)由 Joe Beda、Brendan Burns 和 Craig McLuckie 創立,並且由其他 Google 工程師,包括講 Brian Grant 和 Tim Hockin 等進行加盟創作,並由 Google 佇咧二空一四年頭一改對外宣布。該系統的開發佮設計攏誠深 Google 的 Borg 系統的影響,其實真濟頂司貢獻者進前嘛是 Borg 系統的開發者。佇咧 Google 內部,Kubernetes 的原始代號曾經是 Seven,即星際迷航中的 Borg(博格人)。 Kubernetes 標識中舵輪有七个輪輻就是對這个專案代號的致意。 Kubernetes v 一鋪排佇二空一五年七月二一釋出。隨著 v 一孵空版本釋出,Google 佮 Linux 基金會合作組建了 Cloud Native Computing Foundation(CNCF)並將 Kubernetes 做種子技術來提供。 Rancher Labs 佇咧其 Rancher 容器管理平台中包含著 Kubernetes 的釋出版。Kubernetes 嘛佇足濟其他公司的產品內底用,比如講 Red Hat 的 OpenShift,CoreOS 的 Tectonic,IBM 的 IBM 私有雲產品,, 精靈雲的 EcOS,KubeSphere,以及 VMware 的 PKS 等咧。 啊若到這馬資訊界定定看著的縮寫手法「K 八 s」著是將「ubernete」八字母縮寫為「八」來來。 ==設計的== Kubernetes 佇設計結構頂定義一系列的構建模組,其目的是欲為著提供一个會當共同提供部署、維護佮擴充應用程式的機制。組成 Kubernetes 的組件設計概念是鬆幫贊佮會當延伸的,按呢會使得滿足濟種無仝的工課負載。會當延伸性佇足大的程度通上由 Kubernetes API 提供,此 API 主要予人成做擴充的內部組件佮 Kubernetes 上執行的容器來使用。 ===Pod=== Kubernetes 的基本排程單元稱做「pod」。 通過這種抽象類別會使共更進階別的抽象內容增加到容器化組件。一个 pod 一般包含一个抑是多个容器,按呢會當保證𪜶一直位佇主機頂,並且會當共享資源。Kubernetes 中的每一个 pod 攏予人分配一个唯一的(佇樹仔內底的)IP 位址按呢就會當允准應用程式使用仝一埠頭,避免發生衝突的問題。Pod 會當定義一个卷,比如講本地磁碟 kha-tá-lok-guh 抑是網路磁碟,閣將其暴露佇咧 pod 中間的一个容器內底。。 pod 會當通過 Kubernetes API 手動管理,嘛會當委託予控制台來實現自動管理。 ===標籤佮選擇器=== Kubernetes 使客戶捀(使用者是內部組件)共這號做「標籤」的鍵值對附加去系統內底的任何 API 東西,如 pod 佮節點。相應的喔,「 標籤選擇器」是針對匹配物件的標籤的查詢方法。 標籤佮選擇器是 Kubernetes 中的主要分組機制,確定操作適用的組件。 比如講,若應用程式的 Pods 有系統的標籤 ` tier ` ( 比如講 " ` front-end ` "、" ` back-end ` " ) 佮一个 ` release _ track ` ( 比如講 " ` canary ` "、" ` production ` " ),遐爾對所有 " ` back-end ` " 和 " ` canary ` " 儉點仔操作會使使用如下所示的標籤選擇器: > ` tier=back-end AND release _ track=canary ` > > ===控制器=== 控制器是通過管理一組 pod 來實現來共實際密集態轉移到所需要密集態的對數迴圈機制。一種控制器指出來是一組具有仝款特徵的「複製控制器」,控制器通過佇樹集中執行指定數量的 pod 副本來處理複製佮縮放。佇基礎節點出現故障的情形下,伊閣會當用佇處理建立替換 pod。其他控制器嘛是核心 Kubernetes 系統的一部份,包括講「DaemonSet 控制器」為每台機器(抑是機器的一寡子集)上執行的單個 pod,佮用佇執行 pod 的「作業控制器」。 控制器管理的 pod 組由作為控制器定義的部分的標籤選擇器來確定。 ===服務=== Kubernetes 服務本質是一組協同工作的 pod,類似幾若層架構應用的一層。構成服務的 pod 組通過標籤選擇器來定義。Kubernetes 通過予服務分配靜態 IP 位址佮域名來提供服務發現機制,而且用輪循排程的方式共流量負載均衡到能佮選擇器匹配的 pod 的 IP 位址的網路連接著(就算是故障致使著 pod 對一台機器徙振動到另外一台機器)。 預設的情況下,服務任務會暴露佇樹集中(比如講,多個後端 pod 可能去予人分組一个服務,前端 pod 的請求佇𪜶之間負載平衡); 除了這以外,服務任務嘛會當暴露佇樹集外部(比如講,對客戶捀的頭前捀 pod)。 ==建構== Kubernetes 遵照主對式架構設計。Kubernetes 的組件會當分做管理單的 node 組件佮控制平面的部份的組件。 Kubernetes Master 是誠密集的主要控制單元,其用佇咧管理其工課負載閣指導規个系統的通批。Kubernetes 控制平面由各自的行程群組成,逐个組件攏會使佇單個主節點頂懸執行,嘛會當佇支援懸可用性誠濟主節點上執行。是 Kubernetes 控制平面的各種組件如下: ===etcd=== '''etcd'''是由 CoreOS 開發,用佇會當靠地儲存密集的組態資料的一種永續性,輕量型的,散式的鍵-值資料儲存組件。這个組件會當表示佇任何常時間點處的密集的整體狀態。其他組件佇咧注意著儲存的變化了後,會變成相應的狀態。 ===API 侍服器=== API 侍服器是一个關鍵組件並使用 Kubernetes API 和 JSON over HTTP 來提供矣 Kubernetes 內部佮外部介面。API 侍服器處理佮驗證 REST 請求並更新 API 物件的狀態 etcd,從來允准客戶捀佇咧 Worker 節點之間組態工課負載和容器。 ===排程器=== T 排程式是會當插拔式組件,其實對資源可用性來選擇未排程的 pod(由排程式管理的基本實體)應該執行佗一个節點。排程式佮每一个節點上的資源利用率,確保工課負載袂超過可用資源。為此,排程式就愛知影資源需求,資源通用性佮各種其他使用者提供的約束和策略指令,譬如講服務品質,親和力 / 反關聯性要求,資料位置遮。實質上,排程式的作用是將資源「供應」佮工課負載「需求」相匹配以維持系統的穩定佮可靠。 ===控制器管理=== 控制器管理器是核心 Kubernetes 控制器,其包括 DaemonSet 控制器佮複製控制器等等。這控制台灣就是 API 侍服器進行通信以佇需要的時陣建立,更新佮刪除𪜶管理的資源(pod,侍服器捀點等) ===Kubernetes 節點=== Node 嘛叫做 Worker 抑是 Minion,是部署容器(工課負載)的單機器(抑是虛擬機器)。 密集中的逐个點間攏著愛有備容器的執行環境(runtime)——比如講 Docker,以及下跤講著的其他組件,通便佮遮的容器的網路組態進行通信。 ====Kubelet==== Kubelet 負責逐个節點的執行狀態(即確保節點上的所有容器攏正常執行)。 伊按控制面枋的指示來處理啟動,停止佮維護應用程式容器(揤組織到 pod 中)。 Kubelet 會監視 pod 的狀態,若無所在需要狀態,著 pod 將被重新部署到仝一个節點。節點狀態便隔幾秒就會傳遞訊息到中繼主機。主控器檢測著儉點故障了後,複製控制器會觀察這个狀態更改,並佇其他的健康節點內底啟動 pod。 ====容器==== 容器對屬於 pod。咧執行應用、庫佮其他的微服務當中,容器是上低層級的。通過結一个外部 IP,容器會使予外網的存取去。 ====Kube 代理==== Kube 代理是網路代理佮負載均衡的實現,支援服務抽象佮其他網路操作。根據傳入請求的 IP 佮埠頭,該組件會將流量轉發到指定的合適的容器內底。 ====cAdvisor==== cAdvisor 是監視佮收集譬如講每一个節點上的容器的 CPU,記持體,檔案佮網路使用情況遮的資源使用情況佮效能指標的代理組件。 ==參見== * Kubectl ==參考文獻== ==外部連結== * 官方網站 * GitHub 上的 kubernetes 頁面 * Kubernetes(K 八 s)是啥物?基礎介紹 + 三大優點解析 [[分類: 待校正]]
返回到「
Kubernetes
」。