鏡像檔案系統 Mirror File System 多重伺服器檔案系統 Twin Peaks Software Inc.
多重伺服器檔案系統 傳統的檔案系統  –  EXT3/UFS  和   NFS 管理單一伺服器的儲存設備上的檔案 多重伺服器檔案系統 管理多個伺服器的儲存設備上的檔案
問題 單一資源是脆弱的 多重系統提供安全網 硬碟層   Disk level   => RAID 儲存層   Storage level => Storage Replication 網路層   TCP/IP level => SNDR 檔案系統層   File System level => CFS, MFS 系統層   System level => Clustering system 應用層   Application => Database
為什麼選擇   MFS? 比現有的科技擁有更多的優點
本機檔案系統 Local File System Data EXT3 Application 1 Application 2 Kernel Space User Space Disk Driver EXT3  管理本機伺服器儲存設備上的檔案
網路檔案系統 Network File System Application Application NFS (Client mount) Application Application Data  EXT3/UFS NFSD Client Server NFS  管理遠端伺服器儲存設備上的檔案
EXT3 | NFS rsync, tar NFS (Client mount) Application Application Data B EXT3/UFS NFSD EXT3/UFS Data B Client Server Application 應用程式只能用在一端 , 不能同時用在兩端
EXT3 + NFS  ?? 結合這兩種檔案系統 , 來管理本機與遠端的伺服器儲存設備上的檔案 --  在同一時間 --  即時的
MFS = EXT3 + NFS Application Application Data  EXT3/UFS Application Application Data  EXT3/UFS Passive MFS Server Active MFS Server MFS   NFS User Space Kernel Space
建構方法 MFS  是一個系統核心可加載模組  kernel loadable module -  加載在   EXT3/UFS  和   NFS   的上面 標準   VFS  介面 提供完全的通透性 - 對使用者和應用程式 -  對底層檔案系統  underlying file systems
檔案系統架構 SOLARIS Internal, Core Kernel Architecture, Jim Mauro. Richard McDougall, PRENTICE HALL Optical drive Network File System Operation calls File Operation System Calls Other System calls read  () write () open () close () mkdir () rmdir () link () ioctl () creat () lseek () mount () umount () Statfs() sync () Vnode interfaces VFS interfaces UFS (2) NFS (2) VxFS HSFS QFS UFS (1) NFS (1) PCFS PCFS Data  Data Data Data File System Operation calls
MFS  架構 File Operation System Calls File System Operation calls Other System calls read () write () open () close () mkdir () rmdir () link () ioctl () creat () lseek () mount () umount () Statfs() sync () Vnode interfaces VFS interfaces UFS (2) NFS (2) VxFS HSFS QFS UFS(1) NFS (1) PCFS PCFS Network Optical drive Data  Data Data Data MFS Vnode VFS interface
通透性 對使用者和應用程式的通透性 -  不用重新編譯或重新連結 對原來的檔案結構的通透性 -  同樣的存取路徑名稱 對底層檔案系統  ( underlying file systems )  的通透性 - UFS, NFS
掛載機制   Mount Mechanism 傳統的掛載機制 一個目錄 , 一個檔案系統 MFS   的掛載機制 一個目錄 ,兩個或多個檔案系統
掛載機制 #  mount –F mfs host:/ndir1/ndir2 /udir1/udir2 首先將  NFS  掛載到一個   UFS  目錄 然後將  MFS  掛載到   UFS  和   NFS   的上面 現有的   UFS  樹狀結構   /udir1/udir2  變成  MFS  的 一個 本機複本 新掛載的   host:/ndir1/ndir2  變成  MFS  的一個遠端複本 跟 NFS  一樣的掛載選項 , 除了沒有  ‘ -o hard’  選項
MFS mfsck  指令 # /usr/lib/fs/mfs/mfsck mfs_dir 在   MFS  掛載成功之後 , 本機複本的內容可能跟遠端複本不同   使用   mfsck  指令  (the MFS fsck)  同步兩者 這個   mfs_dir  可以是任何  MFS  掛載點下的任何目錄 同一時間可以執行多個   mfsck  指令
READ/WRITE Vnode Operation 所有   VFS/vnode  的動作會被  MFS  收聽到 READ  相關的動作 : read, getattr,….   等動作只需要到達本機複本   (UFS) WRITE 相關的動作 : write, setattr,…. 等動作會同時到達本機端  (UFS)   與遠端  (NFS)  複本  ( 利用執行緒 )
鏡像粒度   Mirroring   Granularity 目錄層  Directory Level 只需  m irror   任何一個  UFS   的目錄而不用  mirror  整個  UFS  檔案系統 目錄   A  鏡像到伺服器   A 目錄   B   鏡像到伺服器   B 區塊層更新  Block Level Update 只有變更過的區塊需要被  mirror
MFS msync  指令 # /usr/lib/fs/mfs/m sync  mfs _root_ dir msync  指令是一個  daemon , 負責斷線續傳 當一個寫入的動作失敗 , MFS   會 : ․ 紀錄這個寫入失敗的檔名 ․ 啟動一個  heartbeat  執行緒去驗證 遠端  MFS   伺服  器是否重新上線 一旦遠端  MFS  伺服器重新連線, msync  指令利用這個紀錄檔來同步這些遺缺的檔案到遠端的伺服器
Active/Active  架構 Server Server Application Application Data A UFS Application Application Data B UFS   Active MFS Server MFS   MFS   Active MFS Server NFS NFS
M FS Locking Mechanism   鎖定機制 MFS  使用   UFS, NFS   檔案紀錄鎖  ( file record lock ) A ctive   -  A ctive   架構需要  鎖定機制 Locking enables write-related vnode operations as atomic operations. 鎖定  是預設選項 鎖定   在   A ctive   -  P assive   架構中是不需要的
即時與排程 即時  Real-time --  即時的複製檔案文件 排程  Scheduled --  紀錄檔案路徑 , 偏移和大小   ( file path, offset and size ) --  僅複製檔案文件變更的部分
應用 線上檔案備份 伺服器檔案備份 , active    passive 伺服器 /NAS  叢集 , active     Active
MFS = NTFS + CIFS Application Application Data  NTFS Application Application Data  NTFS Remote Server Window Desktop/Laptop MFS   CIFS
線上檔案備份 即時或排程 MFS User Desktop/Laptop Folder ISP Server MFS Folder MFS Folder LAN or Wan
伺服器複製 Secondary Mirror File System Mirror File System App Primary Email Mirror File System Mirroring Path : /home   : /var/spool/mail Heartbeat
企業叢集 Mirror File System Mirror File System App App App App App Mirror File System Mirror File System Mirroring Path Central Mirror File  System App App
優勢 建構方法  -  建構在已有的   EXT3, NFS, NTFS, CIFS   的 基礎上   不需要複製索引資料  ( metadata ) -   不需要複製 Superblock, Cylinder group, file allocation map 每一個檔案的抄寫動作必須通過檔案系統的檢查 -  檔案 的一致性 , 完整性  Live file,  非原始數據   ( raw data )   複製 -  主要和備份的檔案複本都是立即可讀取的
優勢 互通性  --  兩個節點可以是不相同的系統 --   儲存設備可以是不相同的系統 較小的粒度  Small granularity --  目錄層 ,非整個檔案系統   一對多  或  多對一 複製
優勢 快速複製 --  在檔案系統層複製 即時故障切換 --  不需要做   fsck  和   mount  動作 地理上分散的叢集   --  兩個節點之間可以相隔千百哩 容易部署和管理 --  只有主機需要安裝   MFS
為什麼選擇   MFS  ? 更好的資料保護  更好的災難復原 更好的  RAS  ( Reliability, Availability, Serviceability  穩定性、可靠性和適用性 ) 更好的彈性 更好的效能 更好的資源利用
Q & A Application Application Data A Application Application Data B MFS   MFS

