3 種擴充套件 Kubernetes 能力的方式
Google 的工程總監 Chen Goldberg 在最近的奧斯汀 KubeCon 和 CloudNativeCon上說,Kubernetes 的擴充套件能力是它的秘密武器。
在建立幫助工程師提高工作效率的工具的競賽中,Goldberg 談到他曾經領導過一個開發這樣一個平臺的團隊。儘管平臺最初有用,但它無法擴充套件,並且修改也很困難。
幸運的是,Goldberg 說,Kubernetes 沒有這些問題。首先,Kubernetes 是一個自我修復系統,因為它使用的控制器實現了“協調環”。在協調環中,控制器觀察系統的當前狀態並將其與所需狀態進行比較。一旦它確定了這兩個狀態之間的差異,它就會努力實現所需的狀態。這使得 Kubernetes 非常適合動態環境。
3 種擴充套件 Kubernetes 的方式
Goldberg 然後解釋說,要建立控制器,你需要資源,也就是說,你需要擴充套件 Kubernetes。有三種方法可以做到這一點,從最靈活(但也更困難)到最簡單的依次是:使用 Kube 聚合器、使用 API 伺服器構建器或建立自定義資源定義(CRD)。
後者甚至可以使用極少的程式碼來擴充套件 Kubernetes 的功能。為了演示它是如何完成的,Goggle 軟體工程師 Anthony Yeh 上臺展示了為 Kubernetes 新增一個狀態集。 (狀態集物件用於管理有狀態應用,即需要儲存應用狀態的程式,跟蹤例如使用者身份及其個人設定。)使用 catset,在一個 100 行 JavaScript 的檔案中實現的 CRD,Yeh 展示瞭如何將狀態集新增到 Kubernetes 部署中。之前的擴充套件不是 CRD,需要 24 個檔案和 3000 多行程式碼。
為解決 CRD 可靠性問題,Goldberg 表示,Kubernetes 已經啟動了一項認證計劃,允許公司在 Kubernetes 社群註冊和認證其擴充套件。在一個月內,已有 30 多家公司報名參加該計劃。
Goldberg 繼續解釋 Kubernetes 的可擴充套件性如何成為今年 KubeCon 的熱門話題,以及 Google 和 IBM 如何構建一個使用 CRD 管理和保護微服務的平臺。或者一些開發人員如何將機器學習帶入 Kubernetes,另外展示開放服務代理以及在混合設定上的服務消費。
Goldberg 總結說,可擴充套件性是種增能。而且,Kubernetes 的可擴充套件性使其成為開發者的通用平臺,並且易於使用,這使得他們可以執行任何應用程式。
你可以在下面觀看整個影片:
via: https://www.linux.com/blog/event/kubecon/2018/2/3-ways-extend-power-kubernetes
作者:PAUL BROWN 譯者:geekpi 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出
相關文章
- 如何擴充套件Kubernetes API?套件API
- 容器化 RDS:藉助 CSI 擴充套件 Kubernetes 儲存能力套件
- spring bean 擴充套件方式SpringBean套件
- PHP FFI詳解 - 一種全新的PHP擴充套件方式PHP套件
- 使用aggregation API擴充套件你的kubernetes APIAPI套件
- kotlin 擴充套件(擴充套件函式和擴充套件屬性)Kotlin套件函式
- mysql資料庫應付大流量網站的的3種架構擴充套件方式介紹MySql資料庫網站架構套件
- 基於C++和Rust兩種方式擴充套件nodejs對比C++Rust套件NodeJS
- 解密JavaChassis3:易擴充套件的多種註冊中心支援解密JavaS3套件
- 用擴充套件的方式在 PHP 中使用 Kafka套件PHPKafka
- 用 TDD 的方式為 Laravel 開發擴充套件Laravel套件
- Kubernetes可擴充套件Admission進入Beta階段套件
- Kubernetes Extended Resource 擴充套件資源使用簡介套件
- 【Kotlin】擴充套件屬性、擴充套件函式Kotlin套件函式
- ?用Chrome擴充套件管理器, 管理你的擴充套件Chrome套件
- 聊聊 Spring 的 XML Schema 擴充套件機制的使用方式SpringXML套件
- 使用KEDA和Kafka在 Kubernetes 上自動擴充套件 - PiotrKafka套件
- 使用 Kubernetes 擴充套件專用遊戲伺服器套件遊戲伺服器
- PHP擴充套件開發就是一個自己的PHP擴充套件PHP套件
- 推薦3款超好用的Chrome擴充套件Chrome套件
- 擴充套件工具套件
- Sanic 擴充套件套件
- Mybatis擴充套件MyBatis套件
- SpringMVC 擴充套件SpringMVC套件
- ORACLE 擴充套件Oracle套件
- 正則的擴充套件套件
- SRAM的容量擴充套件套件
- 以對話的方式擴充套件架構的實踐 - Andrew套件架構
- Amazon Aurora 讀寫能力擴充套件之 ShardingSphere-JDBC 篇套件JDBC
- 使用Kotlin擴充套件函式擴充套件Spring Data案例Kotlin套件函式Spring
- JMeter 擴充套件開發:擴充套件 TCP 取樣器JMeter套件TCP
- 深度解讀 OpenYurt:從邊緣自治看 YurtHub 的擴充套件能力套件
- 如何選擇Kubernetes叢集最佳的自動擴充套件策略? - Daniele套件
- 在本地執行Kubernetes的3種主流方式
- vue3 setup語法糖 擴充套件Vue套件
- ASP.NET Core擴充套件庫之Http通用擴充套件ASP.NET套件HTTP
- Solon詳解(六)- Solon的校驗擴充套件框架使用與擴充套件套件框架
- [擴充套件推薦]Aliyun-oss-laravel —— Laravel最好的OSS Storage擴充套件套件Laravel