【轉】向分佈式存儲系統的遷移 - 使用 ZFS/Gluster

 

原文: http://www.taodudu.cc/news/show-4208262.html?action=onClick

https://my.oschina.net/u/2306127/blog/2865263

------------------------------------------

 

我這用的 Ubuntu 18.04 系統(已經內置支持 ZFS 和 Gluster 文件系統了),原來磁盤存儲使用的 Ext4 格式和 LVM,現在需要遷移到 ZFS/Gluster 支持的分佈式軟件定義存儲(SDS)和容器存儲體系(CSI),以充分利用分佈式架構的存儲虛擬化、多機容錯、水平擴容、網絡訪問的集羣環境下應用的需要。

方案:

  • 集羣節點既能提供存儲服務,也能執行高通量、非密集型計算任務。
  • 集羣存儲主機至少有兩個節點。
  • 每節點四核 CPU,16G 內存,512G 高速 SSD。
  • 每節點 PCIE 至少雙槽,一塊雙口萬兆網卡,一塊 SATA 擴展卡或 SAS 陣列卡。
  • 每節點至少 4 塊磁盤(達到 400MB/s 以上,磁盤越多越快;8 塊盤可達到 800MB/s 左右)。
  • 節點的磁盤使用 ZFS 條帶卷以獲得最大磁盤 IO 速度,將 SSD 設爲緩存和 log 卷執行加速。
  • 多個節點存儲通過 Gluster 做網絡鏡像存儲,可以靈活地按照鏡像(可靠性高)或者條帶(容量大、性能高)來組織存儲方案。節點越多,可靠性、性能越好。

步驟:

中間需要有多個步驟,記錄如下:

  1. 先把新的存儲系統準備好。
    • 安裝 ZFS,sudo apt install zfsutils-linux 。
    • 安裝 Gluster,sudo apt install glusterfs-server 。
    • 在所有節點上,創建 ZFS 存儲池和文件系統。
    • 在所有節點上,互相添加爲 gluster peer。
    • 在任一節點上,創建 gluster volume 存儲卷,可選鏡像或條帶模式。
    • 在需要訪問的工作節點掛載 gluster 存儲卷,映射爲本地卷,然後就可以直接訪問了。
      • 在 Kubernetes 上,每一個 Node 都需要能訪問網絡存儲卷,或者掛載爲本地卷、通過 hostpah 來使用。
  2. 把 Ext4 和原來磁盤陣列的數據複製到新的存儲系統。
    • 確認數據已經全部複製。
  3. 把原來的存儲系統重新格式化爲 ZFS/Gluster。
    • 再次確認數據已經全部複製。
  4. 把原始數據複製回原來的存儲系統。
  5. 建立軟連接,連接到原來的捲到新的存儲系統主目錄。
    • ln -s 新的目錄 原來目錄的鏈接名
      • 如:ln -s /zpool/data/home/supermap/data
    • 恢復原來的服務。

注意:

  • ⚠️不要出錯,否則把原始數據搞丟了,就麻煩大了
  • 建議使用萬兆(10Gbps)網絡(存儲節點使用萬兆網卡,全萬兆交換機連接)。
    • 網絡存儲傳輸帶寬,理論上:
      • 百兆連接 9MB/s。
      • 千兆連接 90MB/s。
      • 萬兆連接 900MB/s。
      • 雙萬兆連接 1600MB/s 以上。
    • 推薦:雙萬兆端口網卡,雙路互備、鏈路聚合。
  • 需要至少雙倍於現有數據的存儲空間。
    • 新的分佈式存儲啓用鏡像和副本,需要 “數據容量 X 副本數量” 的物理磁盤容量。

參考:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章