首页
/
每日頭條
/
生活
/
k8s 上線時間
k8s 上線時間
更新时间:2025-12-08 09:58:17

鏡像倉庫保存了所有容器的啟動鏡像,當面對大規模容器集群(1000 節點)時,由于所有的鏡像都需要從鏡像倉庫下載,鏡像倉庫往往會成為性能的瓶頸,幾年前,在筆者之前的工作環境中曾經遇到一次生産環境擴容2000個副本的場景,結果用了2個多小時才完成,等到擴容完成,業務的高峰期已經過去了。

臨時的解決方案是通過部署多個鏡像倉庫,然後通過劃分區域,将一部分主機節點使用的鏡像源指定到特定的鏡像倉庫(修改域名解析),從而分攤流量,并将兩個鏡像倉庫做同步,保持兩個鏡像倉庫數據一緻。

k8s 上線時間(k8s朋友圈五Dragonfly)1

這種方案能夠很好解決中型的容器集群,但如果是大規模集群,就需要維護很多套鏡像倉庫。而且需要配置很多主機的域名解析,維護主機和域名解析的關系,很不靈活。多個鏡像倉庫之間還需要保持數據的一緻性,這些都需要花費很多的運維成本。那麼有沒有一種更加快速高效的鏡像分發技術呢?想必每個人都用過迅雷或者電驢之類的P2P下載技術,它的本質原理就是通過将每個下載節點也作為數據的服務節點,提供下載文件的能力,從而快速的分發文件,避免單點瓶頸。在這個技術背景下,開源社區有兩個相對成熟的項目,阿裡的Dragonfly(蜻蜓)以及Uber的Kraken(海怪)。

Dragonfly 是一款基于 P2P 的智能鏡像和文件分發工具。借助P2P分發技術提高文件傳輸的效率和速率,最大限度地利用網絡帶寬,尤其是在分發大量數據時,例如應用分發、緩存分發、日志分發和鏡像分發。

Dragonfly 是一種無侵入式的解決方案,并不需要修改Docker的源代碼。下圖展現了Dragonfly整個架構圖,在每個節點上面會啟動一個dfdaemon和dfget,dfdaemon是一個代理程序,它會截獲dockerd上傳或者下載鏡像的請求,dfget是一個下載客戶端工具,每個dfget啟動後首先通過“/peer/registry”接口将自己注冊到supernode。supernode超級節點以被動CDN的方式産生種子數據塊并調度數據塊分布。

k8s 上線時間(k8s朋友圈五Dragonfly)2

當dockerd拉取鏡像分層的時候,dfdaemon通過dfget請求supernode下載數據,supernode會從最終的鏡像倉庫拉取鏡像分割成多個數據塊。dfdaemon下載數據塊并對外共享數據塊,後續如果有其它節點也需要下載該鏡像,那麼會直接從之前的節點的節點下載,避免将所以請求都轉發到鏡像倉庫。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
自吸at的大衆中級車
自吸at的大衆中級車
77.38萬買台大衆很傻?其實體驗媲美卡宴,空氣懸架四輪轉向按銷量數據排名,大衆汽車可以稱之為中國市場上合資品牌最大赢家,上汽大衆和一汽大衆旗下爆款産品實在太多了。不過客觀來講大衆汽車隻能算是普通品牌,在高端領域就缺乏競争力,但這并不代表大...
2025-12-08
挑戰一周跑100公裡
挑戰一周跑100公裡
跑步的人,把跑半馬要自己跑完15公裡,跑全馬要自己跑完30公裡,當做一個科目來進行訓練。今年,雖然報了不少的全馬,上半年由于疫情,全都沒有跑成。下半年一來,網上也有不少的馬拉松報名,我也一氣報了不少,但由于疫情的影響,大都延期了。後面還有不...
2025-12-08
世界上最幸福的人是自己
世界上最幸福的人是自己
—回複『早安』,迎來一天好心情—◆◆◆生活裡,我們都有一個錯覺:幸福總是别人的,唯有煩惱屬于自己!于是,我們一天天感受着所謂的煩惱,一天天尋找着,其實就在身邊的幸福!曾經有這樣一項有趣的調查:世界上什麼人最幸福?在上萬個答案中,其中有四個令...
2025-12-08
從外觀就能看出它的不一般
從外觀就能看出它的不一般
科技發展的腳步從未停歇,對于2018年的科技數碼圈來說更是如此。7nm工藝、升降式結構、更快的閃充和屏下指紋解鎖……到了2019年,各大手機廠商之間的競争更是進入了白熱化。有一部分數碼發燒友熱愛換機,喜歡去追趕最新的機型;也有一部分小夥伴的...
2025-12-08
creo如何保存proe版本
creo如何保存proe版本
我們在裝配完一個組件之後,可能有些零件不符合要求,我們可以通過替換零件來處理。相比直接删除零件再添加的方法,替換的效率更高。下面簡單介紹幾種替換方法。第一種:替換為不相關的元件這種方法相當于将該零件删除,再重新裝配一個,因此效率很低!因為我...
2025-12-08
Copyright 2023-2025 - www.tftnews.com All Rights Reserved