鏡像檔案系統 Mirror File System : MFS

  • 1.
    鏡像檔案系統 Mirror FileSystem 多重伺服器檔案系統 Twin Peaks Software Inc.
  • 2.
    多重伺服器檔案系統 傳統的檔案系統 – EXT3/UFS 和 NFS 管理單一伺服器的儲存設備上的檔案 多重伺服器檔案系統 管理多個伺服器的儲存設備上的檔案
  • 3.
    問題 單一資源是脆弱的 多重系統提供安全網硬碟層 Disk level => RAID 儲存層 Storage level => Storage Replication 網路層 TCP/IP level => SNDR 檔案系統層 File System level => CFS, MFS 系統層 System level => Clustering system 應用層 Application => Database
  • 4.
    為什麼選擇 MFS? 比現有的科技擁有更多的優點
  • 5.
    本機檔案系統 Local FileSystem Data EXT3 Application 1 Application 2 Kernel Space User Space Disk Driver EXT3 管理本機伺服器儲存設備上的檔案
  • 6.
    網路檔案系統 Network FileSystem Application Application NFS (Client mount) Application Application Data EXT3/UFS NFSD Client Server NFS 管理遠端伺服器儲存設備上的檔案
  • 7.
    EXT3 | NFSrsync, tar NFS (Client mount) Application Application Data B EXT3/UFS NFSD EXT3/UFS Data B Client Server Application 應用程式只能用在一端 , 不能同時用在兩端
  • 8.
    EXT3 + NFS ?? 結合這兩種檔案系統 , 來管理本機與遠端的伺服器儲存設備上的檔案 -- 在同一時間 -- 即時的
  • 9.
    MFS = EXT3+ NFS Application Application Data EXT3/UFS Application Application Data EXT3/UFS Passive MFS Server Active MFS Server MFS NFS User Space Kernel Space
  • 10.
    建構方法 MFS 是一個系統核心可加載模組 kernel loadable module - 加載在 EXT3/UFS 和 NFS 的上面 標準 VFS 介面 提供完全的通透性 - 對使用者和應用程式 - 對底層檔案系統 underlying file systems
  • 11.
    檔案系統架構 SOLARIS Internal,Core Kernel Architecture, Jim Mauro. Richard McDougall, PRENTICE HALL Optical drive Network File System Operation calls File Operation System Calls Other System calls read () write () open () close () mkdir () rmdir () link () ioctl () creat () lseek () mount () umount () Statfs() sync () Vnode interfaces VFS interfaces UFS (2) NFS (2) VxFS HSFS QFS UFS (1) NFS (1) PCFS PCFS Data Data Data Data File System Operation calls
  • 12.
    MFS 架構File Operation System Calls File System Operation calls Other System calls read () write () open () close () mkdir () rmdir () link () ioctl () creat () lseek () mount () umount () Statfs() sync () Vnode interfaces VFS interfaces UFS (2) NFS (2) VxFS HSFS QFS UFS(1) NFS (1) PCFS PCFS Network Optical drive Data Data Data Data MFS Vnode VFS interface
  • 13.
    通透性 對使用者和應用程式的通透性 - 不用重新編譯或重新連結 對原來的檔案結構的通透性 - 同樣的存取路徑名稱 對底層檔案系統 ( underlying file systems ) 的通透性 - UFS, NFS
  • 14.
    掛載機制 Mount Mechanism 傳統的掛載機制 一個目錄 , 一個檔案系統 MFS 的掛載機制 一個目錄 ,兩個或多個檔案系統
  • 15.
    掛載機制 # mount –F mfs host:/ndir1/ndir2 /udir1/udir2 首先將 NFS 掛載到一個 UFS 目錄 然後將 MFS 掛載到 UFS 和 NFS 的上面 現有的 UFS 樹狀結構 /udir1/udir2 變成 MFS 的 一個 本機複本 新掛載的 host:/ndir1/ndir2 變成 MFS 的一個遠端複本 跟 NFS 一樣的掛載選項 , 除了沒有 ‘ -o hard’ 選項
  • 16.
    MFS mfsck 指令 # /usr/lib/fs/mfs/mfsck mfs_dir 在 MFS 掛載成功之後 , 本機複本的內容可能跟遠端複本不同 使用 mfsck 指令 (the MFS fsck) 同步兩者 這個 mfs_dir 可以是任何 MFS 掛載點下的任何目錄 同一時間可以執行多個 mfsck 指令
  • 17.
    READ/WRITE Vnode Operation所有 VFS/vnode 的動作會被 MFS 收聽到 READ 相關的動作 : read, getattr,…. 等動作只需要到達本機複本 (UFS) WRITE 相關的動作 : write, setattr,…. 等動作會同時到達本機端 (UFS) 與遠端 (NFS) 複本 ( 利用執行緒 )
  • 18.
    鏡像粒度 Mirroring Granularity 目錄層 Directory Level 只需 m irror 任何一個 UFS 的目錄而不用 mirror 整個 UFS 檔案系統 目錄 A 鏡像到伺服器 A 目錄 B 鏡像到伺服器 B 區塊層更新 Block Level Update 只有變更過的區塊需要被 mirror
  • 19.
    MFS msync 指令 # /usr/lib/fs/mfs/m sync mfs _root_ dir msync 指令是一個 daemon , 負責斷線續傳 當一個寫入的動作失敗 , MFS 會 : ․ 紀錄這個寫入失敗的檔名 ․ 啟動一個 heartbeat 執行緒去驗證 遠端 MFS 伺服 器是否重新上線 一旦遠端 MFS 伺服器重新連線, msync 指令利用這個紀錄檔來同步這些遺缺的檔案到遠端的伺服器
  • 20.
    Active/Active 架構Server Server Application Application Data A UFS Application Application Data B UFS Active MFS Server MFS MFS Active MFS Server NFS NFS
  • 21.
    M FS LockingMechanism 鎖定機制 MFS 使用 UFS, NFS 檔案紀錄鎖 ( file record lock ) A ctive - A ctive 架構需要 鎖定機制 Locking enables write-related vnode operations as atomic operations. 鎖定 是預設選項 鎖定 在 A ctive - P assive 架構中是不需要的
  • 22.
    即時與排程 即時 Real-time -- 即時的複製檔案文件 排程 Scheduled -- 紀錄檔案路徑 , 偏移和大小 ( file path, offset and size ) -- 僅複製檔案文件變更的部分
  • 23.
    應用 線上檔案備份 伺服器檔案備份, active  passive 伺服器 /NAS 叢集 , active  Active
  • 24.
    MFS = NTFS+ CIFS Application Application Data NTFS Application Application Data NTFS Remote Server Window Desktop/Laptop MFS CIFS
  • 25.
    線上檔案備份 即時或排程 MFSUser Desktop/Laptop Folder ISP Server MFS Folder MFS Folder LAN or Wan
  • 26.
    伺服器複製 Secondary MirrorFile System Mirror File System App Primary Email Mirror File System Mirroring Path : /home : /var/spool/mail Heartbeat
  • 27.
    企業叢集 Mirror FileSystem Mirror File System App App App App App Mirror File System Mirror File System Mirroring Path Central Mirror File System App App
  • 28.
    優勢 建構方法 - 建構在已有的 EXT3, NFS, NTFS, CIFS 的 基礎上 不需要複製索引資料 ( metadata ) - 不需要複製 Superblock, Cylinder group, file allocation map 每一個檔案的抄寫動作必須通過檔案系統的檢查 - 檔案 的一致性 , 完整性 Live file, 非原始數據 ( raw data ) 複製 - 主要和備份的檔案複本都是立即可讀取的
  • 29.
    優勢 互通性 -- 兩個節點可以是不相同的系統 -- 儲存設備可以是不相同的系統 較小的粒度 Small granularity -- 目錄層 ,非整個檔案系統 一對多 或 多對一 複製
  • 30.
    優勢 快速複製 -- 在檔案系統層複製 即時故障切換 -- 不需要做 fsck 和 mount 動作 地理上分散的叢集 -- 兩個節點之間可以相隔千百哩 容易部署和管理 -- 只有主機需要安裝 MFS
  • 31.
    為什麼選擇 MFS ? 更好的資料保護 更好的災難復原 更好的 RAS ( Reliability, Availability, Serviceability 穩定性、可靠性和適用性 ) 更好的彈性 更好的效能 更好的資源利用
  • 32.
    Q & AApplication Application Data A Application Application Data B MFS MFS

Editor's Notes

  • #18 In your opening, establish the relevancy of the topic to the audience. Give a brief preview of the presentation and establish value for the listeners. Take into account your audience’s interest and expertise in the topic when choosing your vocabulary, examples, and illustrations. Focus on the importance of the topic to your audience, and you will have more attentive listeners.