華為雲技術分享 iSulad輕量化容器實踐解析

2022-07-04 11:00:18 字數 2010 閱讀 9146

容器應用在2023年迎來新的一輪浪潮,全球整體容器市場規模以高達30%的速度高歌猛進,大多數企業開始全面擁抱容器化,容器的規模、密度愈加擴大。

根據sysdig 2023年容器使用報告統計,在企業內部容器規模方面,9%的企業使用者容器規模已經達到5000以上;在容器密度方面,與2023年相比,每台主機中的容器密度提高了100%,從15個增加到了30個,其中最大節點密度已經達到250個。

上述兩個問題在大規模容器化應用的過程中不斷出現,並且隨著iot、邊緣計算產業的興起變得愈發緊迫:邊緣節點資源敏感,留給容器基礎設施的資源屈指可數,乙個更輕量、更快速的容器引擎呼之欲出。

接下來我們想分享一下應用過程中的一些嘗試:

首先考慮「能否對開源容器引擎軟體進行輕量化改造」,沿著這個思路,我們嘗試過對docker容器引擎進行了裁剪和精簡化,例如去除不需要的功能、元件結構優化等,甚至對golang本身編譯進行優化,但是效果不甚理想。因為我們的使用範圍並不只是伺服器等通用場景,我們的容器甚至會執行在端側的嵌入式裝置上,單單裁剪容器引擎其實也並不能完全滿足我們的要求。

另外,由於覆蓋雲、iot、邊緣計算等多個場景,我們的裁剪和輕量化並不能通用適配所有場景,因此需要維護多個容器引擎版本,這對我們的公升級和維護造成了不少麻煩。

這時候,乙個大膽的想法湧入了我們的腦海,是不是可以重新造個「輪子」!對於軟體工程師來說,沒有什麼是比重新造個「輪子」更棒了!

對, 那我們就重新造乙個「大一統」的容器引擎!

2023年,isula容器團隊開始了重新開發乙個容器引擎的計畫,並在2023年開始在華為內部分產品進行替代。

2023年,我們針對cri介面進行了一次大範圍的重構和補全,並最終決定將它與openeuler作業系統一併開源出來。

現在的isulad專案的目標是成為通用的端、邊、雲平台一體的容器引擎,可提供統一的架構設計來滿足雲、iot、邊緣計算等多個場景的應用。

最後,我們的小螞蟻isulad終於出生了!

看到這裡,同學們可能會有點疑惑,isulad到底是啥呢?

isula 在居住中南美洲亞馬遜叢林的巴西原住民眼裡,它是一種非常強大的螞蟻,學術上稱為「子彈蟻」,因為被它咬一口,猶如被子彈打到那般疼痛,它是世界上最強大的昆蟲之一。

isula為全量的容器軟體棧,包括引擎、網路、儲存、工具集與容器os;isulad 作為其中輕量化的容器引擎,可以為多種場景提供最靈活、最穩定、最安全的底層支撐,與子彈螞蟻"小個頭、大能量"的形象不謀而合。

isulad的特點:

)isulad採用c/c++語言實現,具備執行速度快、底噪低等特性,且lxc執行時優秀的併發設計也為isulad併發效能提供了基石;

)架構設計上,除了啟動容器部分需要通過fork/exec的方式,其他部分均使用呼叫函式庫的方式加快執行速度;通過將映象和rootfs部分獨立為服務,以及優化映象模組元資料的隔離性,實現了不同映象和rootfs之間的操作完全隔離。

isulad支援多種不同的容器形態,isulad內建支援系統容器、安全容器和普通容器以及輕量化容器支援。

經過上文的介紹,是不是想看看isulad的實際效果呢?

想要進一步了解isulad專案並參與isulad專案嗎?

歡迎來我們的社群玩兒哦~

openeuler開源社群:

isulad專案原始碼:

如何在騰訊雲輕量雲搭建mysql

2.作者本次演示使用的系統是windows server 2019,其他windows版本也可以,操作流程大同小異。2.把它解壓到乙個目錄。3.新增環境變數,在作業系統環境變數的path變數中新增剛才解壓mysql的目錄 c mysql bin 注意要填寫bin目錄 注 這一步是可選的,新增環境變數...

華為雲技術分享 雲小課 「VPC連線」知多少

摘要 華為雲提供了豐富的網路服務,可滿足多種網路互連場景。同region的兩個vpc怎麼連通?跨region的兩個vpc又怎麼連通?vpc內的ecs搭建了乙個應用,需要訪問internet,怎麼弄?某客戶的業務一部分在香港,一部分在大陸,怎麼經濟可靠的連線起來?某客戶既有本地的資料中心,又想把一部分...

華為雲技術分享 雲容器引擎 CCE許可權管理實踐

隨著容器化的快速發展,大資料原有的分布式任務排程模式,正在被基於kubernetes的技術架構所取代。cce雲容器引擎是華為雲推出的支援kubernetes社群原生應用和工具,應用級自動彈性伸縮,自動化搭建雲上容器平台。使用者通過雲容器引擎可以快速高效的將微服務部署在雲端。為方便管理員對cce資源的...