如果你正在生產(chǎn)中使用容器的話,你就會知道你需要一個DevOps工具來管理這些容器。對于很多企業(yè)來說,Kubernetes就是這個工具。這個快速發(fā)展的、開源的、容器編排的工具包剛剛升級到了Kubernetes 1.7版本,而這距離開發(fā)者們發(fā)布Kubernetes 1.6版本僅有3個多月的時間。
你還沒有聽說過Kubernetes?馬上你就會知道了。Linux基金會高級PR經(jīng)理Natasha Woods問:“Wink、Ancestry.com、Box、Buffer、GolfNow以及Ticketmaster之間的共同點是什么?是其運行基礎設施的方式。就像是巨頭Google一樣,這些企業(yè)正在采用容器編排技術Kubernetes。”
除了這些企業(yè)之外,Red Hat、Oracle、IBM和微軟等等,都投資了Kubernetes。在所有這些重要的云廠商之中,只有AWS還在觀望。這并不意外。除了技術優(yōu)勢之外,這些廠商還在利用Kubernetes來嘗試打破AWS在云領域的統(tǒng)治地位。
這次升級的新版本增加了安全性、存儲和擴展功能,讓這個DevOps程序更加適合于企業(yè)級客戶。CoreOS的Kubernetes開發(fā)技術負責人Luis Pabón在博客中寫道,這次推出的新版本不止是增加了機箱新功能,而是“持續(xù)構(gòu)建新的接口,讓Kubernetes更加擴展,有更可靠的核心……最終,它的目標是讓開發(fā)者可以基于一個穩(wěn)定的、功能完善的、核心Kubernetes系統(tǒng)上開發(fā)新的功能,可以按需地添加新功能。”
為了改善Kubernetes擴展性,Kubernetes 1.7版本增加了兩個新功能:首先是運行時的API聚合,這使得高級用戶能夠向他們的集群中增加Kubernetes類型的預構(gòu)建、第三方或者用戶創(chuàng)建的API。
另外一個是Container Runtime Interface(CRI),這通過新的遠程過程調(diào)用(RPC)調(diào)用已經(jīng)得到了增強。CRI Validation測試已經(jīng)發(fā)布,支持基本的生命周期和圖像管理功能的Alpha容器集成現(xiàn)在也已經(jīng)提供。
其他方面的改進還包括:
安全性:
- Network Policy API改進到比較穩(wěn)定。通過一個網(wǎng)絡插件實施網(wǎng)絡策略,這讓用戶可以設置和強制執(zhí)行規(guī)則,管理哪些Pod可以彼此之間進行通信
- 新增了節(jié)點授權工具和管理控制插件,限制Kubelet對隱私、Pod和其他對象的訪問
- Encryption for Secrets,以及其他在etcd中的資源,現(xiàn)在也已經(jīng)在測試中
- Kubelet TLS引導現(xiàn)在支持客戶端和服務器認證輪換
- 審核API服務器保存的日志,現(xiàn)在這一功能更加定制化,可以擴展支持事件過濾和Webhooks,這些都為系統(tǒng)審核提供了更加豐富的數(shù)據(jù)。
狀態(tài)工作負載:
- StatefulSet Updates現(xiàn)在是1.7版本中的一個新測試功能,可以實現(xiàn)對狀態(tài)應用(例如Kafka、Zookeeper以及etcd)的自動更新,使用一系列更新策略,包括滾動更新
- StatefulSets現(xiàn)在支持通過Pod Management Policy更快速的伸縮和啟動,針對那些不要求訂購的應用,這可以大大提升性能
- Local Storage (alpha)是狀態(tài)應用經(jīng)常請求的功能。現(xiàn)在用戶可以通過標準PVC/PV接口,以及通過StatefulSets中的StorageClasses訪問本地存儲卷
- DaemonSets可以為每個節(jié)點創(chuàng)建一個以及有更新功能的Pod,在1.7版本中增加了智能回滾和歷史記錄功能。
- 新的StorageOS Volume插件提供了高可用性、集群范圍的永久卷,來自本地或者附加節(jié)點存儲。
最后有兩個Alpha版本功能
- 外部準入控制器,提供了可以把定制業(yè)務邏輯添加到API服務器,在對象創(chuàng)建和驗證策略的時候改變對象
- 基于策略的Federated Resource Placement,為聯(lián)合資源提供了安置策略,基于定制要求例如監(jiān)管、定價或者性能。
基于所有這些功能,對于那些已經(jīng)承諾使用容器的企業(yè)來說,他們有更加充分的理由去管理他們的現(xiàn)代化云應用。