2022/6/9~2022/6/17 精選容器新聞

本期重點:自動擴充調度的K8s叢集,如何事前估算成本是一大挑戰,不少公雲都推出了自家的成本估算工具,但如何跨這些業者、自家私雲都能有一套統一的成本估算標準是維運團隊常見的難題。最近引起高度關注的新開源專案OpenCost,就是要建立一套通用K8s成本計算標準。另外,Intel旗下自駕車系統公司Mobileye揭露了如何部署超大規模EKS叢集的經驗,單一叢集可以達到3,200個節點,超過10萬個vCPU的超大規模。值得注意的是,Linux創辦人最近預告,Rust語言明年將整合到Linux核心,這也意味將成為Linux的重要開發語言之一

#成本管理、#K8s叢集管理
AWS和GCP兩大公雲加入,OpenCost專案要建立估算K8s叢集成本的通用標準

K8s成本管理公司Kubecost最近捐給CNCF一項開源專案OpenCost,可以視覺化的方式,列出Kubernetes叢集的資源分配和所花費的成本。成本計算是管理K8s叢集的難題之一,因為高度自動化擴充能力,一開始都是從一個小型K8s叢集,但隨著時間,會動態依據用量,自動增加或減少叢集的節點數,因此,很難準確估算單一個K8s叢集的費用。OpenCost提供了視覺化的圖表,來呈現K8s叢集費用的歷史變化。多家業者也參與了這項專案,來協助K8s叢集成本的估算,包括了AWS、Google、Adobe、SUSE、D2iQ、Armory、Mindcurv和New Relic等。他們試圖透過這個專案,來建立一個標準的K8s成本監控機制,可以用來追蹤各種環境配置下的成本。OpenCost目前可以即時提供K8s服務的成本估算和各類資源分配,也能整合AWS、Azure或GCP帳單API來取得動態的公雲費用,甚至支援本地部署的K8s叢集客製化價格清單,來能將價格資料輸出到Prometheus方便進一步利用。

#FinOps、#雲端成本控管
K8s叢集要花多少錢?最新FinOps調查出爐

CNCF和推廣雲端成本管理的FinOps基金會最近公布了一份K8s成本調查報告,去年中調查了195家中大型企業使用K8s的費用情況,半數企業規模超過500人,3成是5千人以上的大型企業。超過6成企業的K8s費用過去一年是正成長,甚至有3成的K8s費用更是增加了2成以上。不過,2成企業沒有辦法監控K8s成本,而44%的企業只能用推估,只有1成多的企業可以準確估算成本,另有一成企業建立了費用回溯機制。但是超過4成企業都認為,能夠每個月更精準地事先估算K8s叢集的帳單是一件重要的事。

根據這份調查,目前企業K8s叢集的主要成本,8成來自運算,1成是記憶體的費用,再其次才是儲存空間的成本。目前常見用來追蹤K8s成本的工具,除了三大公雲提供的費用計算工具,如AWS支出探索工具、GCP支出工具和Azure成本管理工具之外,還有KubeCost成本估算工具和Apptio公司的Cloudability較多企業採用。

 

#GitOps、#DevOps
如何用GitOps打造全自動CI/CD流程,Weaveworks推薦靠這3類工具

提出GitOps新CI/CD典範的Weaveworks公司,最近整理了一個用GitOps思維,來設計全自動化CI/CD流程的最佳實務做法,包括了四個重要的自動化關鍵,其中,善用K8s自動化機制是第一步。

Weaveworks指出,GitOps是配置檔管理的最新進化的形式,以Git作為程式原始碼的唯一來源,這是將雲端原生應用持續部署,建立標準化作業的關鍵原則。

在CI/CD流程中有四個核心階段,原始碼、部建(Build)、測試和部署,每一個階段都可以善用工具軟體來自動化。在原始碼階段,不只是開發者提交的異動要觸發通知,透過webhook機制來通知後續的CI/CD工具,還要留意得包括來自其他流程,或是自動化排程產生的異動都要納入觸發事件。第二個階段的部建自動化,則要用來控制不同釋出版本的變動。測試階段的自動化,則注重正確性和生產力,原則是要「快速部建、快速測試、快速失敗」,盡快找出有問題的地方,盡快通知開發者。最後一項部署階段,只要使用K8s,就可以有自動化CI/CD工具例如Helm charts來協助自動化。

K8s叢集自動化是雲端原生工具自動化的第一線,要讓K8s叢集管理能到結合CI/CD流程,例如用k8s Operators來協助重複任務的自動化,也能用於各種部署需求,如擴充,備份和模擬節點失效情況。HPA則可用於控制部署後的Pod節點數量擴充或縮減,Cluster Autoscaler則能用CPU利用率,來擴充一個叢集中的節點數量。其次,從Git拉出程式碼到完成部署的自動化工具,則推薦Flux。這是Weaveworks捐給CNCF的孵化開源專案,能持續比對儲存庫環境的狀態和基礎架構部署環境的狀態,來進行從原始碼到部署的自動化,還可搭配Git版控進行政策遵循。最後一個推薦的GitOps工具是Flagger,這是可以用於主動派送工具,也是Weaveworks開源釋出的專案,可以用於進行藍綠部署、金絲雀發布。不過,Weaveworks沒有推薦測試自動化工具,而是建議得善用宣告式配置檔,就能降低部建與測試間的重工。

#函數即服務、#無伺服器框架
無伺服器框架OpenFunction正式成為CNCF沙箱專案

來自KubeSphere社群開源的一項無伺服器框架OpenFunction,最近通過CNCF技術監督委員會的投票,正式成為旗下沙箱專案之一,也代表了CNCF正式接管了這個專案的捐贈。OpenFunction是一個用來打造Function即服務的無伺服器框架,整合了Knative、Tekton、Shipwright、Dapr和KEDA等開源專案,來提供從函數觸發、函數建置到函數服務發布等功能,可以快速建立一個無伺服器平臺服務。目前OpenFunction是0.6.0版。

#Rust語言、#作業系統
Linux創辦人預告:Rust語言明年將整合到Linux核心

最近Linux創辦人Linus Torvalds在Linux基金會開源大會上透露,熱門的Rust語言將在明年整合到Linux核心,甚至,最快「下一版Linux核心版本發布時就會併入。」也就是最快可在Linux 5.20版就納入。Linus在2年前一次專訪中就透露出採用Rust語言的意圖,當時他提到,雖然Linux核心主要是用C語言開發而成,C語言也是當前的十大熱門程式語言之一,但是,他認為,C語言有一種逐漸變成COBOL語言的風險,越來越難找得到擅長C語言的Linux核心維護者。因此,2年前他就開始考慮,在Linux核心專案開發中採用如Go或Rust等熱門的新興開發語言。他也曾透露過採用Rust的原因,有多項比C語言更進階的功能,例如記憶體安全機制的設計,在安全模式下不會出現沒有定義的行為,另外對於安全和非安全模式有更清楚的定義和區分等。Rust語言是由Mozilla在2009年開始贊助的一項通用程式語言,強調安全、平行運作和記憶體組態管理,主要用於大型網路系統的用戶端和伺服器端任務,於2010年首度公開,2015年釋出第一個1.0穩定版本,目前是1.61版。

#分散式資料庫、#NoSQL
NoSQL資料庫Cassandra即將在7月釋出4.1版,最大特色將增加外掛擴充能力

去年7月才釋出十年大改版的NoSQL資料庫Cassandra,今年7月又將推出4.1新版,預計會增加一項重要的新功能外掛擴充機制,可以透過外掛方式來擴充Cassandra資料庫的功能,這也讓Cassandra變成了一個資料庫生態圈,來整合第三方供應商的服務。目前隨著4.1版的發布,也提供了多項新的外掛機制,包括了可提供快速記憶體儲存能力的儲存外掛,可用外部金鑰來進行機密管理的網路加密外掛、授權外掛機制、叢集Schema外掛。另外在4.1版還會新增一個配置管理框架,可用來支援Cassandra叢集規模化後的不同部署設定。而4.1版之後,也將進入下一個大版本5.0,預計未來要支援完整的ACID交易能力,這是目前正在討論中的重大功能。

#超大規模K8s叢集、#自駕車系統
單一EKS叢集如何部署10萬個vCPU,自駕車系統公司Mobileye靠6大秘訣

開發自駕車系統需要大量仰賴AI運算,來訓練自駕系統在不同模擬環境下的各種反應和操作。最近Intel旗下自駕車系統公司Mobileye的AI工程團隊,揭露了如何運用EKS,來支援超過250項工作流程的經驗。他們使用了4萬EKS的Pod叢集,單一叢集的規模最大甚至達到3,200個節點,超過10萬個vCPU的超大規模。

Mobileye揭露了他們可以建立超大規模EKS運算叢集的經驗,第一是要針對工程團隊來進行平臺抽象化,避免工程團隊要處理瑣碎的基礎架構部署工作,其次是要建立一個統一配置平臺,可以支援不同團隊同時所用的各種不同類型工作負載的配置和管理需求。第三是要建置一個自動擴充平臺,Mobileye每小時經常要執行數十項資料處理作業,每個作業可能需要數百到數千個Pod節點來運算,因此需要有一個自動化擴充管理平臺才能勝任這麼龐大的擴充調度和部署需求。

第四項則是成本控管需要有一套成本管理平臺,尤其Mobileye的EKS叢集節點高達95%都是用了競標式的Spot執行個體,來降低雲端運算的費用,要能記錄和管理這些價格變動的執行個體的費用,需要靠系統才能管理和精簡成本。

另外在網路架構的管理上,也需要有一套解決方案,Mobileye都是在無法對外連網的私有VPC中執行所有運算來符合法遵要求,但需要有一套自己的網路架構管理系統,最後一項是要有能力支援不同運算類型的執行實例的擴充能力,例如他們的自動擴充機制也能夠調度GPU、Habana Gaudi加速器等特殊運算需求的節點。

#可觀測性、#思科
思科推出可觀測性平臺服務,能監控AWS的K8s環境,未來會支援其他兩大公雲

思科在2022年度大會上發表了新的可觀測性平臺AppDynamics Cloud,來監控K8s上的雲端原生應用的運作狀態,包括Log紀錄,監測矩陣、事件紀錄、追蹤紀錄等,可以支援主流的可觀測性標準OpenTelemetry。這套可觀測平臺可以用來監控跨不同基礎架構、微服務、容器或API之間的互動。AppDynamics原本像是一套應用程式效能管理平臺,現在進一步變成了雲端原生應用可觀測性的管理平臺,不只是應用系統效能,還擴大到各種執行環境的觀測和管理。思考這套新的可觀測性平臺目前只能支援AWS公雲上的K8s環境監控,不過,思科預告,未來一定會支援其他兩朵公雲包括微軟Azure和GCP,甚至也計畫支援更多公雲服務。

更多新聞

CNCF推出雲端原生安全控制項型錄,盤點出194項主流資安規範的雲端生資安要求

@資料來源:iThome整理,2022年6月

責任編輯:王宏仁

圖片來源:思科、Mobileye

熱門新聞

Advertisement