您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關Kubernetes 1.21有什么功能的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
近日,Kubernetes 1.21正式發布,這也是2021年的第一個版本。此版本包含51項增強功能:13項增強功能已逐步升級為穩定版,16項增強功能已轉換為Beta版,20項增強功能已進入Alpha版,2項功能已棄用。新版本更新圍繞以下主題:
CronJobs畢業到穩定
自Kubernetes 1.8起,CronJobs一直是一個測試版本功能,在1.21中,這個被廣泛使用的API逐漸穩定下來。CronJobs 用于執行定期的計劃操作,如備份、報告生成等。每個任務都應該被配置為無限期重復出現,你可以在該間隔時間內定義作業應該啟動的時間點。
ImmutableSecrets和ConfigMap
Immutable Secrets和ConfigMap為資源類型添加一個新字段,如果設置了該字段,資源類型將拒絕對這些對象的更改。默認情況下,Secrets和ConfigMap是可變的,這對于能夠使用更改的Pod是有益的。如果將錯誤的配置推送給使用它們的pod,可變的 Secrets 和 ConfigMaps 也會導致問題。
通過將Secrets和ConfigMaps標記為不可變,可以確保您的應用程序配置不會改變。如需更改,則要創建一個新的、唯一命名的Secret或ConfigMap,并部署一個新的pod來使用該資源。不可變的資源還具有擴展優勢,因為控制器不需要輪詢API服務器來觀察改變。
IPv4/IPv6 雙棧支持
IP地址是消耗性資源,集群操作人員和管理員需要確保其不會耗盡。特別是,公共IPv4地址現在很稀缺,具有雙棧支持,可以將原生IPv6路由到Pod和服務,同時仍允許您的群集在需要的地方使用IPv4。雙棧集群網絡還改善了工作負載的可能伸縮限制。
Kubernetes中的雙棧支持意味著Pod、服務和節點可以獲取IPv4地址和IPv6地址。在Kubernetes1.21中,雙棧網絡已從alpha升級到beta,并且默認啟用,從而可以同時分配IPv4和IPv6地址。
IPv4 / IPv6雙棧提供以下功能
雙棧Pod網絡(每個Pod分配一個IPv4和IPv6地址)
支持IPv4和IPv6的服務
同時通過IPv4和IPv6接口進行集群外出口路由(例如Internet)
Graceful Node Shutdown
Kubernetes1.21中,GracefulNode Shutdown已經升級到Beta版,它允許 kubelet 知道節點關閉,并優雅地終止調度到該節點的 pod。
目前,當節點關閉時,pod還不能遵循預期終止生命周期,也不會正常關閉,這可能會在許多不同的工作負載下帶來問題。以后,kubelet將能夠通過systemd檢測到即將發生的系統關閉,然后通知正在運行的Pod,以便它們可以盡可能正常地終止。
PersistentVolume健康監測器
PersistentVolume通常用于應用程序中獲取本地的、基于文件的存儲。它們可以以多種不同的方式使用,并可以幫助用戶遷移應用程序而無需重新編寫存儲后端。
Kubernetes 1.21具有一項新的alpha功能,該功能可以監視PV的運行狀況,并在卷變得不健康時進行相應標記。工作負載將能夠對運行狀況做出反應,以保護數據不被從不健康的卷上寫入或讀取。
棄用 PodSecurityPolicy
PodSecurityPolicy 作為 Kubernetes 目前常用的安全策略管理和授權機制,在一些限制存儲和網絡特權使用的場景中,提供了諸多便利。但因版本不兼容等問題,PodSecurityPolicy在 Kubernetes 1.21 中被棄用。與 Kubernetes 所有已棄用的特性一樣,PodSecurityPolicy將在其他多個版本中繼續可用并提供完整的功能。之前處于測試階段的 PodSecurityPolicy 計劃在 Kubernetes 1.25 中刪除。
棄用 TopologyKeys
在 Kubernetes 1.21 中,服務字段 topologyKeys 被棄用;使用此字段的所有組件功能以前都是alpha,現在也已棄用。我們用一種實現感知拓撲路由的方法替換了 topologyKeys,這種支持拓撲的提示是 Kubernetes 1.21 中的一個 alpha 特性。
減少Kubernetes的構建維護
之前,Kubernetes維護了多個構建系統,這通常是造成新貢獻者和現有貢獻者之間摩擦以及復雜性的根源。在上一個發布周期中,為了簡化構建過程和標準化原生的 Golang 構建工具,我們投入了大量的精力。
在此次發布周期中,圍繞發布流程的所有權也產生重大轉變:從定期向社區請求輸入的同步通信模式,轉變為社區選擇模式——發布中加入特性或博客。這使社區協作和團隊合作得到進一步增強。
引入暫停作業特性
Job(作業)是 Kubernetes API 的重要組成部分。雖然其他類型的工作負載(例如Deployments,ReplicaSets,StatefulSets和DaemonSets)解決了需要 Pod 永遠運行的用例,但 Job 在 Pod 需要運行到完成時非常有用。Job 通常用于并行批處理,可以用于各種應用程序,如視頻渲染、數據庫維護、科學計算等。
雖然并行度和 Job 完成的條件是可配置的,但 Kubernetes API 缺乏暫停和恢復Job 的能力。當集群資源有限,需要在另一個 Job 的位置上執行一個更高優先級的 Job 時,通常需要刪除較低優先級的 Job ,這是一個糟糕的解決方案,因為 Pod 完成歷史和其他與 Job 相關的指標將會丟失。
在Kubernetes 1.21 版本中,你可以通過更新其規范來暫停 Job。該特性目前處于 alpha 階段,需要你在 API 服務器和控制器管理器上啟用 suspend Job 特性門才能使用它。
感謝各位的閱讀!關于“Kubernetes 1.21有什么功能”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。