XenServerとZFSストレージでサーバ仮想化
           ~ZFS&COMSTARで作るIP-SAN~

          OSC 2011 Tokyo/Spring 自宅SAN友の会


                 徳山 文晟 / Tokuyama Fumiaki
                           Twitter:@tokuhy
                                  2011/03/05
アジェンダ
   自己紹介
   XenServerとZFSなわけ
   ZFSでストレージサーバ
    
        ZFSいろいろ
   COMSTAR
   OS紹介
   XenServerとZFSストレージの活用事例


                              2
自己紹介

         徳山 文晟 / Tokuyama Fumiaki
 氏名
 氏名
         Twitter:@tokuhy

         Webサイト/サービス開発会社のインフラ部員
 お仕事
 お仕事
         サーバの保守運用/社内ネットワーク保守運用
                        グループ社内のなんでも屋的に色々広く浅く・・・

         ➢Japan OpenSolaris Users Group
コミュニティ
コミュニティ   ➢自宅SAN友の会




         自作PC関連とか
 興味
 興味
         おうちのストレージも自作
                                              3
XenServerとZFSストレージでサーバ仮想化


          社内の仮想化環境

ハイパーバイザ:XenServer
共有ストレージ:ZFS & iSCSIストレージ(OpenSolaris)




                                        4
XenServerとZFSストレージでサーバ仮想化




   なんでXenServer?


                            5
XenServer
   サーバ仮想化にXenServerを使用
    
        KVMはまだ実績と情報が少なかった(と思う)
       無償で使える
        ●   とりあえず無償で実際に試してみたかった
       管理ツールがある(XenCenter)
       無償でライブマイグレーションができる




                                  6
XenServerとZFSストレージでサーバ仮想化




  なんでZFS & iSCSI?


                            7
ZFS&iSCSI(COMSTAR)で作るIP-SAN


 SANベースのスナップショットによるバックアップ
     でもエンタープライズのストレージは
       (お試しで使ってみるには)高い




    なければ作れば作ればいいじゃない
          ( ̄ー ̄)
                              8
ZFS&iSCSI(COMSTAR)で作るIP-SAN

  iSCSIなら既存のネットワークの延長で簡単に作れる


         バックアップどうする?


 ZFSってやつのスナップショット機能がすごいらしい


   しかもファイルシステムでiSCSIの機能がある!
       (※当時のZFSの話。今はない。)

                               9
ZFS&iSCSI(COMSTAR)で作るIP-SAN
ZFSを仮想化共有ストレージとして使う場合・・・
   VMイメージまるごとバックアップ
   複数世代スナップショットで増分バックアップ(後述)
   別サーバへ増分転送(後述)




           簡単&らくちん\(^o^)/

                     動機はこんな感じです。スイマセン・・・
                     言う程簡単じゃなかったです・・・

                                           10
ZFSでストレージサーバ




        ZFS概要


                11
ZFSでストレージサーバ
   ストレージサーバとして必要な機能が豊富

                     拡張性
                             機能
          堅牢性


                性能         管理性



単体ノードで考える場合のファイルシステムとしては最強レベル
    (エンタープライズレベルでの動作実績的な意味で)
  Sun Storage 7000シリーズもZFS(OpenSolarisベース)


                                         12
ZFSでストレージサーバ




        1.拡張性


                13
ZFSでストレージサーバ vol.1 / 拡張性
   ストレージプール
       ディスクを束ねてプールを作成
        ●   ディスクサイズがいくらでも関係なく一瞬で作成可能
       プールから必要サイズのボリューム/ファイルシステム
        の切り出し
       あとからディスクの追加による拡張可
        ●   ただし制限あり
   128ビットファイルシステム
       ZFSの「Z」はZetta-bytes(10 億TB) のZの意味も
       実際はもっといける(1000兆Zetta-bytes)
                                             14
ZFSでストレージサーバ




        2.堅牢性


                15
