雲原生生態週報 Vol. 12 | K8s 1.16 API 重大變更
本文作者:源三、臨石、張磊、莫源
業界要聞
1. K8s 1.16 將廢棄一系列舊的 API 版本
影響面涉及 NetworkPolicy、PodSecurityPolicy、DaemonSet, Deployment, StatefulSet, ReplicaSet 和 Ingress。請各位 K8s 使用者和開發者關注,相關 API 都是進行了如下遷移:
- NetworkPolicy: 在 v1.16 中不再使用 extensions/v1beta1;
- 遷移到 networking.k8s.io/v1 API,自 v1.8 之後可用,存量資料可以通過新的API獲取和更新。
- PodSecurityPolicy:在 v1.16 不再使用 extensions/v1beta1;
- 遷移到 policy/v1beta1 API,自 v1.10 之後可用,存量資料可以通過新的 API 獲取和更新。
- Deamon Set、Deployment、StatefulSet 和 ReplicaSet:從 v1.16 開始將不再通過 extension/v1beta1、apps/v1beta1、或 apps/v1beta2 提供;
- 遷移到 apps/v1 API,自 v1.9 已經可用,存量資料可以通過新的 API 獲取和更新。
- Ingress:從 v1.18 開始不再通過 extensions/v1beta1 提供;
- 遷移到 networking.k8s.io/v1 API,存量資料可以通過新的 API 獲取和更新 詳細資訊:https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/
- 遷移到 networking.k8s.io/v1 API,存量資料可以通過新的 API 獲取和更新 詳細資訊:https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/
2. Prometheus 持續備受矚目,多家雲廠商推出託管或整合服務
作為 CNCF 下的另一個成功專案,Prometheus 已經被在微軟 Azure 上與 Azure Monitor 進行整合,現已進入預覽階段。 上個月,阿里雲推出了託管版的 Prometheus 監控產品,支援白屏化安裝 exporter,開箱即用的監控大盤,開源元件全相容,無需運維基礎能力免費使用。此外,阿里雲也推出了開源增強的 Prometheus 解決方案,在採集指標豐富度、採集指標準確性等方面做了增強,支援使用阿里雲 TSDB 時序資料庫做資料的持久化與高可用,可以簡單方便的通過 Helm Chart 進行一鍵安裝管理。
上游重要進展
Kubernetes 設計增強提議(KEP)
Knative 專案
- 計劃 8 月 6 日釋出 Serving 0.8,相關的 issue 主要是可用性和穩定性的改善;
- 增強直接從 source 消費 event 的易用性,確定了擴充套件 Knative CLI 的場景以及需要修改事件使用模型。
開源專案推薦
kopf
一個面向 Python 使用者的 Kubernetes Operator Framework。它提供了一組簡潔的原語,使得使用者可以用簡單的 Python 程式碼來快速實現一個 Operator,並且通過這些原語遮蔽掉 Operator 的技術細節,專注在 Operator 裡面的運維邏輯上。
本週閱讀推薦
《Best Practices: Benchmarking Service Mesh Performance》
文章介紹對 Service Mesh 效能(Istio)進行 Benchamark 的最佳實踐。
《451 Research 的 Cloud Price Index》
第三方機構推出商業調研報告,針對全球不同區域的公有云和私有云價格提供了其分析和洞察。
《Cloud-Native CI/CD with OpenShift Pipelines》
介紹了在 OpenShift 4.1 中釋出的 OpenShift Pipelines 開發者預覽版(developer preview),OpenShift Pipelines 這是 OpenShift 對 Tekton 專案的整合實踐。
《Avoid time-of-measurement bias with Prometheus》
我們目前有很多工具(例如 Prometheus)來監控我們一個 Server 的效能,但是很多情況下,一個 Server 的服務是由後面的很多 worker 以非同步的方式提供的。 在實踐中經常發生的情況是:儘管我們由各種各樣的 Metrics,但是我們還是不知道那些非同步提供服務的 worker 究竟在做什麼,而這經常導致我們(儘管手頭一堆工具)不能快速定位問題。這篇部落格通過一個經典案例描述了其中的痛點和實踐辦法,同時介紹了開源工具:https://github.com/lawrencejones/prometheus-c