Categories
程式開發

雲原生生態週報 Vol. 29:Kubernetes 擬支持 Cgroup v2


前言

《雲原生生態週報》由阿里雲容器平台聯合螞蟻金服共同發布,每週一期。眾多一線社區專家與您一起“跟踪動態,讀懂社區”,分享雲原生社區項目進展、活動發布、精選博客等信息。以下是第二十九期雲原生生態週報的內容。

業界要聞

KubeCon 2019 北美會議召開

業界最隆重的盛會 KubeCon+CloudNativeCon 今年在聖地亞哥舉辦,超過 12000 名參會者以及 100 多個雲原生供應商出席了這次大會。

上游重要進展

1.Kubernetes 擬加入對 Cgroup v2 的支持

Kubernetes 的 Kubelet 和 Scheduler 擬加入對 Cgroup v2 的支持。 Cgroup v2 的一個大的特性是可以用非 root 用戶操作做資源限制。該 KEP 的實現和下文的 《使用非 root 權限模式運行 Kubernetes 組件》KEP 息息相關。

2.使用非 root 權限模式運行 Kubernetes 組件

目前有眾多的廠商嘗試使用非 root 的模式去運行 kubelet 組件和 CRI/OCI/CNI,但是因為一些接口需要使用 root 的權限不能實現。此 KEP 著重去改善 kubelet、kube-proxy 對於這方面的限制,同時 CRI/OCI/CNI 也有相關的工作去推進可以使用非 root 模式運行。

3.提供 Immutable 模式的 ConfigMap/Secret(s)

建議使用 Immutable 的 ConfigMap/Secret 有兩個原因:

  • 一是Pod 使用ConfigMap/Secret 的模式一般是通過Volume Mounts 的方式,而Kubelet 會通過Watch/Poll 的方式去獲取ConfigMap/Secret 更新,同時同步更新到Pod 的掛載文件,這種Pod 能夠快速、無感地獲取到ConfigMap/Secret 更新。但這種更新是一把雙刃劍,一次錯誤的更新 ConfigMap/Secret 可能會導致 Pod 加載錯誤配置從而導致所有 Pod 異常。我們更推薦使用 Rolling Update 的方式,創建一個新的 ConfigMap/Secret 同時創建新的 Pod 去引用新的 ConfigMap/Secret。

  • 第二個是在大規模集群內,Kubelet 過多的 Watch/Poll 大量的 ConfigMap/Secret 會給 API Server 造成巨大的壓力(儘管我們在這個 PR 中為每個 Watch 請求降低了一個 Goruntine 的消耗)。而使用了 Immutable 的 ConfigMap/Secret,Kubelet 就不會為他們建立 Watch/Poll 請求。

開源項目推薦

1.cert-manager

使用 CRD 的模式在 Kubernetes 集群內管理證書的簽發和 CA Issuer。 cert-manager 的一個較大的優勢是支持 Kubernetes 集群內多 Issuer 的存在。

2.extended-daemonset

相比 Kubernetes 的 Daemonset,它提供了金絲雀發布以及更加豐富的升級策略。

3.watermarkpodautoscaler(WPA)

基於水位線算法的 Pod AutoScaler,相比 HPA,它提供更加豐富的算法、同時能控制 Scale 的速率和策略。

本週閱讀推薦

1.《混合雲關鍵技術能力和發展趨勢》

單一的公有云、私有云提供了很強的計算能力,計算所需要的數據則由邊緣雲蒐集並傳輸到公有云、私有云。將邊緣雲、公有云、私有云,無論是管理面還是數據層面打通,是未來混合雲發展的趨勢。

2.《K8s v1.17 新特性:拓撲感知服務路由》

拓撲感知服務路由可以實現 Service 就近轉發,減少網絡延時,進一步提升 K8s 的網絡性能,此特性將於 K8s v1.17 發布 Alpha,時間是 12 月上旬,讓我們一起期待吧!

3.《Debugging network stalls on Kubernetes》

Kubernetes 已經成為 Github 管理資源和應用的平台,而 Github 的 Kubernetes 隨著集群規模的增大,也遇到了頭疼的 Service 的網絡問題。該文 Github 為我們很好的提供了當集群內的 Service “網絡不可用”時,我們該如何調試和找到問題根源。

4.《4 個概念,1 個動作,讓應用管理變得更簡單》

隨著以 K8s 為主的雲原生基礎架構遍地生根,越來越多的團隊開始基於 K8s 搭建持續部署、自助式發布體驗的應用管理平台。然而,在 K8s 交付和管理應用方面,目前還缺乏一個統一的標準,這最終促使我們與微軟聯合推出了首個雲原生應用標准定義與架構模型 – OAM。本文作者將從基本概念以及各個模塊的封裝設計與用法等角度出發來詳細解讀 OAM。

5.《從微服務跨越到中台,架構領域年度盤點! 》

2019 年,整個 IT 領域發生了許多深刻而又復雜的變化,本文作者希望能夠根據本篇文章給讀者清晰地梳理出架構領域技術這一年的發展變化,回顧過去,繼續前行。

相關閱讀

雲原生生態週報 Vol. 28:Mirantis 收購 Docker 企業業務
雲原生生態週報 Vol. 27:Helm 3 發布
雲原生生態週報 Vol. 26:2019 年容器生態統計報告發布
雲原生生態週報 Vol. 25:Canonical 開源 MicroK8
雲原生生態週報 Vol. 24:Ubuntu 19.10 發布
雲原生生態週報 Vol. 23:全球首個開放應用模型 OAM 開源
雲原生生態週報 Vol. 22:Knative 暫時不會捐給任何基金會
雲原生生態週報 Vol. 21:Traefik 2.0 正式發布
雲原生生態週報 Vol. 20:Kubernetes v1.16 發布
雲原生生態週報 Vol. 19:Helm 推薦用戶轉向 V3
雲原生生態週報 Vol. 18:獨家解讀 etcd 3.4 新特性
雲原生生態週報 Vol. 17 :Helm 3 發布首個 beta 版本
雲原生生態週報 Vol. 16:CNCF 歸檔 rkt,容器運行時“上古”之戰老兵凋零
雲原生生態週報 Vol. 15:K8s 安全審計報告發布
雲原生生態週報 Vol. 14:K8s CVE 修復指南
雲原生生態週報 Vol. 13 | Forrester 發布企業級容器平台報告
雲原生生態週報 Vol. 12 |K8s 1.16 API 重大變更
雲原生生態週報 Vol. 11 | K8s 1.16 早知道
雲原生生態週報 Vol. 10 | 數據庫能否運行在 K8s 當中?
雲原生生態週報 Vol. 9 | K8s 1.15 後的性能提升
雲原生生態週報 Vol. 8 | Gartner 發布雲原生趨勢
雲原生生態週報 Vol. 7 | Docker 再爆 CVE
雲原生生態週報 Vol. 6 | KubeCon EU 亮點匯總
雲原生生態週報 Vol. 5 | etcd 性能知多少
雲原生生態週報 Vol.4 | Twitter 從 Mesos 全面轉向 Kubernetes
雲原生生態週報 Vol. 3 | Docker Hub 遭入侵,Java 8 開始提供良好的容器支持
雲原生生態週報 Vol. 2 | Godaddy 開源 KES、CNCF 提供免費云原生課程
雲原生生態週報 Vol. 1 | Google 發布 Cloud Run,開源項目 Kubecost 讓 K8s 花費一目了然

本文轉載自阿里巴巴雲原生微信公眾號(ID:Alicloudnative)。