ZFSでストレージサーバ vol.2 / 堅牢性
   ファイルシステムでRAID機能を提供
       ストライプ(RAID0)、ミラー(RAID1)
       RAID-Z(シングルパリティ→機能拡張されたRAID5)
       RAID-Z2(ダブルパリティ→機能拡張されたRAID6)
       RAID-Z3(トリプルパリティ)
        ●   write-holeの排除
       RAIDの組み合わせももちろん可能
        ●   RAID10、RAID-Z+RAID0(≒RAID50)、RAID-Z2+RAID0(≒RAID60)
   ディスク障害時のRAID再構築
       使用中の部分のみの同期
        ●   ハードウェアRAIDに比べ縮退状態の時間短縮
                ファイルシステムにRAID機能があるので使用されている部分が把握されている

                                                                  16
ZFSでストレージサーバ vol.2 / 堅牢性
   トランザクションベースの書き込み時コピー
       Copy-On-Write
       古いデータか新しいデータのどちらかが保証される
   エンド・ツー・エンドのツリー構造のチェックサム
       データのエラーを自己修復
       全データに対して任意のタイミングでエラーチェッ
        クをかけることが可能(scrub)
        ●
            I/Oが発生しているときは優先度が下げられて実行される



                                      17
ZFSでストレージサーバ




        3.管理性


                18
ZFSでストレージサーバ vol.3 / 管理性
   管理コマンドは2個だけ!
    
        zpoolコマンド、zfsコマンド
        1. zpoolコマンドでディスクを束ねてプール構築
        2. zfsコマンドでプールからファイルシステムの切り出し
        3.必要があればプロパティの設定(zfs set)
       容量の設定や制限(quota)もプロパティ値で
       作成されたプールを別マシンへそのまま移動可
        
            export、import




                                        19
ZFSでストレージサーバ




         4.機能


                20
ZFSでストレージサーバ vol.4 / 機能
   NASとしての機能
       ファイルシステムレベルで実装
       NFS/CIFS
   データ保全としての機能
       複数世代のスナップショット
        ●   リモートへの増分転送
       クローン
   容量節約の機能
       疎ボリューム
       圧縮
       重複排除(dedup)

                          21
ZFSでストレージサーバ




         5.性能


                22
ZFSでストレージサーバ vol.5 / 性能
   ハイブリッドストレージ
    
        DRAM、SSDなどIOPSに優れたデバイスを利用可能
        ●   ログデバイス(ZIL)
        ●   キャシュデバイス(ARC&L2ARC)
       同数のディスク構成なら15k rpmのSASのディスク並
        べるより、5400rpmのSATAディスクとSSDの組み合
        わせの方がIOPS、容量、TBコスト全てで上回る




                                      23
ZFSでストレージサーバ vol.6 / ハードウェア
   高機能だが性能を引き出すには見合った環境が必要
    特にCPUとメモリは重要
    
        CPU:コアあたりの処理性能、コア数
       メインメモリ:あるだけ使うので多いほどよい
       同期書き込み用にNVRAMかSSDをZILに




非力なCPU、メモリ過少な環境で重いとか遅いというのはちょっと違う

                                 24
ZFSでストレージサーバ




      COMSTAR


                25
COMSTARとは vol.1
   iSCSIでIP-SANの構築
    
        ZFS自体にはiSCSIの機能はない(昔はあった)
    
        (Open)SolarisのOS/NetというON(kernel)が提供




               COMSTAR
            (COmmon Multiprotocol SCSI TARget )

                                                  26
COMSTARとは vol.2
   Kernel modeで動作する
           以前のOpenSolarisではZFSにiSCSIの機能があった
            ●
                shareiscsiプロパティでの実装はユーザーランド(廃止)


    カーネルモードで動作するので処理性能が高い


    ●COMSTARが使えるのは(Open)Solarisだけ!
    ●ソフトウェア実装なので専用ハードウェア不要


    FCoEも可能
    ●

                                                  27
ZFSでストレージサーバ




 ZFS & COMSTARなOS


                    28
