Speedy:來自京東的Docker鏡像存儲系統
鏡像是Docker項 目最大的創新點之一,所有的Docker容器都源于鏡像。不可否認鏡像存儲是Docker工作流中的重要一環,Docker Registry是官方提供的開源項目用以保存鏡像,同時它也提供了后端存儲系統來解決鏡像的落地問題,比如Local Filesystem、S3、Swift。</span> Speedy 是由京東開源的一個分布式鏡像后端存儲系統,在架構設計上更好的解決了擴展性和可用性的問題。</span> Speedy架構如下圖:</span></span>
Speedy本身主要涉及模塊:
- Docker Registry Driver
- ChunkMaster
- ChunkServer
- ImageServer </ul>
Docker Registry Driver是一個遵照Docker Registry 1.0協議實現的驅動,完成Docker Registry與后端存儲系統的對接工作。ChunkServer與ChunkMaster組成了一個通用的對象存儲服務,ChunkMaster是中 心節點,緩存了所有ChunkServer的信息,ChunkServer本身是最終鏡像數據落地的存儲節點,多個ChunkServer會構成一個組, 擁有唯一的組ID,上傳這個組內的所有ChunkServer都成功才算成功,下載可以隨機選擇其中一個節點下 載。
ImageServer 本身是一個無狀態的Proxy服務,它相當于是后面通用對象存儲服務的一個接入層,Driver發起的鏡像上傳、下載操作會直接發給 ImageServer,ImageServer中緩存了ChunkMaster中的存儲節點信息,通過這些信息,ImageServer會進行 ChunkServer節點的選擇操作,找到一組合適的ChunkServer機器完成鏡像的上傳或下載操作。
https://github.com/jcloudpub/speedy 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!