Kubernetes 1.5:支撐生產環境工做負載

若是你一直等待在Kubernetes中嘗試運行某分佈式數據庫,或者在尋找能讓有狀態和無狀態應用的應用中斷SLO(服務等級指標)獲得保障的途徑,Kubernetes 1.5版本有你想要的解決方案。html

 

StatefulSet(有狀態集合)PodDisruptionBudget(Pod中斷預算)推動到beta版了。這些特性能簡化有狀態應用的部署和伸縮,並讓一些集羣操做,如不違背應用中斷SLO的節點降級成爲可能。

同時你會發現此次發佈中包含各類易用性方面的提高,首先你能感覺到的就是常常用到的kubectl命令行。對於那些感到要配置好一個多集羣聯合有諸多困難的用戶,如今有一個新的kubefed命令能幫到你。同時一個呼聲最高的用來配置跨多可用區的高可用Master配置腳本已經加入到了kube-up中。

對於那些對Kubernetes內核感興趣的用戶,1.5引入了容器運行時接口,簡稱CRI。它提供了一個內部的接口,將容器運行時從kubelet中抽象並分離出來。這種解耦運行時的設計,能讓用戶自由選擇最能知足自身需求的運行時。同時引入了容器化的節點一致性測試(node conformance test),能驗證節點的軟件是否知足加入Kubernetes集羣的最小化要求。前端

 

最新功能node

 

StatefulSet beta版(以前被叫作PetSet)能讓那些須要有一致性標識符或者持久化存儲的工做負載,能在Kubernetes上進行建立,伸縮,刪除或者修復。你可使用StatefulSet來簡化任何有狀態服務的部署,相關教程和示例能在代碼倉庫中找到。爲了保證一個標識符永遠不一樣一時間被兩個Pod使用,Kubernetes的節點控制器再也不強制刪除一個不響應節點上的Pod,相反的它會等待老的Pod以以下幾種方式掛掉:當kubelet報告並確認老的Pod已經生命結束而自動地掛掉;當集羣管理員刪除了該節點而自動地掛掉;或者當數據庫管理員經過強制刪除老的Pod並確承認以繼續操做。如今用戶若經過命令行試着強制刪除Pod會收到警告。對於那些要從PetSet遷移到StatefulSet的用戶,請遵循升級指南。

PodDisruptionBudget beta版是一個API對象,能指定一個Pod集合在任什麼時候候處於運行狀態的副本的最小數量或者最小百分比。有了PodDisruptionBudget,應用部署者能夠保證那些會主動移除Pod的集羣操做永遠不會同一時間放倒太多Pod,從而致使數據丟失,服務中斷或者沒法接受的服務降級等後果。在Kubernetes 1.5中,kubectl drain命令支持PodDisruptionBudget,能容許在維護型操做中節點以安全的方式進行削減。同時這個特性很快也會在節點升級和集羣自動伸縮器(在刪除節點的時候)中採用。這對於那些基於quorum的應用的來講很是有用,能確保運行的副本數目永遠不低於足以知足quorum的數目,或者對於一個WEB前端型應用,保證提供負載服務的副本數量永遠不低於一個百分比。

Kubefed alpha版是一個新的幫助管理聯合集羣的命令行工具,能輕易部署新的聯合控制面板,執行集羣聯合中的集羣添加和集羣刪除操做。集羣聯合中的另一個更新是,fedoration API新增了ConfigMap beta版、DaemonSet alpha版和deployments alpha版,能讓你經過一個端點跨集羣地對這些對象進行建立,更新和刪除操做。

高可用Master alpha版容許在GCE上使用kube-up/kube-down腳原本建立或者刪除有高可用(複製的)master的集羣。能容許配置跨可用區分佈式的高可用master,指定每一個可用區至少有一個etcd副本,指定每一個可用區至少有一個API服務器,以及配置選主式的組件如scheduler和controller-manager跨可用區分佈。

Windows Server容器 alpha版本提供了對Windows Server 2016節點和調度Windows Server Container的一些起始支持。

容器運行時接口(CRI) alpha版引入了v1版本的 CRI API,支持可插拔式的容器運行時;一個試驗性的docker-CRI集成已經作好了接受測試和反饋的準備。

節點一致性測試 beta版是一個容器化的測試框架,能爲節點提供了系統校驗和功能測試。該測試會驗證節點是否知足Kubernetes的最低要求;經過了測試的節點被認定有資格加入Kubernetes。節點一致性測試能夠在gcr.io/google_containers/node-test:0.2獲取到,方便用戶能夠驗證本身節點的設置。docker

 

獲取方式數據庫

 

Kubernetes 1.5能經過GitHub上下載或者經過get.k8s.io得到。要上手Kubernetes,能夠試試最新的互動式教程。安全

 

用戶採用服務器

 

從GA發佈以來已通過去一年半了,Kubernetes的用戶採納狀況持續超乎預期。在Kubernetes上運行生產環境工做負載的機構已經囊括了世界上最大的公司,年輕的創業公司,和介於二者以前的全部其餘公司。由於Kubernetes是開放的,並能在任何地方運行,咱們已經看到它被用在各類平臺上:Pokémon Go(Google Cloud),Ticketmaster(AWS),SAP(OpenStack),Box(實體機),以及對上面這些環境混合搭配的混雜環境。下面是一些精選的用戶示例:框架

 

  • Yahoo! JAPAN——構建了一個自動化的工具鏈,簡化了從代碼提交到部署流程,與此同時將OpenStack運行在Kubernetes上。分佈式

 

 

  • Walmart——將會使用Kubernetes和OneOps來管理它強大的配送中心,以幫組團隊提高交付速度,提高系統在線時長和優化資產利用率。工具

 

 

  • Monzo——是一家歐洲的創業公司,正致力構建一個移動爲先的銀行,正使用Kubernetes來支撐其可以應付極端的性能和一致性需求的核心業務平臺。

 

來源:http://www.youruncloud.com/docker/1_87.html

相關文章
相關標籤/搜索