ZFS&COMSTARなOS達
   OpenSolaris 2009.06
       最後のOpenSolaris(ディストリビューション的な意味で)
   OpenIndiana
       もうすぐ安定版リリースがある・・・はず
   Oracle Solaris 11 Express
       現時点で最新のZFSが使える
   Solaris 11
       リリースはまだ先
   NexentaStor
       Nexenta(Ubuntuユーザランド)をストレージアプライアンス用に特化さ
        せたOS
       GUIでストレージの設定が可能
                                                  29
XenServerとZFSストレージでサーバ仮想化




         活用事例


                            30
お断り

    ここで紹介する構成については以下の点にご注意の上、
         あくまで一例としてご覧ください

●自分で責任の取れる範囲での運用が前提
●動作保証が第三者から保証されているものではない


●障害発生時にリカバリする手段がある(バックアップ)


●動くからといってそのままエンタープライズレベルの環境に


あてはめることができるものではない




                                31
ZFSストレージの活用事例 No.1
   Windowsエクセルマクロ処理専用
       OpenSolaris 2009.06
       SambaによるWindows共有サーバ兼用
       WindowsXP x4 /台 4ホスト
        ●   Core-i7のPCサーバ
       Supermicroのカスタムストレージ
        ●   最初は自作パーツでAthlon使ってました
        ●   Intel SSD X25-MをZILに使用
       バックアップ
        ●   ボリューム単位でスナップショット
        ●   zfs sendで別サーバへコピー
                                     32
ZFSストレージの活用事例 No.2
   メールサーバ
       OpenSolaris 2009.06
    
        Supermicroのカスタムストレージ
    
        1ホストで6台のメールサーバ他
        ●
            X25-VをZIL、X25-MをL2ARCに
       バックアップは事例1と同じ




                                     33
ZFSストレージの活用事例 No.3
   社内開発環境の仮想化
       NexentaStor Community Edition 3.0.3
       Opteronな自作サーバとかPowerEdge1950とか
       雑多なサーバをひとまとめ(12,3台ぐらい)
        ●   開発ソースサーバ
        ●   Wikiサーバ
        ●   テストサーバ
        ●   メールサーバ
        ●   検証用サーバ
       バックアップ
        ●   やっぱりスナップショットと増分転送
                                              34
ZFSストレージの活用事例 No.4
   Windows PCのドライブ
       NexentaStor Community Edition 3.0.4
       AthlonⅡ 605e 4core 2.3GHz(TDP 45W)
       メモリ4GB
        ●
            ACアダプタ駆動の静音&省電力サーバ
        ●   同期書き込み無効(syncプロパティ)
               更新少ないのでパフォーマンス > 安全性
               このレベルのマシンでも十分な性能
    
        Windows7のドライブとしてマウント
        ●   動画データ、音楽データなどの倉庫

                                              35
参考リンク等
   ZFSの情報(ZFSについて知りたい人必読)
       オラクルエンジニア通信のセミナー資料
        http://blogs.oracle.com/oracle4engineer/material/product/sola
        ris/
   自分のブログ(ZFSとかCOMSTARとか)
       tokuhy's fraction
        http://d.hatena.ne.jp/tokuhy/
   Twitter(@tokuhy)
       http://d.hatena.ne.jp/tokuhy/
   自宅SAN友の会
       http://sites.google.com/site/jitakusan/
                                                                   36
参考リンク等
   OpenIndiana
       http://openindiana.org/
   Nexenta
       http://www.nexenta.com/corp/
   NexentaStor
       http://www.nexentastor.org/
   Oracle Solaris 11 Express
       http://www.oracle.com/technetwork/jp/server-
        storage/solaris11/overview/index.html

                                                       37
