綜評:5個方面看剛剛發布的Kubernetes 1.12

综评:5个方面看刚刚发布的Kubernetes 1.12

Kubernetes項目在過去幾年中發展迅速,並且作為容器編排和管理解決方案的領導者而備受尊重。有了這個地位,Kubernetes開發者有責任提供經過充分測試,易於維護,高性能和可擴展的API和工具。在即將到來的每個發佈週期中,大家都希望繼續看到社群聚焦於優先實現現有功能的成熟和穩定而不是新功能的交付。

    1 改善TLS

安全性是Kubernetes的基石。自Kubernetes 1.4以來,開發者一直在研究為集群運維者提供擁有對TLS管控能力的Kubernetes控制平面組件和kubelet。

在Kubernetes 1.12中,TLS bootstrapping在普遍可用性上大放異彩!此功能大大簡化了Kubernetes向集群添加和刪除節點的能力。

TLS bootstrapping只是故事的開始。集群運維者需負責確保他們管理的TLS保持更新,並且可以在安全事件面前輪換。考慮到這一點,開發人員開發了一種生成CSRs(Certificate Signing Requests)並將其提交給集群內CA(Certificate Authority)的機制。

    2 多租戶模式得到提高

多租戶是一種原則,即軟件可以允許以多個“租戶”的方式構建,同時保持某些方面的隔離。

通常,基礎設施運營商將通過配置隔離硬件和定義路由限制(路由表,VLAN,防火牆規則)來定義這些邊界。隨著物理,虛擬和容器化環境之間的界限不斷模糊,這一切需要進行調整。能夠在Kubernetes中使用多租戶模式意味著可以進一步利用容器編排器的規模經濟優勢,同時保證我們的租戶安全。

而此時面臨的一個問題是如何確定一個租戶的工作負載對整個集群中另一個租戶的工作負載的優先級。在此Kubernetes 1.12版本中,可以通過新的ResourceQuotaScopeSelector功能支持各種資源配額的優先級。這增強了Kubernetes1.11中提供的優先級分配功能。

在網絡安全方面,兩個NetworkPolicy組件已GA:egress和ipBlock。

Egress,顧名思義使管理員能夠定義網絡流量如何離開Pod以及網絡中可以傳輸流量的部分。ipBlock功能允許在NetworkPolicy定義中定義CIDR範圍。

    3 自動擴縮功能趨於成熟

HPA(Horizontal Pod Autoscaler)和VPA(Vertical Pod Autoscaler)類似於那些非容器化自動縮放原理,其中pod可以分別通過創建/刪除pod或擴展/收縮pod的資源請求來對負載的變化做出反應。這些功能有助於減少集群運維者配置額外計算節點以處理容量問題時的工作量。

對於Kubernetes 1.12,HPA改進了算法,以幫助確保容器數量更快地達到適當的大小。此外,新版HPA API(v2beta2)改進了對在更廣泛的情況下使用自定義指標的支持,以確定何時需要增加或減少pod count。

VPA是Kubernetes集群的可選插件組件,已向beta版發展,繼續保持現有生態系統組件的穩定性。

    4 CSI支持繼續進化

隨著越來越多的有狀態工作負載轉移到Kubernetes中,提供一個穩定的框架來向集群提供存儲變得非常重要。CSI(Container Storage Interface)就是這樣框架,並在幾個發佈週期中得到了持續的改進。

存儲呈現的一個關鍵特徵是考慮存儲相對於pod的位置。物理位置上遠離Kubernetes的存儲會引起延遲和可靠性問題。為了解決這個問題,CSI現在支持拓撲感知的概念,並且此功能在Kubernetes 1.12中轉為beta版。這意味著狀態工作負載現在可以概念性地瞭解存儲資源的存儲位置,無論是架構,數據中心還是可用區域。

    5 為kubectl構建可擴展框架

kubectl插件在此版本中作為alpha版引入。這個設計類似於git風格的插件。隨著運營者對kubectl的日常使用變得更加根深蒂固,適合常見用例的模式已得到開發,例如在特定命名空間中定位kubectl命令。

使用kubectl插件,開發人員可以在不融入核心kubectl代碼庫的情況下擴展到kubectl,以適應他們的管理方案。這將使團隊能夠以更一致的方式更快地開發和提供kubectl功能。


分享到:


相關文章: