私有云和多云管理平臺 | Cloudpods v3.11.0 正式發布
v3.11 重點功能介紹
版本 3.11 自 2023 年 4 月開始開發,歷時大概 10 個月,共計 4000 多個PR。
1.開源之夏 2023
感謝開源之夏 2023 的四位同學為 Cloudpods v3.11 貢獻如下功能:
虛擬機緊急模式:允許將虛擬機引導進入一個臨時的內存 Linux 系統,在虛擬機內核文件損壞、rootfs 文件系統故障等情況下,用戶無法正常啟動虛擬機,則可以重啟虛擬機進入緊急模式,查看虛擬機的文件系統,定位問題,數據備份,并在可能的情況下對問題進行修復。 @IRONICBo
支持火山引擎:支持火山引擎的資源納管,同時企業版也支持管理和分析火山引擎的賬單。 @LyndonKong
支持部署 Ubuntu 22.04(已經 backport 合并到 3.10 并發布) @niconical
支持通過 QGA 更改 KVM 虛擬機網卡配置(已經 backport 合并到 3.10 并發布) @chentianxiang
2.主機改進
主機功能在 v3.11 做了較多改進,重點是兩個方向:一、私有云主機更充分地發揮硬件的性能;二、提升云主機易用性。
為了充分發揮硬件性能,Cloudpods 已經支持了不少特性,包括 PCI 設備透傳(包括網卡,GPU,NVME 等設備的透傳),網卡 SR-IOV 和 ovs offload,開啟宿主機內存大頁,綁定虛擬 CPU 核到物理核等,在 v3.11,Cloudpods 實現了期待已久的虛擬機 NUMA-aware 內存分配策略。開啟后,會盡量把一臺虛擬機的內存分配在同一個 NUMA 節點的內存空間內,虛擬機的 vCPU 也會盡量分配到同一個 NUMA 節點,由此避免出現跨 NUMA 分配虛擬機CPU和內存導致的性能下降問題。
另外一個重要特性是支持用 LVM 來管理共享塊存儲(SAN 存儲)。共享塊存儲使用LVM管理,虛擬機直接通過掛載從共享塊存儲分配的邏輯卷(LV),省去了用文件作為虛擬磁盤引入的文件系統開銷。Cloudpods 支持了 clvm 和 slvm 兩種共享 LVM 的管理方式。簡單地說,clvm 模式利用了集群模式的 clvm 服務來管理共享網絡存儲上的 LVM 卷,clvm 自動提供了 lvm 管理服務的分布式高可用。但缺點是 clvm 配置復雜。slvm 則不需要配置復雜的集群 clvm 服務,每個宿主機節點上只需要安裝單機的 lvm 服務,平臺選擇一個節點作為共享存儲的 lvm 配置節點,平臺在該節點分配 LV 之后會自動在需要掛載的節點刷新 lvm 的元數據,獲得分配的 LV。這種方式避免了部署分布式 clvm 的復雜性。但在配置節點不可用后,需要手動地切換配置節點。但這個問題可以在后期迭代中逐步解決。
除此之外,Cloudpods 也對 vGPU,包括 Nvidia 和 AMD 的虛擬化 vGPU 做了初步的支持。
在改進主機易用性方面做了如下的工作:1)支持了內置私有云 KVM 虛擬機的緊急模式,允許用戶通過一個臨時操作系統診斷修復無法啟動的虛擬機的問題。2)支持通過 WebRDP 協議登錄 Windows 虛擬機。使用 RDP 協議的好處是可以自動免密地登錄 Windows 虛擬機,并且支持剪貼板,易用性更好。3)全面支持 userdata,允許用戶在申請主機時設置主機初次啟動后的腳本,讓主機申請流程更方便。4)支持將納管的 Cloudpods 集群的 KVM 虛擬機遷移到內置私有云,用戶可以用這個功能整合多個 Cloudpods 私有云。
最后,主機網絡方面,IPv6 支持是 v3.11 引入的一個重要功能,支持 IPv6 地址管理和給主機分配 IPv6 的地址。
另外一個重要的網絡改進是 VMware 采用了新的二層網路模型,每個VMware的網絡端口組對應 Cloudpods 的一個二層網絡。這樣 VMware 用戶可以在平臺直觀地看到 VMware vCenter 端口組,更容易理解和配置對應二層網絡的IP子網。但 v3.11 之前版本就使用 VMware 的用戶會在升級為 3.11 之后會受到這個變更的影響。升級后,需要重新配置一下 VMware 的 IP子網,將 IP 子網的二層網絡變更到其 VMware 端口組對應的二層網絡。
3.多云迭代
多云功能在 v3.11 繼續迭代,除了云平臺增加了火山引擎,最重要的更新是重構了配置信息的管理模型。
我們曾經發明了一種多云場景的配置信息管理模型,采用一對多的映射關系,即平臺維護一份配置數據,該配置對應各個云平臺上的多個配置。最常見的是安全組配置。平臺會維護一份安全組配置,該安全組對應各個云平臺上各個賬號的各個區域的同配置的安全組。比如用戶定義一個允許訪問 TCP 22 端口的安全組,則該用戶在各個云平臺各個云賬號下各個區域內各個 VPC 下的允許訪問 TCP 22 的安全組都和這個安全組關聯,平臺通過安全組緩存的數據結構維護云上安全組和本地安全組的映射關系。設計之初,我們預期這種配置管理方式能夠提升使用多云配置的易用性,即用戶不用關心這個配置是否在云上維護,只需要選擇本地的安全組,平臺會自動地將本地安全組同步到云上,或在云上找到一個對應的安全組。但實際使用中,用戶對這種配置維護方式比較困惑,容易發生本地配置和云上配置不一致的情況,也多次發生安全組變更導致的用戶主機網絡故障。雖然之前版本做了諸多改進和限制,避免了一些問題,但整體效果不好。因此,從 v3.11 版本開始,我們放棄了這種一對多的配置維護模型,將配置信息維護全部改為一對一的映射模型。受到影響的配置信息包括:安全組,DNS 記錄,自動快照策略,負載均衡 SSL 證書,負載均衡訪問控制。
4.FinOps
2023 年是 FinOps 迅速發展的一年,Cloudpods 企業版的 FinOps 功能有了明顯的提升,主要集中在以下幾方面:
費用分配:v3.11 企業版在費用分配方面做了大量的工作,支持復雜的費用分配策略。包括按照云上項目或標簽將賬單費用分配到本地項目,將包年包月(包括 CPP )資源的費用分攤到周期內的月份,并且支持將共享的費用按照均攤或按比例分攤策略分攤到指定項目。
費用分析:v3.11 企業版費用分析能力更加強大,一方面是功能更強大,可以基于賬單標簽、項目標簽、資源標簽等多維度標簽對費用進行過濾,聚合并生成報表。另一方面是查詢性能更快,通過對存儲在 MySQL 內的配置數據和存儲在 ClickHouse 內的流水賬單數據的聯合查詢,使得查詢既快又準。
費用預測:基于多元線性回歸模型實現對項目+賬號+資源類型+計費方式等細粒度維度費用數據的預測,支持用戶輸入回歸模型參數對預測數據進行調整,支持對預測數據進行多維度分析查詢。
計費策略:支持費率集,可以給不同項目,域或者組織架構設置不同的費率,支持設置年、月、日、時、秒等計費時間粒度,支持一口價、按量計費和階梯計費等定價方式。
另外值得一提的是支持了容器的計費。平臺會自動采集配置的容器集群的pod的資源使用量,包括給 pod 分配的 CPU,內存和 PVC 空間配額,從而進行計費。
5.安裝部署
Cloudpods v3.11 適配了更多的操作系統,除了前序版本已支持的 CentOS 7,Debian 10, 11, Ubuntu 22.04,還適配了對應 CentOS 8 的一系列操作系統,包括:AnolisOS 8.8,OpenCloudOS 8.8,RokcyLinux 8.9,AlmaLinux 8.9 等。同時適配了 openEuler 22.03 LTS SP3 以應對國產化信創的場景。以上系統均可使用 ocboot 在線部署。
與此同時,針對商業版離線部署場景,隨著 CentOS 7 在 2024 年 6 月 EOL,v3.11 不再以 CentOS 7.9 為主要的離線部署操作系統,而是采用 openEuler 22.03 LTS SP3。
6.其他
從 v3.11 開始默認的監控存儲改為 VictoriaMetrics,進一步提高監控數據查詢速度。
v3.11 詳細更新內容
1.新功能
【主機】KVM 虛機 NUMA 內存分配
【主機】支持網絡配置管理 IPv6 地址,給主機分配 IPv6 地址
【主機】KVM 支持 vGPU(NVIDIA/AMD vGPU)
【主機】KVM 支持虛擬機緊急模式
【主機】支持集中式塊存儲(SAN)通過 CLVM/SLVM 分配磁盤
【主機】支持將納管的 Cloudpods 集群的 KVM 虛擬機遷移到本地私有云
【主機】支持網卡流量限制
【主機】支持通過 WebRDP 協議登錄 Windows 虛擬機
【多云】支持火山引擎的對接
【多云】對接 AWS 容器 EKS
【多云】支持阿里云的資源目錄,納管阿里云資源組下的多賬號
【認證】組織架構支持(企業版)
【費用】支持容器計費(企業版)
【費用】費率支持應用到不同項目/租戶,同時支持不同粒度設置(企業版)
【費用】支持費用分攤,將指定項目費用分攤/均攤給其他項目(企業版)
【費用】支持資源標簽列表,可通過該列表統一維護云上不支持標簽(或項目)或者漏打標簽信息(企業版)
【費用優化】支持異常消費功能,根據項目日消費或月累計消費設置閾值生成異常清單(企業版)
【系統】Web 控制臺支持日語
【系統】支持集成堡壘機,新建主機時自動添加 JumpServer 堡壘機(企業版)
【系統】支持購物車功能,可同時批量創建不同規格資源(企業版)
【部署】支持歐拉/SUSE 系統安裝部署
2.功能優化
【主機】支持 userdata,新建主機同時支持通過 userdata 指定初始化執行腳本
【主機】KVM 主機備份支持通過對象存儲存儲
【主機】VMware 采用新的二層網路模型,每個二層網絡對應一個網絡端口組
【主機】磁盤限速優化,支持對單個磁盤鏡像限速
【主機】密鑰支持共享
【多云】重構云上云下資源映射關系模型,將安全組,DNS 記錄,快照策略配置關系從多對一改為一對一
【多云】阿里云/華為/AWS 支持對象存儲設置跨域規則、策略
【認證】優化刪除用戶/項目流程,無需檢查關聯關系
【認證】優化消息訂閱發送,支持靜默期設置
【費用】支持設置賬單標簽映射到指定項目(企業版)
【費用】支持基于項目標簽進行費用分析,基于項目構建組織架構(企業版)
【費用】增加預測功能,支持錄入相關數據校準預測數據(企業版)
【費用】多維度分析支持保存為報告,可將高頻查詢條件保存為報告一鍵查看(企業版)
【費用】費用查詢性能優化,結合 MySQL 和 ClickHouse,實現查詢速度加速(企業版)
【系統】監控替換為 VictoriaMetrics
【系統】控制面板支持費用 KPI 的磁貼,如承諾費用占比、標簽覆蓋率等(企業版)
【系統】支持使用 ID/IP 搜索同時查詢多條數據
如何升級?
升級文檔
https://www.cloudpods.org/zh/docs/setup/upgrade/
問題反饋
https://github.com/yunionio/cloudpods/issues
以上是文章的主要內容,作為融合云/多云管理/私有云/FinOps 廠商,云聯壹云會持續關注這些領域的動態,分享相關的信息和技術,可以通過的官網(yunion.cn)或關注的公眾號(云聯壹云)來獲取最新的信息,感謝大家的時間。