参考リンク等
   COMSTARについて
      COMSTAR Administration
        ●   http://wikis.sun.com/display/OpenSolarisInfo200906/COMSTA
            R+Administration
       OpenSolaris勉強会 2010.04 for Admin(仮) COMSTARで
        iSCSI(OpenSolaris 2009.06ベースなので一部情報古い)
        ●   http://docs.google.com/present/view?id=dpdpddx_4dnvjv7c9
       前回のOSCでの資料(@satokazさん)
        ●   https://groups.google.com/group/stomo/web/osol_comstar_2
            0100522.pdf?hl=ja&hl=ja



                                                                    38
ということで




         最後に


               39
メンバー募集中

        僕と契約して
 自宅SAN友の会のメンバーになってよ!




                   40
おわり



      ご静聴ありがとうございました




                       41

XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)

  • 1.
    XenServerとZFSストレージでサーバ仮想化 ~ZFS&COMSTARで作るIP-SAN~ OSC 2011 Tokyo/Spring 自宅SAN友の会 徳山 文晟 / Tokuyama Fumiaki Twitter:@tokuhy 2011/03/05
  • 2.
    アジェンダ  自己紹介  XenServerとZFSなわけ  ZFSでストレージサーバ  ZFSいろいろ  COMSTAR  OS紹介  XenServerとZFSストレージの活用事例 2
  • 3.
    自己紹介 徳山 文晟 / Tokuyama Fumiaki 氏名 氏名 Twitter:@tokuhy Webサイト/サービス開発会社のインフラ部員 お仕事 お仕事 サーバの保守運用/社内ネットワーク保守運用 グループ社内のなんでも屋的に色々広く浅く・・・ ➢Japan OpenSolaris Users Group コミュニティ コミュニティ ➢自宅SAN友の会 自作PC関連とか 興味 興味 おうちのストレージも自作 3
  • 4.
    XenServerとZFSストレージでサーバ仮想化 社内の仮想化環境 ハイパーバイザ:XenServer 共有ストレージ:ZFS & iSCSIストレージ(OpenSolaris) 4
  • 5.
  • 6.
    XenServer  サーバ仮想化にXenServerを使用  KVMはまだ実績と情報が少なかった(と思う)  無償で使える ● とりあえず無償で実際に試してみたかった  管理ツールがある(XenCenter)  無償でライブマイグレーションができる 6
  • 7.
  • 8.
    ZFS&iSCSI(COMSTAR)で作るIP-SAN SANベースのスナップショットによるバックアップ でもエンタープライズのストレージは (お試しで使ってみるには)高い なければ作れば作ればいいじゃない ( ̄ー ̄) 8
  • 9.
    ZFS&iSCSI(COMSTAR)で作るIP-SAN iSCSIなら既存のネットワークの延長で簡単に作れる バックアップどうする? ZFSってやつのスナップショット機能がすごいらしい しかもファイルシステムでiSCSIの機能がある! (※当時のZFSの話。今はない。) 9
  • 10.
    ZFS&iSCSI(COMSTAR)で作るIP-SAN ZFSを仮想化共有ストレージとして使う場合・・・  VMイメージまるごとバックアップ  複数世代スナップショットで増分バックアップ(後述)  別サーバへ増分転送(後述) 簡単&らくちん\(^o^)/ 動機はこんな感じです。スイマセン・・・ 言う程簡単じゃなかったです・・・ 10
  • 11.
  • 12.
    ZFSでストレージサーバ  ストレージサーバとして必要な機能が豊富 拡張性 機能 堅牢性 性能 管理性 単体ノードで考える場合のファイルシステムとしては最強レベル (エンタープライズレベルでの動作実績的な意味で) Sun Storage 7000シリーズもZFS(OpenSolarisベース) 12
  • 13.
  • 14.
    ZFSでストレージサーバ vol.1 /拡張性  ストレージプール  ディスクを束ねてプールを作成 ● ディスクサイズがいくらでも関係なく一瞬で作成可能  プールから必要サイズのボリューム/ファイルシステム の切り出し  あとからディスクの追加による拡張可 ● ただし制限あり  128ビットファイルシステム  ZFSの「Z」はZetta-bytes(10 億TB) のZの意味も  実際はもっといける(1000兆Zetta-bytes) 14
  • 15.
  • 16.
    ZFSでストレージサーバ vol.2 /堅牢性  ファイルシステムでRAID機能を提供  ストライプ(RAID0)、ミラー(RAID1)  RAID-Z(シングルパリティ→機能拡張されたRAID5)  RAID-Z2(ダブルパリティ→機能拡張されたRAID6)  RAID-Z3(トリプルパリティ) ● write-holeの排除  RAIDの組み合わせももちろん可能 ● RAID10、RAID-Z+RAID0(≒RAID50)、RAID-Z2+RAID0(≒RAID60)  ディスク障害時のRAID再構築  使用中の部分のみの同期 ● ハードウェアRAIDに比べ縮退状態の時間短縮  ファイルシステムにRAID機能があるので使用されている部分が把握されている 16
  • 17.
    ZFSでストレージサーバ vol.2 /堅牢性  トランザクションベースの書き込み時コピー  Copy-On-Write  古いデータか新しいデータのどちらかが保証される  エンド・ツー・エンドのツリー構造のチェックサム  データのエラーを自己修復  全データに対して任意のタイミングでエラーチェッ クをかけることが可能(scrub) ● I/Oが発生しているときは優先度が下げられて実行される 17
  • 18.
  • 19.
    ZFSでストレージサーバ vol.3 /管理性  管理コマンドは2個だけ!  zpoolコマンド、zfsコマンド 1. zpoolコマンドでディスクを束ねてプール構築 2. zfsコマンドでプールからファイルシステムの切り出し 3.必要があればプロパティの設定(zfs set)  容量の設定や制限(quota)もプロパティ値で  作成されたプールを別マシンへそのまま移動可  export、import 19
  • 20.
  • 21.
    ZFSでストレージサーバ vol.4 /機能  NASとしての機能  ファイルシステムレベルで実装  NFS/CIFS  データ保全としての機能  複数世代のスナップショット ● リモートへの増分転送  クローン  容量節約の機能  疎ボリューム  圧縮  重複排除(dedup) 21
  • 22.
  • 23.
    ZFSでストレージサーバ vol.5 /性能  ハイブリッドストレージ  DRAM、SSDなどIOPSに優れたデバイスを利用可能 ● ログデバイス(ZIL) ● キャシュデバイス(ARC&L2ARC)  同数のディスク構成なら15k rpmのSASのディスク並 べるより、5400rpmのSATAディスクとSSDの組み合 わせの方がIOPS、容量、TBコスト全てで上回る 23
  • 24.
    ZFSでストレージサーバ vol.6 /ハードウェア  高機能だが性能を引き出すには見合った環境が必要 特にCPUとメモリは重要  CPU:コアあたりの処理性能、コア数  メインメモリ:あるだけ使うので多いほどよい  同期書き込み用にNVRAMかSSDをZILに 非力なCPU、メモリ過少な環境で重いとか遅いというのはちょっと違う 24
  • 25.
  • 26.
    COMSTARとは vol.1  iSCSIでIP-SANの構築  ZFS自体にはiSCSIの機能はない(昔はあった)  (Open)SolarisのOS/NetというON(kernel)が提供 COMSTAR (COmmon Multiprotocol SCSI TARget ) 26
  • 27.
    COMSTARとは vol.2  Kernel modeで動作する  以前のOpenSolarisではZFSにiSCSIの機能があった ● shareiscsiプロパティでの実装はユーザーランド(廃止) カーネルモードで動作するので処理性能が高い ●COMSTARが使えるのは(Open)Solarisだけ! ●ソフトウェア実装なので専用ハードウェア不要 FCoEも可能 ● 27
  • 28.
  • 29.
    ZFS&COMSTARなOS達  OpenSolaris 2009.06  最後のOpenSolaris(ディストリビューション的な意味で)  OpenIndiana  もうすぐ安定版リリースがある・・・はず  Oracle Solaris 11 Express  現時点で最新のZFSが使える  Solaris 11  リリースはまだ先  NexentaStor  Nexenta(Ubuntuユーザランド)をストレージアプライアンス用に特化さ せたOS  GUIでストレージの設定が可能 29
  • 30.
  • 31.
    お断り ここで紹介する構成については以下の点にご注意の上、 あくまで一例としてご覧ください ●自分で責任の取れる範囲での運用が前提 ●動作保証が第三者から保証されているものではない ●障害発生時にリカバリする手段がある(バックアップ) ●動くからといってそのままエンタープライズレベルの環境に あてはめることができるものではない 31
  • 32.
    ZFSストレージの活用事例 No.1  Windowsエクセルマクロ処理専用  OpenSolaris 2009.06  SambaによるWindows共有サーバ兼用  WindowsXP x4 /台 4ホスト ● Core-i7のPCサーバ  Supermicroのカスタムストレージ ● 最初は自作パーツでAthlon使ってました ● Intel SSD X25-MをZILに使用  バックアップ ● ボリューム単位でスナップショット ● zfs sendで別サーバへコピー 32
  • 33.
    ZFSストレージの活用事例 No.2  メールサーバ  OpenSolaris 2009.06  Supermicroのカスタムストレージ  1ホストで6台のメールサーバ他 ● X25-VをZIL、X25-MをL2ARCに  バックアップは事例1と同じ 33
  • 34.
    ZFSストレージの活用事例 No.3  社内開発環境の仮想化  NexentaStor Community Edition 3.0.3  Opteronな自作サーバとかPowerEdge1950とか  雑多なサーバをひとまとめ(12,3台ぐらい) ● 開発ソースサーバ ● Wikiサーバ ● テストサーバ ● メールサーバ ● 検証用サーバ  バックアップ ● やっぱりスナップショットと増分転送 34
  • 35.
    ZFSストレージの活用事例 No.4  Windows PCのドライブ  NexentaStor Community Edition 3.0.4  AthlonⅡ 605e 4core 2.3GHz(TDP 45W)  メモリ4GB ● ACアダプタ駆動の静音&省電力サーバ ● 同期書き込み無効(syncプロパティ)  更新少ないのでパフォーマンス > 安全性  このレベルのマシンでも十分な性能  Windows7のドライブとしてマウント ● 動画データ、音楽データなどの倉庫 35
  • 36.
    参考リンク等  ZFSの情報(ZFSについて知りたい人必読)  オラクルエンジニア通信のセミナー資料 http://blogs.oracle.com/oracle4engineer/material/product/sola ris/  自分のブログ(ZFSとかCOMSTARとか)  tokuhy's fraction http://d.hatena.ne.jp/tokuhy/  Twitter(@tokuhy)  http://d.hatena.ne.jp/tokuhy/  自宅SAN友の会  http://sites.google.com/site/jitakusan/ 36
  • 37.
    参考リンク等  OpenIndiana  http://openindiana.org/  Nexenta  http://www.nexenta.com/corp/  NexentaStor  http://www.nexentastor.org/  Oracle Solaris 11 Express  http://www.oracle.com/technetwork/jp/server- storage/solaris11/overview/index.html 37
  • 38.
    参考リンク等  COMSTARについて  COMSTAR Administration ● http://wikis.sun.com/display/OpenSolarisInfo200906/COMSTA R+Administration  OpenSolaris勉強会 2010.04 for Admin(仮) COMSTARで iSCSI(OpenSolaris 2009.06ベースなので一部情報古い) ● http://docs.google.com/present/view?id=dpdpddx_4dnvjv7c9  前回のOSCでの資料(@satokazさん) ● https://groups.google.com/group/stomo/web/osol_comstar_2 0100522.pdf?hl=ja&hl=ja 38
  • 39.
    ということで 最後に 39
  • 40.
    メンバー募集中 僕と契約して 自宅SAN友の会のメンバーになってよ! 40
  • 41.
    おわり ご静聴ありがとうございました 41