Oracle Solaris ZFS 技術概要と機能活用 日本オラクル株式会社 システム事業統括 ソリューション統括本部

以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。 また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことは できません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント (確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。 オラクル製品に関して記載されている機能の開発、リリースおよび時期については、 弊社の裁量により決定されます。

OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。 文中の社名、商品名等は各社の商標または登録商標である場合があります。

Copyright© 2011, Oracle. All rights reserved.

2

スピーカー自己紹介 • 学生時代 • JDK 1.1でPrologの推論機構を実装し検索エンジンの真似ごと

• 1998年4月(日本)サン・マイクロシステムズ入社 • ふと気づけば社会人14年目

• ほぼずっとSE (Sはシステム?セールス?) • 主にSolaris、開発環境、Sun Rayシンクライアント • 今は主に通信事業者様担当

• 1年だけサポートエンジニア • Java VMの解析

• Solarisエバンジェリスト(宣教師?!) • 最近は特にZFSの宣伝係としての出番増

Copyright© 2011, Oracle. All rights reserved.

3

内容 • ZFS 技術概要編 • ファイルシステムって何? • ファイル、ファイルシステム、UFS、ボリューム管理 • なぜZFSか? • 既存ファイルシステムの問題点、ZFS開発目的、経過、近況 • ZFSはどうすごい? • 拡張性、堅牢性、機能、性能、管理性

• ZFS 機能活用編 • 便利な機能、ZFS の活用、ZFS + 仮想化、ZFS x Oracle、事例集

• 「統合」元資料: Oracle ダイレクトセミナー資料 • zfs 第 1 弾、zfs 第 2 弾、zfs 第 3 弾、で 検索 • ZFSを実際に使う場合は、zfs 第 4 弾、もご参照ください Copyright© 2011, Oracle. All rights reserved.

4

ZFS 技術概要編

ファイルシステムって何?

10数年前にパソコンマニア(?)だった私も Sun に入社する前は ファイルシステムという言葉は知りませんでした...

Copyright© 2011, Oracle. All rights reserved.

5

ファイル? • ファイル?

• ファイル?

Copyright© 2011, Oracle. All rights reserved.

6

フォルダ?ディレクトリ? • フォルダ?

• ディレクトリ? 12-15F □△不動産 11-12F ○△建設 5-10F □□工業 4F △△商事 1-3F ○○株式会社

Copyright© 2011, Oracle. All rights reserved.

7

ファイルとは • 元々のイメージ • 書類・ドキュメント • 紙を何枚かまとめて

意味のあるまとまりにしたもの • OS用語では データ • 先頭からEOF (End Of File) までの配列に何らかの データを格納したもの EOF 先頭 • 何らかのデータ? • ソフトウェアが扱うあるまとまったデータ • どのように格納?

Copyright© 2011, Oracle. All rights reserved.

8

ディレクトリ?フォルダ? • 元々のイメージ • ディレクトリ:入居者(社)名のリスト • フォルダ:ファイルの入れ物 • 主にWindowsでの呼び名 ディレクトリ • ほぼ同じ概念

• OS用語では • 複数のファイルを 格納するもの • 階層構造 • or入れ子構造

○社 △社 □社 ☆社

ディレクトリ

a部 b部 c部

ディレクトリ

Aさん Bさん Cさん Dさん

フ ァ イ ル

ファイル フォルダ

Copyright© 2011, Oracle. All rights reserved.

フォルダ

9

ファイルシステムとは • ファイルをどこかに格納する仕組み • どこか? 1011010101100100

1010101100100

Copyright© 2011, Oracle. All rights reserved.

10

10110

• 主に(ハード)ディスク • ディスク・ファイル・システム • 電源オフしても消えない • でもディスクだけだと遅い • メモリ • 電源オフで消えてもよい場合 • FD/CD/DVD、USB、..

ディスクの構造 トラック セクタ ヘッド アーム 高速回転

ディスク セクタ番号(ブロック番号)で管理 Copyright© 2011, Oracle. All rights reserved.

シリンダ 11

結局のところファイルシステムとは • どのセクタにどうデータを書くか

• 開発者の腕(?)の見せどころ • • • • •

容量をうまく使えるか 安全か 便利か 高速か 管理しやすいか

Copyright© 2011, Oracle. All rights reserved.

12

様々なファイルシステム • どのセクタにどうデータを書くか • 固定型、拡張型

• 容量をうまく使えるか • 容量変更方法と制限

• 安全か • 冗長性、書き込み方法、誤り検出

• 便利か • 属性情報、スナップショット、 バックアップ、リモートコピー、..

• 高速か • データの配置、メモリの有効利用

Copyright© 2011, Oracle. All rights reserved.

13

速くするための工夫

Copyright© 2011, Oracle. All rights reserved.

14

ファイルシステムいろいろ Solaris UFS Solaris ZFS QFS SAM-FS Lustre Btrfs ACFS VxFS JFS FAT32 NTFS ext2 ext3 ext4 ReiserFS XFS HFS+

主な開発/取扱ベンダー Oracle Oracle Oracle Oracle Oracle Oracle Oracle Symantec IBM Microsoft Microsoft SGI Apple Copyright© 2011, Oracle. All rights reserved.

OS Solaris Solaris/FreeBSD Solaris Solaris Linux Linux Linux/UNIX/Windows HP-UX/UNIX/Linux AIX/Linux Windows Windows Linux Linux Linux Linux Linux/FreeBSD MacOS 15

SolarisのUFS (UNIX File System) • 古くからのコンセプト

• UFSでのディレクトリ実装 • 含むファイルの • リスト • ポインタ

• を持つ特別なファイル Copyright© 2011, Oracle. All rights reserved.

16

ハードディスク容量の変遷 • • • •

20年ほど前:約10MB 10年ほど前:約 1GB (10年で約100倍!) 現在:約1-3TB (10年で約1000倍!!) 1-1.5年で倍と言われている

10101100

1010110011010011 1101111010101010 1111000001001011

Copyright© 2011, Oracle. All rights reserved.

101011001101001111110010110111101010101001010000 111100000100101110101101101011001101001111111111 110111101010101010000000111100000100101100101100 110111101010101010000000111100000100101100101100

17

ボリューム管理の登場 • 10年以上前 • ディスクを分割使用

数GB以下 各100MB〜 • 10年ほど前 • データ増大 • 複数ドライブを まとめて使いたい • オープン系で RAID普及

volume ≒ disk drive

数10GB〜

各数GB〜 Copyright© 2011, Oracle. All rights reserved.

18

代表的なRAID (Redundant Arrays of Independent Disks) • RAIDを使いたいとき • → ボリューム管理ソフトウェアやHW-RAIDコントローラを使う

D D1

RAID 0 stripe concatenation

D

D2 D3

D4

        c1t0d0 c1t1d0 c1t2d0 c1t3d0

volume

D1 D1 D2 D2

RAID 1 mirror

        c1t0d0 c1t1d0 c1t2d0 c1t3d0

volume

D

D RAID 5

D1 D2

D3

D1

P

        c1t0d0 c1t1d0 c1t2d0 c1t3d0

RAID 6

volume

Copyright© 2011, Oracle. All rights reserved.

D2 P1

P2

        c1t0d0 c1t1d0 c1t2d0 c1t3d0

volume

19

シングルパリティ • 単一障害耐性 • XOR (Exclusive OR: 排他的論理和) • • • •

A

1 + 1=0 0 +0=0 1 + 0=1 0 + 1=1

B

P 復旧!

A=1 0 1 1 0 1 0 0 + + + + + + + +

B=0 1 0 1 1 0 0 0 P=1 1 1 0 1 1 0 0

P+A = 1 + 1 0 P +B = 1 + 0 1

1 0 1 1 1 0

Copyright© 2011, Oracle. All rights reserved.

1 1 0 1 0 1

0 1 1 0 1 1

1 0 1 1 1 0

1 1 0 1 0 1

0 0 0 0 0 0

0 ←P 0 ←A 0→B 0 ←P 0 ←B 0→A 20

ダブルパリティ

P=1 1 0 1 0 1 1 1 A=1 0 1 1 0 1 0 0

• 二重障害耐性 • 計算式は..

+ + + + + + + +

B=0 1 0 1 1 0 0 0 + + + + + + + +

A

復旧!!

B

C

P

C=0 0 1 1 1 0 1 1 Q Q = 00000001 x A ??? + 00000010 x B + 00000100 x C = 11101000 -1

C = (00000011 x A + 00000010 xP + Q) x 00000110 B = P +A + C Copyright© 2011, Oracle. All rights reserved.

21

「ファイルシステム作成」とは? • ユーザー、管理者から見ると • ディスクなどをOSから使えるようにすること • 通常時 • あまり意識しないですむ • OSインストールプログラムが作成するから • 新たにディスクを使いたいときなど • 管理者やユーザーが明示的に実施 • あらかじめ実施されていることも多い

Copyright© 2011, Oracle. All rights reserved.

22

ファイルシステム作成手順は? • ファイルシステム作成≒「初期化」 • フォーマットとも • ディスクのどこをどう使うかが定まる • フロッピー等の初期化も同様

ファイル番号 リスト領域 ファイル番号 リスト領域

• ハードディスクだと • 普通はちょっと面倒 • 事前に分割することも

• 複数ハードディスクだと

ファイル番号 リスト領域 ファイル 属性値領域 ファイル 属性値領域 ファイル 属性値領域

• 普通はもう少し面倒 • 事前にボリューム作成 • ボリュームを1ドライブのように扱う

ディレクトリ 予備 構造情報領域

ディレクトリ 構造情報領域

ファイル内容 ファイル内容 ファイル内容

サイズ拡張時 使う領域

ファイル内容    予備 ファイル内容   予備 ファイル内容    予備

ファイル内容

サイズ拡張時 使う領域

ディレクトリ 構造情報領域

ファイル内容

サイズ拡張時 使う領域

予備

サイズ拡張時 使う領域

ディスク(イメージ)

Copyright© 2011, Oracle. All rights reserved.

23

ZFS 技術概要編

なぜZFSか?

Copyright© 2011, Oracle. All rights reserved.

24

既存ファイルシステムの問題点 • • • • •

拡張性 堅牢性 機能 性能 管理性

Copyright© 2011, Oracle. All rights reserved.

25

拡張性?

容量変更は難しい • 容量予測はえてして難しい • 容量変更は難しい • OS 用ファイルシステムが満杯 • 動作の不安定を引き起こす • 別の空き領域に 大きなファイルを 移動させるなど

• 急場しのぎ的

/, /usr swap /var /export

Copyright© 2011, Oracle. All rights reserved.

26

拡張性?

ボリューム管理の制限 ファイル システム

NG !

ファイル システム

移動?

まだ余裕

あふれそう..

volume

volume 使 drive 用 中

使用中

Copyright© 2011, Oracle. All rights reserved.

27

拡張性?

ボリューム管理は煩雑! ファイル システム

バックアップ マウント解除

煩雑!

1 2

4 3

volume

ファイル システム

2

1 使 用 中

バックアップ マウント解除

volume drive drive 使用中

Copyright© 2011, Oracle. All rights reserved.

28

拡張性?

アドレス(サイズ)の制限

• 32-bit • 2の32乗= 4GB (40億) • 4,294,967,296

• 64-bit • 2の64乗= 16EB (40億の40億倍) • 18,446,744,073,709,551,616 • (Petaの上) • 10-15年で不足する可能性 • ムーアの法則

Copyright© 2011, Oracle. All rights reserved.

29

拡張性?

ファイル数の制限

• 作成時にファイル数が固定されるものもある • 容量は余裕があってもファイルを 作成できなくなったり。。

Copyright© 2011, Oracle. All rights reserved.

30

堅牢性?

上書きによる更新 ファイル

• 書き込み前

Copyright© 2011, Oracle. All rights reserved.

31

堅牢性?

上書きによる破損の可能性

• 書き込み途中での電源障害時 • データ破損 • ファイルシステム破損 • ファイル破損

完 完 完途 ま ま ま ま 了 了 了中 だ だ だ だ

Copyright© 2011, Oracle. All rights reserved.

32

堅牢性?

Solaris UFS(ロギング無し)

1.構造情報(メタデータ)と データを書込 2.書込終了 3.ディスクへの書込 • 電源障害時 • メモリ内容消失 • 構造情報と実際の構造が 不整合 • fsckで一貫性を復旧 • 大容量では長時間 • 復旧できないことも

Application 2 1 FS メモリ内 3 MetaData Data

Copyright© 2011, Oracle. All rights reserved.

Disk File System

33

堅牢性

UFSロギング

1.アプリケーションからの書 き込み 2.構造情報をlogに更新 3.書込終了 4.ディスクへ書込

メモリ内

• 電源障害時 • 構造情報の整合性は 保たれる • fsck不要

Application 1 3 FS Data

MetaData

2 log

4 4

Disk File System

• コードの複雑化

Copyright© 2011, Oracle. All rights reserved.

34

堅牢性?

ブロック単位のチェックサム 荷物を 倉庫に格納依頼

• チェックサム

倉庫前 中身検査 配送過程

• 誤り検出(訂正)用情報

• ブロックのチェックサムを計算 チェックサムで • 当該ブロック内のみでの誤り検出 出荷前 チェックサムで 保護されない 中身検査 保護される • =ブロック単位で誤っていない場合は 検出できない(silent data corruption) (ブロック単位チェックサムのイメージ) CERN の実験• 検出可: bit rot 33700ファイル • (約8.7TB) 中 検出不可: phantom writes, misdirected read/writes, 22ファイルで発生 accidental overwrites, DMA parity errors, driver bugs など

{

ブロック

データ

データ

checksum

checksum

Copyright© 2011, Oracle. All rights reserved.

35

堅牢性?

ブロック単位のチェックサムでは.. 正しいブロック

• ミラー構成時

誤ったブロック

アプリケーション

アプリケーション

アプリケーション

ファイルシステム

ファイルシステム

ファイルシステム

ボリューム管理

ボリューム管理

ボリューム管理

Copyright© 2011, Oracle. All rights reserved.

36

機能?

いろいろできてほしいが..

• スナップショット • ある時点で中身を固定されたコピー • Solaris UFS • 1ファイルシステム1スナップショット • 取得内容確認には管理者権限が必要 • ディスク容量や性能低下の懸念

• 欲しい機能が無かったり、高価で導入できないことも

スナップ ショット元

Copyright© 2011, Oracle. All rights reserved.

スナップ ショット

37

性能?

両立は難しい

• • • •

安全性を高める →処理内容の増加 →性能の低下 Solaris UFSロギング • 複数の読み書きをまとめて性能向上 • コードの複雑化 • 拡張に要する工数増大 • コードメンテナンス性の低下

Copyright© 2011, Oracle. All rights reserved.

38

管理性?

管理が面倒 ??

• 例: Solaris UFS + Solaris Volume Manager • ファイルシステム作成 • fdisk /dev/rdsk/cXtXdX ディスク分割 • format or fmthard ボリューム作成 • metadb -f -a .. • metainit • newfs ファイルシステム作成 • vi /etc/vfstab マウント設定 • mount • 他にも多くのコマンド • meta* (15個以上), fsck, growfs, tunefs, mkfs, ..

Copyright© 2011, Oracle. All rights reserved.

39

ZFS開発のきっかけ • 1996年Menlo Park, CA • Solaris開発チーム新拠点に引っ越し • ハードディスクアップグレード • チームのディレクトリにアクセス不能に • メモリ追加なら簡単なのに。。 • ディスクとDIMMの違いは永続性のみ • DIMMでできることがなぜ ディスクでできない?!

?!

< Copyright© 2011, Oracle. All rights reserved.

40

ZFS開発目的 • 目指すところはDIMM • メモリはOSがリソースとして管理

• さらに • 既存ファイルシステム・ボリューム管理の問題点を全て解決したい • 拡張性 • 堅牢性 • 機能 • 性能 • 管理性

• →究極のファイルシステムを作ろう! • Zは「究極の」「最後の」の意味もある

Copyright© 2011, Oracle. All rights reserved.

41

ZFS開発経過 • • • •

2001/10/31:ユーザーレベルプロトタイプ 2002/10/31:カーネル内マウント 2005/10/31: オープンソースで公開・統合 2006/06: Solaris 10 6/06で製品リリース

Copyright© 2011, Oracle. All rights reserved.

42

ZFS近況 • 2008/05: OpenSolaris 2008.05 ZFSブート • ブートディスクでのスナップショット、ロールバック

• 2008/10: Solaris 10 10/08 ZFSブート、ログのSSD対応 • 2008/11: Storage 7000シリーズ発表、ハイブリッドストレージプール • 2009/09: Storage 7000 トリプルパリティ RAID-Z 2009/10: Solaris 10 10/09 2次リードキャッシュのSSD対応 • 2010/02: Storage 7000 重複排除対応 • 2010/09: Solaris 10 9/10 トリプルパリティRAID-Z • 2010/11: Solaris 11 Express 2010.11 重複排除、暗号化 ZFS • 他プラットフォームへの移植 • FreeBSD, Linux/FUSE, (MacOS) Copyright© 2011, Oracle. All rights reserved.

43

ZFSの歴史と機能比較 日付

内容

build ver S11E ZFSSA S10

2005/10/31

-

-

-

-

-

オープンソースで公開

2006/03

36

1

-

-

-

Solaris 10 6/06 で製品として初リリース

2006/06

42

3







ダブルパリティ RAID-Z

2007/07

62

6







ブート対応

2007/07

68

7







分離ログデバイス (slog)

2007/11

78 10







2次読込キャッシュ (L2ARC)

2008/05

90

-





×

COMSTAR 対応

2008/11

-

-

-

-

-

Storage 7000 シリーズ (現ZFSSAシリーズ)

2009/05

114 15







ユーザー・グループ単位容量制限

2009/07

120 17







トリプルパリティ RAID-Z

2009/11

128 21





×

重複排除

2010/09

149 30





×

暗号化

build: Nevada build, ver: zpool version, S11E: Solaris 11 Express 2010.11 (Nevada b151a / zpool ver 31), ZFSSA: ZFS Storage Appliance 2010.Q3, S10: Solaris 10 8/11 (zpool ver 29 but dedup not supported) Copyright© 2011, Oracle. All rights reserved.

44

ZFS 技術概要編

ZFSはどうすごい?

Copyright© 2011, Oracle. All rights reserved.

45

ZFSの特長 • • • • •

拡張性 堅牢性 機能 性能 管理性

Copyright© 2011, Oracle. All rights reserved.

46

拡張性

ZFS拡張性

• 既存ファイルシステムの問題点 • 容量変更が難しい • アドレス(サイズ)の制限 • ファイル数の制限

• ...ZFSでは? • プールによるストレージ管理、128ビットファイルシステム、 さらなる拡張性 Copyright© 2011, Oracle. All rights reserved.

47

拡張性!

ストレージプール

• 物理ストレージを登録 • イメージとしては容れ物 (プール) に格納

• 必要なときにその容量を使用

StoragePool

Copyright© 2011, Oracle. All rights reserved.

48

拡張性!

プール内でRAIDを構成

• プール= あるRAID特性(性能や冗長性)の 容量のまとまり • 10ディスクドライブのプール例 • 10ドライブでRAID 0 • 容量10ドライブ分、冗長性0、ストライプ幅10 • 10ドライブでRAID 5(相当) • 容量9ドライブ分、冗長性1、ストライプ幅9 • 5ドライブのRAID 5(相当)を2グループ • 容量8ドライブ分、冗長性2、(ストライプ幅 4) x 2 • 10ドライブでRAID 1(+0) • 容量5ドライブ分、ストライプ幅5、冗長性5 • 後から追加も可 (基本的にはグループ単位) Copyright© 2011, Oracle. All rights reserved.

49

拡張性!

「ファイルシステム」

• プールから必要な容量が 自動で切り出されて使われる • 個々では容量を設定する必要無し • 「属性値」で設定することも可 • 同一プール内でプール容量を共有

• サイズの上限=プールサイズ • 格納データ増加 • →プールからの容量自動割り当て

Copyright© 2011, Oracle. All rights reserved.

50

拡張性!

切り出す? / (root) ファイルシステム3

usr

opt

export home

ファイルシステム1 どのデバイスの どこが使われるかは ZFSが自動で決定

ファイル システム2

ファイルシステム4

StoragePool Copyright© 2011, Oracle. All rights reserved.

51

拡張性!

「ファイルシステム」概念の進化

• DIMMと同じコンセプト • ファイルシステム格納データ増加 • →プールからの容量自動割り当て • DIMMをシステムに追加 • → OSが認識し必要プロセスに割り当て

• ストレージの仮想化

Copyright© 2011, Oracle. All rights reserved.

52

拡張性!

容量追加

• プール容量不足時 • システムに物理ストレージデバイスを追加し認識させ • オンラインでストレージプールに追加 • マウント解除不要、バックアップ不要 • →プールに属するファイルシステム 全てから容量を使用可能 • 使用率や速度を考慮して新規書込先を振り分けリバランス

• データ量の予測が難しい場合

 

• スモールスタート • 後から容量を追加

 

StoragePool

Copyright© 2011, Oracle. All rights reserved.

53

拡張性!

128ビットファイルシステム !

• ディスクブロックを128ビットアドレッシング • 想像できないほどの容量を表現

• 340,282,366,920,938,463,463,374,607,431,768,211,456 • この容量を実現するストレージをエネルギー換算すると 地球の海水を全て沸騰させるためのエネルギー量を上回る

• 64 ビットの 64 ビット倍 • 現在の大規模向けファイルシステムの主流は 64 ビット (8-16 EiB)

• ZFSのZはZetta-byte (10の21乗≒2の70 乗) のZ? • 1 Zetta-byte = 10億TB • 10の21乗= 1,000,000,000,000,000,000,000 • 2の70乗= 1,180,591,620,717,411,303,424 • → 256 Quadrillion (1000兆) Zetta-byte

Copyright© 2011, Oracle. All rights reserved.

54

拡張性!

各種制限(?)値

他のファイルシステムは 大きくて各 16EiB

• プールサイズ • 2の78乗(≒ 256 x 10の21乗)バイト

• システムのプール数 • 2の64乗(≒ 16 x 10の18乗)個

• ファイルシステムサイズ • 2の64乗(≒ 16 x 10の18乗)バイト

• ファイルサイズ • 2の64乗(≒ 16 x 10の18乗)バイト

• ディレクトリ内のファイル数 • 2の48乗(≒ 256 x 10の12乗)個

Copyright© 2011, Oracle. All rights reserved.

55

拡張性!

重複排除 (Solaris 10 は非対応)

• ブロックレベルの重複検知 • メタデータは対象外

• 重複判定はオンザフライ(オンライン)で行われる • 重複排除を実行するための専用領域等は不要

• 重複判定 • SHA256 によるチェックサム計算で判定 • 「verify」はさらにバイト単位で比較 SHA256のコリジョン発生確率↓ 0.00000000000000000000000000000000000000000000000000000000000000000000000000001

• 重複排除を適用する前に格納されているデータは重複排除対象外 • ファイルシステム作成時に指定するのが望ましい • ZFS の機能として統合済み、アドオンではない Copyright© 2011, Oracle. All rights reserved.

56

拡張性!

ブロックレベルでの重複排除機構

AA BB

File 2

AA1 1 BB

CC File 1

CC CC DD

CC File 1a

BB BB

C

A B

A1 D

3 ファイルを格納する為に使われるブロック Copyright© 2011, Oracle. All rights reserved.

57

拡張性!

さらに拡張性

• メタデータを動的に割り当て • プールやファイルシステム作成時の 指定不要 • 格納可能ファイル数はファイルシステム 作成時点で固定されない

• 圧縮機能 • 容量を有効利用 • 圧縮レベル変更可能

ZFS

Data Compression

Copyright© 2011, Oracle. All rights reserved.

58

堅牢性

ZFS堅牢性

• 既存ファイルシステムの問題点 • 上書きによるデータ破損の可能性 • 構造データの不整合 • 多くはジャーナリング(ロギング)で対処 • プログラムの複雑化 • 誤り検出単位が狭い範囲

• ...ZFSでは? • トランザクションベースの書込み時コピー(Copy-on-Write)、 End-to-Endチェックサム、自己修復、write-holeの排除、RAID、暗号化 Copyright© 2011, Oracle. All rights reserved.

59

堅牢性! トランザクションベースの書込時コピー(Copy-On-Write) Uber-block ポインタ

ポインタ データ

1. はじめの状態 Copyright© 2011, Oracle. All rights reserved.

60

堅牢性! トランザクションベースの書込時コピー(Copy-On-Write) Uber-block

元データ 新データ !

2. コピーを残して新データを別の箇所に記録(CoW) Copyright© 2011, Oracle. All rights reserved.

61

堅牢性! トランザクションベースの書込時コピー(Copy-On-Write) Uber-block

元ポインタ 新ポインタ

3-1. ポインタ(間接ブロック)をCoW Copyright© 2011, Oracle. All rights reserved.

62

堅牢性! トランザクションベースの書込時コピー(Copy-On-Write) Uber-block 元ポインタ 新ポインタ

3-2. ポインタ(間接ブロック)をCoW (続き) Copyright© 2011, Oracle. All rights reserved.

63

堅牢性! トランザクションベースの書込時コピー(Copy-On-Write) New Uber-block

4. atomicにUber-blockを新しいものに置き換える Copyright© 2011, Oracle. All rights reserved.

64

堅牢性! トランザクションベースの書込時コピー(Copy-On-Write) Uber-block

元データ 新データ

アプリ ケーションから 見える状態 はじめの状態

コピーを作成して変更を記録(CoW)

アプリ ケーションから 見えない状態

New Uber-block

元ポインタ 新ポインタ アプリ ケーションから 見えない状態 ポインタ(間接ブロック)をCoW

Copyright© 2011, Oracle. All rights reserved.

Uber-blockを更新

アプリ ケーションから 見える状態

65

堅牢性!

End-to-Endチェックサム

• データとチェックサムを分離 • ツリー全体用のチェックサム • silent data corruption への対策 • IOパス全体のチェック • bit rot • phantom writes • misdirected read/writes • accidental overwrites • DMA parity errors • driver bugs

Copyright© 2011, Oracle. All rights reserved.

荷物を配送業者に渡す前に チェックサムを計算 倉庫から帰ってきた荷物の チェックサムを計算し 格納前のチェックサム値と比較

アドレスの値チェックサムで 指しているアドレスが 本当にそこでよいのかも確認

66

堅牢性! 書き込み時の流れ (チェックサムに着目して) 新 uber-block このデータを書く アドレスのデータ

Uber-block このデータを書く アドレスのデータ

チェックサム 計算

ポインタ 書込予定データ ポインタ

メモリ内

データ チェックサム

1. はじめの状態 Copyright© 2011, Oracle. All rights reserved.

67

堅牢性! 書き込み時の流れ (チェックサムに着目して) 新 uber-block このデータを書く アドレスのデータ

Uber-block このデータを書く アドレスのデータ 書込予定データ

I/O パスを通って HDD に格納される

元データ 新データ

ケーブル コネクタ コントローラ 各バッファ

2. コピーを残して新データを別の箇所に記録(CoW) Copyright© 2011, Oracle. All rights reserved.

68

堅牢性! 書き込み時の流れ (チェックサムに着目して) 新 uber-block このデータを書く アドレスのデータ このデータを書く アドレスのデータ 書込予定データ

I/O パスを通って HDD に格納される

元ポインタ 新ポインタ

3-1. ポインタ(間接ブロック)をCoW Copyright© 2011, Oracle. All rights reserved.

69

堅牢性! 書き込み時の流れ (チェックサムに着目して) 新 uber-block このデータを書く アドレスのデータ

Uber-block このデータを書く アドレスのデータ

I/O パスを通って HDD に格納される 書込予定データ

元ポインタ 新ポインタ

3-2. ポインタ(間接ブロック)をCoW (続き) Copyright© 2011, Oracle. All rights reserved.

70

堅牢性! 書き込み時の流れ (チェックサムに着目して) 新 uber-block このデータを書くI/O パスを通って アドレスのデータHDD に格納される

New Uber-block このデータを書く アドレスのデータ 書込予定データ

4. atomicにUber-blockを新しいものに置き換える Copyright© 2011, Oracle. All rights reserved.

71

堅牢性! 読み込み時の流れ (チェックサムに着目して) 2. uber-block が 正しいことを確認 4. OK!

1. HDD から読まれ I/O パスを通り メモリに格納される

3. データ (指すアドレス) が正しいことが確認される

Uber-block ポインタ

ポインタ

メモリ内

データ チェックサム

1. uber-block が正しいことを確認 Copyright© 2011, Oracle. All rights reserved.

72

堅牢性! 読み込み時の流れ (チェックサムに着目して) 2.チェック サム計算

3. 同じか確認 4. 同じ→正しい 5. OK!

Uber-block

1. HDD から読まれ I/O パスを通り メモリに格納される

2-1. 間接ブロックが正しいことを確認 Copyright© 2011, Oracle. All rights reserved.

73

堅牢性! 読み込み時の流れ (チェックサムに着目して) 3. 同じか確認 4. 同じ→正しい

Uber-block

2. チェック サム計算

5. OK!

1. HDD から読まれ I/O パスを通り メモリに格納される

2-2. 間接ブロックが正しいことを確認 Copyright© 2011, Oracle. All rights reserved.

74

堅牢性! 読み込み時の流れ (チェックサムに着目して)

4. 同じ→正しい

Uber-block

3. 同じか確認

5. OK!

正しいデータの 読み込み完了!

2. チェック サム計算

1. HDD から読まれ I/O パスを通り メモリに格納される

3. データが正しいことを確認 (読み込み完了) Copyright© 2011, Oracle. All rights reserved.

75

堅牢性!

ZFSでのRAID自己修復

アプリケーション

アプリケーション

アプリケーション

ZFSミラー

ZFSミラー

ZFS ミラー

チェックサムで 不正ブロック検知

別ドライブから 正常ブロックを 読み込めたら

RAIDを修復

Copyright© 2011, Oracle. All rights reserved.

76

堅牢性!

メタデータの複製

• 必ず構造情報の複製を持つ Application FS Data

MetaData MetaData

ディスク上の別々の 箇所に置かれる

Data MetaData MetaData

Copyright© 2011, Oracle. All rights reserved.

77

堅牢性!

dittoブロック(ditto: 〃)

• 1ドライブでcopies=3 • ノートPCなど

Application FS Data Data Data

MetaData MetaData MetaData MetaData

Data MetaData Data MetaData Data MetaData

一部のセクタが破損 しても持ちこたえる

(容量はその分必要)

MetaData

Copyright© 2011, Oracle. All rights reserved.

78

堅牢性!

RAID構成時のdittoブロック

• RAID 1でcopies=3

Application FS

Data Data Data

Data MetaData Data MetaData Data MetaData

MetaData MetaData MetaData MetaData

Data MetaData Data MetaData Data MetaData

MetaData

Copyright© 2011, Oracle. All rights reserved.

MetaData

79

堅牢性!

サポートするRAIDレベル D

• RAID 0 • RAID 1(+0) • RAID-Z (+0)

D1

• RAID-Z2 (+0)

• RAID-Z3 (+0) • トリプルパリティ • Solaris 10 9/10-

D4

D1 D1 D2 D2

        c1t0d0 c1t1d0 c1t2d0 c1t3d0

• RAID 5の拡張 • シングルパリティ • RAID-6の拡張 • ダブルパリティ

D2 D3

D         c1t0d0 c1t1d0 c1t2d0 c1t3d0

Storage Pool

Storage Pool

RAID 0

RAID 1(+0)

D D11 D12

P

  c1t0d0

D P

D21 D22

  c1t5d0

  c1t3d0

    c1t1d0 c1t2d0

  c1t4d0

Storage Pool

RAID-Z(+0)

D1 D2 D3 P1 P2

... ...

    c1t0d0 c1t2d0   c1t1d0

  c1t3d0   c1t3d0

Storage Pool

RAID-Z2(+0)

• RAID 5/6とZ/Z2の違いは後ほど.. Copyright© 2011, Oracle. All rights reserved.

80

堅牢性!

トリプルパリティRAID-Z (RAID-Z3) (Solaris 10 では 9/10から対応)

• ディスク3本の障害に耐性 (業界初) • ディスク2本障害後のresilver時にリードエラー発生時も同様 • ドライブ容量増はresilver時間増を伴いこうした可能性も増加 • ダブルパリティを越える冗長性が求められる場面に適用

• より大容量、高速、「低」信頼ドライブを使用可能に • 昨今のHDDは容量の30-40%がECC • ディスク管理情報書き換えで以下のようなことが実現できる可能性 • ドライブあたり30-40%使用可能量増加 • ドライブあたり30-40%の帯域 18 HDD 1 group 可用性考慮 • I/Oエラー検知・修正はZFSに任せる RAID-Z 17D+1P 6x (2D+P)

Copyright© 2011, Oracle. All rights reserved.

RAID-Z2 16D+2P

2x (7D+2P)

RAID-Z3 15D+3P

1x (15D+3P)

81

堅牢性!

暗号化ZFS (現在 Solaris 11 Express 2010.11 のみ対応)

• データの内容秘匿のため暗号化鍵でコード化 • データ暗号化鍵はラップ用鍵で暗号化される

• これまでどおりの ZFS 管理モデルに統合 • 既存プールでも利用可能 • プールバージョンを30以上にする必要あり

• 鍵管理の権限委譲が可能 • 管理者、エンドユーザー、ゾーン • 「鍵使用」と「鍵変更」の分掌

• ZFS のデータセット単位で暗号化ポリシーを設定 • データセット作成時にのみ設定可 • 現在 AES-128 / 192 / 256 をサポート、他方式もサポート可能なデザイン • デフォルトでは aes-128-ccm Copyright© 2011, Oracle. All rights reserved.

82

機能

ZFS機能

• 既存ファイルシステムの問題点 • 基本機能が少ない • 欲しい機能が無かったり、高価で導入できないことも

• ...ZFSでは? • スナップショット、リモートコピー、圧縮、ファイル共有

Copyright© 2011, Oracle. All rights reserved.

83

機能!

全ての機能が追加ライセンス費不要

• • • • • • • • • •

スナップショット クローン バックアップ・リストア snapshot リモートコピー uber-block NFS iSCSI CIFS (Solaris 10はSamba経由) 圧縮 重複排除 (Solaris 10 は非対応) 暗号化 (Solaris 11 Express 2010.11のみ)

original uber-block

Current Data

• 機能については後ほどじっくり.. Copyright© 2011, Oracle. All rights reserved.

84

性能

ZFS性能

• 既存ファイルシステムの問題点 • 堅牢性との両立が難しい

• ...ZFSでは?

Copyright© 2011, Oracle. All rights reserved.

85

性能!

堅牢性追求から一工夫

• 堅牢性追求 • そのままの実装では性能劣化が心配..

• でも性能も追求 • 既存ファイルシステム同等の性能

Copyright© 2011, Oracle. All rights reserved.

86

性能!

書き込み時コピーでの工夫

• 必ず元データを残し新規にブロック確保 • ランダム書き込み • 複数 • 細かい • →シーケンシャル書き込みにまとめる (Write Sequentialization)

元データ

Copyright© 2011, Oracle. All rights reserved.

87

性能!

差分へのアクセス

• 通常データと同コストでアクセス可能

snapshot uber-block

Copyright© 2011, Oracle. All rights reserved.

original uber-block

88

性能?

read-modify-write: RAID 5/6の問題点(1) 新データ

3

1

計算

新Parity

2

3

1

旧Parity

旧データ

ストライプ - ストライプ幅固定 - 同じブロックに上書き

• ストライプ幅固定 • →「ストライプの一部」を更新する場面が多い 1.旧データと旧パリティを読む 2.新パリティの計算 旧データ、新データ、旧パリティから 3.新データと新パリティをディスクに書き込む ●

Copyright© 2011, Oracle. All rights reserved.

89

性能

RAID 5/6でのフルストライプライト 新データ

3 上書き

計算

旧データ

2

新Parity

3 旧Parity

ストライプ - ストライプ幅固定 - 同じブロックに上書き

• ストライプ幅固定でも • →たまたまストライプ全体に更新が及ぶ場合 1.(読み込み待ち不要) 2.新パリティの計算

全書き込みが こうだと うれしいのだが..

     新データ    から 3.新データと新パリティを同じ箇所に上書き ●

Copyright© 2011, Oracle. All rights reserved.

90

性能!

RAID-Z/Z2: read-modify-writeの排除 新データ

3

計算

新Parity

3 旧Parity

旧データ 新データ

2

ストライプ

新Parity

• ストライプ幅可変で全てフルストライプライト

- ストライプ幅可変 - フルストライプライト - 同じブロックへの  上書き無

• →「ストライプの一部」を更新する場面が無い 1.(読み込み待ち不要) 2.新パリティの計算    新データ     から 3.新データと新パリティを別の箇所に書き込む ●

Copyright© 2011, Oracle. All rights reserved.

91

性能と堅牢性!

ストライプ幅自動調節でフルストライプライト

• RAID 5/6とRAID-Z/Z2の違い

HDD1 HDD2 HDD3 HDD4 HDD5

書き込む ブロックサイズ (512B-128KB) によって伸縮

大きな 書き込み

LBA (Logical Block Address)

P0

D0

D2

D4

D6

0

P1

D1

D3

D5

D7

1

P0

D0

D1

D2

P0

2

D0

D1

D2

P0

D0

3

P0

D0

D4

D8

D11

4

P1

D1

D5

D9

D12

5

P2

D2

D6

D10 D13

6

P3

D3

D7

P0

D0

7

D1

D2

D3

X

P0

8

D0

D1

X

. . .

小さな書き込み

:

ストライプ幅自動調節 Copyright© 2011, Oracle. All rights reserved.

92

堅牢性?

write-hole: RAID-5/6の問題点(2) (1) Data1-4が正常に 書き込み終了

Data1 Data2 Data3 Data4 Parity (3)パリティーは書き終わっ ていないのでデータと パリティーの不整合が 起こってしまう。

(2) 電源が突然落ちた

write hole(データとパリティーの不整合)に よるデータ損傷の可能性がある ※ H/W RAIDストレージでバッテリを搭載すれば電源障害から データを保護でき、write holeを回避可能だが、 高価になってしまう面もある

Copyright© 2011, Oracle. All rights reserved.

93

堅牢性!

write-holeの排除: RAID-Z/RAID-Z2 (2) Data1-4,Parityを 書き込み中

Data1 Data2 Data3 Data4 Parity (1) 別のブロック確保

(3) 電源が突然落ちた

(4)Copy-On-Writeなので、いつ電源が落ちても - 古いデータでData,Parityが完全に書かれている - 新しいデータでData,Parityが完全に書かれている のどちらか → write-holeは起きない

Copyright© 2011, Oracle. All rights reserved.

94

性能と堅牢性!

高速なRAID再同期 (resilver (resync,rebuild,reconstruct)) • ディスク障害時のオンライン再同期処理 • 通常のRAID管理ソフトウェア • ZFS • ディスクのどこが使用中か 認識できない • ドライブ全体に及ぶ再同期

• ディスクのどこが使用中か認識されている • 使用中部分のみで最小限のアクセスで再同期 •

メタデータをたどりつつチェックサムも確認し silent data corruptionを修復



一時障害の際は実行されなかった トランザクション分のみの修復で完了



uberblockからトップダウンに修復 • 2 HDD目の故障・修復時に1 HDD目の 修復完了分までが正データとして使える

• RAID管理とファイルシステムが統合されている利点 • 冗長性が低くなっている時間を短くできる可能性大

使用中 未使用

再同期

再同期 使用中 未使用

Copyright© 2011, Oracle. All rights reserved.

× 95

拡張性と性能!

領域管理: スペースマップ • 通常のファイルシステム • ビットマップ • 管理領域サイズが スケールしにくい • 1PB で 4GB とか • 分割管理で対処 • ランダムな領域解放に弱い • worst case で 4GB解放に 2M回 I/O • B-ツリーでのエクステント管理 • エクステント: offset, size • 確保は非常に速い • ランダムな領域解放が問題

• メモリでためてから解放など

• ZFS: スペースマップ • 領域割当と解放の時系列ログが そのままフリー領域を示す • ログはディスクとメモリで保持 • 領域割当時にログをメモリ内の AVLツリー (フリー領域を保持、 offset でソート) に適用 • 適宜コンパクト化 • 初期化不要 • スケーラビリティ • ランダムな確保・解放にも強い • 高ディスク容量使用率時にも スキャンが遅くならない

Copyright© 2011, Oracle. All rights reserved.

96

性能!

さらに性能の追求(1) !

• 入出力のパイプライン処理 • 依存性と優先順位に基づき入出力ソート

• トランザクションの任意順処理 • ディスク動作を最適化可能

• インテリジェントな先読み

!

• アクセス分析と隣接ブロック先読み • readdir()の後はstat()が来る、など、 ! ファイルシステムがI/Oも制御しているため可能

• 並列処理

!

• 並列ディレクトリ処理 • 同一ファイルへの並列読み書き

!

• 各モジュールがスケーラビリティを意識 • ストライプ数増加による性能向上 Copyright© 2011, Oracle. All rights reserved.

97

性能!

さらに性能の追求(2) • 組み込み型のデータ圧縮 • 入出力必要数量削減

• キャッシュ機構 • 読み込みキャッシュ • ARC (Adaptive Replacement Cache) • L2ARC (2nd Level ARC)

• Flash (SSD等)に置くことが可能 • ハードディスクより高速 • 物理メモリより安価 • Solaris 10は10/09から

• ログ機構 • 書き込みログ(ZIL: ZFS Intent Log)

• Flash (SSD等)に置くことが可能 Copyright© 2011, Oracle. All rights reserved.

98

性能!

ARC/L2ARC ZFS キャッシュ必要時 他アプリのメモリ要求で必要時

1回きりの大きな シーケンシャルリードは キャッシュされにくくなる 徐々にMFU側が 大きくなっていく 1回きりの大きな シーケンシャルリードは MFUにヒットしない

MRU Ghost ヒット時

MFU Ghost ヒット時

キャッシュ: ARC

あふれたらGhostへ 使われない限り このように流れる

MRU Ghost

あふれたらGhostへ

4

3

2

1

MostRecentlyUsed

1

2

3

4

MostFrequentlyUsed

L2ARC

使われない限り このように流れる

MFU Ghost

L2ARC Copyright© 2011, Oracle. All rights reserved.

99

性能!

Hybrid ストレージプール

• デバイスの価格、速度、容量をバランスよく • DRAM • Flash(SSD) • HDD

Copyright© 2011, Oracle. All rights reserved.

100

性能!

SSDのデバイス特性

DRAM

Copyright© 2011, Oracle. All rights reserved.

SSD

HDD

101

性能と管理性!

SSDの使いどころ

Copyright© 2011, Oracle. All rights reserved.

102

性能!

Hybridストレージプールの性能測定(例) Sun Fire X4450 • 4x Xeon 7350 プロセッサ (計16コア) • 32GB DDR2 ECC DRAM • ZFS on Solaris •

構成 A:

構成 B: 1x 32G SSD ZILデバイス 1x 80G SSD L2ARCデバイス

7x 146GB 10,000 RPM SAS ドライブ

SSD無しのストレージ プール

5x 400GB 4200 RPM SATAドライブ

SSD有りのストレージ プール

Copyright© 2011, Oracle. All rights reserved.

103

性能!

Hybridストレージプールの性能効果(例)

SSD無し vs. SSD有り 構成 A: SSD無しのストレージプール (DRAM + 7x 10K RPM SAS) 構成 B: SSD有りのストレージプール (DRAM + Read SSD + Log SSD + 5x 4200 RPM SATA)

x3.2

x2 +11%

読込IOPs

書込IOPs

x1/2 Raw 容量 (TB)

TBあたり コスト

x1/4.9 消費電力 (ワット)

• SSD利用でコスト面も優位 • 大規模構成時のコストメリットが特に期待できる Copyright© 2011, Oracle. All rights reserved.

104

性能と堅牢性!

Flash (SSD)使用時の信頼性

• SSDの冗長構成が可能 • 読込SSD全故障: 単なるキャッシュミス扱い • 書込SSD全故障: 一次キャッシュ中のコピー使用 同期書込時 書込内容

この矢印全体が 1トランザクション

通常時

電源障害後 Copyright© 2011, Oracle. All rights reserved.

105

管理性

ZFS管理性

• 既存ファイルシステムの問題点 • 管理が面倒 • 使うコマンドも多い

• ...ZFSでは?

Copyright© 2011, Oracle. All rights reserved.

106

管理性!

管理コマンド

• zpool • プール関連処理

• zfs • ファイルシステム関連処理

• .. 2個だけ!

Copyright© 2011, Oracle. All rights reserved.

107

管理性!

Web GUI (Solaris 10)

Copyright© 2011, Oracle. All rights reserved.

108

管理性!

ファイルシステム作成手順 / (root)

1.プールにストレージを登録 zpool create tank cXtXdX ... 2.プールから ファイルシステム切出 zfs create tank/home 3. (省略可) 属性値設定 zfs set = tank/home • 3ステップで構成可能 • /etc/vfstab書き換え不要 • /etc/dfs/dfstab書き換え不要

opt

usr

tank home

作成時に 自動でマウント

home

ZFS  

 

 

Storage Pool: tank

Copyright© 2011, Oracle. All rights reserved.

109

管理性!

属性値

• 容量予約 • 容量制限 • ファイルシステム単位 • 加えてユーザー、グループ単位(Solaris 10 10/09-)

• • • •

マウントポイント NFS 共有の設定 圧縮の有効化(lzjb, gzip-[1-9]) 重複排除、暗号化 ZFS

user1用 ファイルシステムの 容量を 1GB以内に制限

user2用 ファイルシステムの 容量を 5GB分確保

Storage Pool

属性値はディスクに書かれる Copyright© 2011, Oracle. All rights reserved.

110

拡張性と管理性と性能!

ZFS 圧縮、暗号化、重複排除の共存 ZFS

読み込み時

書き込み時

ZPL ZPL DMU DMU SPA

• 圧縮 • 暗号化 • チェックサム (重複判定)

ARC ARC

• 圧縮解除 • 複号化 • チェックサム確認

ZIO ZIO VDEV VDEV

VDEV VDEV

... Copyright© 2011, Oracle. All rights reserved.

... 111

管理性!

ファイルシステム

• ディレクトリのように操作できる • ユーザーやプロジェクトごとに 個別ファイルシステムを作成 • きめ細かい管理を実現 16-20 □□ 11-15 △△ 1-10 ○○

StoragePool

Copyright© 2011, Oracle. All rights reserved.

112

管理性!

さらなる管理性

• 対応アーキテクチャ

移行元サーバ

export

移行先サーバ

import

SANなど • SPARC、x86/x64 • フォーマットや エンディアンの 心配不要 • エクスポート、 Storage Pool インポート • あるアーキテクチャのマシンで構築したプールを 他アーキテクチャのマシンに接続可能

• 優れた拡張性や堅牢性 • 多くの管理作業を不要のものにしている

Copyright© 2011, Oracle. All rights reserved.

113

ZFS 機能活用編

ZFSの便利な機能

Copyright© 2011, Oracle. All rights reserved.

114

ZFS の便利な機能 • • • • • • • •

ネットワークストレージ共有機能 スナップショット クローン プロモーション リモートコピー(send / receive) 容量予約、容量制限、圧縮 device replace export / import

Copyright© 2011, Oracle. All rights reserved.

115

ネットワークストレージ共有機能

ネットワークストレージ共有機能 ヘテロ環境への導入を柔軟にサポート Linux

Solaris

UNIX

NFS iSCSI

NFS iSCSI

NFS iSCSI

ZFS CIFS iSCSI

リモート コピー

NFS iSCSI

Windows Server

OSイメージサーバー

Copyright© 2011, Oracle. All rights reserved.

Backup Server

116

スナップショット

スナップショット

• 任意時点でのファイルシステムの論理的複製 • 書き込み不可

• • • •

作成時点ではディスク容量を消費しない 作成所用時間は容量と無関係 オリジナル変更時は変更前データを退避 任意時点のスナップショットにロールバック可 Read Write Read Write

• 仕組み オリジナル

a

スナップ ショット

b

b’

プール

(1)スナップショット作成

スナップ ショット

オリジナル

a

b

プール

(2)オリジナルのbをb’に変更

Copyright© 2011, Oracle. All rights reserved.

117

スナップショット

容量が増えても作成は一瞬 snapshot

original

1.スナップショット作成時点 Copyright© 2011, Oracle. All rights reserved.

118

スナップショット

スナップショット(続き) snapshot

original

2.オリジナルへの書き込み後 Copyright© 2011, Oracle. All rights reserved.

119

クローン

クローン • スナップショットから作成された複製 • 書き込み可

• 作成時点では容量を消費しない • 作成所要時間は容量と無関係 • クローンに対する書き込み分だけ容量を消費

• 仕組み

オリジナル

Read Write Read Write

スナップ ショット

a

クローン

オリジナル

b

b’

プール

(1)クローン作成

Read Write

スナップ ショット

クローン

a

c

b

プール

(2)クローンへの書込後

Copyright© 2011, Oracle. All rights reserved.

120

クローン

スナップショットとクローンの関係(1) clone

original

snapshot

1.クローン作成時点 Copyright© 2011, Oracle. All rights reserved.

121

クローン

スナップショットとクローンの関係(2) clone

original

snapshot

2.クローンへの書き込み後 Copyright© 2011, Oracle. All rights reserved.

122

プロモーション

プロモーション

• クローンとオリジナルの依存関係を交換

主 オリジナル



クローン

差分管理

差分管理

交換 従

クローン

オリジナル

Copyright© 2011, Oracle. All rights reserved.



123

プロモーション

プロモーション適用例

• クローン作成元のオリジナルを削除可能 • 例 差分管理 オリジナル

10GB

クローン 1

テストで2GB書き換え

クローン 2

テストで1GB書き換え

クローン 3

テストで5GB書き換え 今後はこれをベースとしたい

• 「クローン3」を今後使用することに決定 • 「オリジナル」は不要に • 「オリジナル」を削除して容量を節約したい

• プロモーションで依存関係を交換 • 元「オリジナル」が削除できる • クローン1, 2は「クローン3」がオリジナルに Copyright© 2011, Oracle. All rights reserved.

124

リモートコピー

(リモート)コピー (send/recv) • スナップショットを 別のZFSにコピー • ネットワーク経由の リモートコピー可 • ブロック単位での 増分検出 • 増分データのみの 転送が可能 • x86/x64 – SPARC間での コピーも可能

業務サーバ

バックアップ サーバ

a

a

snap1 フルバックアップ

b aab

a snap1 ab

差分データb のみを転送

増分データ 合成

snap2

Copyright© 2011, Oracle. All rights reserved.

125

リモートコピー

send/recv応用例 • 各曜日でスナップショット作成 • ブロック単位の差分を 業務オフピーク時に バックアップサーバーへ 日次転送 • バックアップサーバー側で 増分データを合成 →最新フルバックアップ データ、途中のスナップ ショットが常に存在

業務サーバ

バックアップサーバ

月曜日 火曜日 水曜日

各曜日の増分 データを転送

木曜日 金曜日

増分データを合成し、 常に最新の フルバックアップ イメージ

土曜日 日曜日

Copyright© 2011, Oracle. All rights reserved.

126

容量予約、容量制限、圧縮

容量予約、容量制限、圧縮

• 容量予約 • ファイルシステムやボリュームの容量確保 (確保時容量消費しない)

• 容量制限 (いわゆるクォータ) • ファイルシステム単位 • 加えてユーザー、グループ単位 (Solaris 10 10/09-)

• 圧縮 • lzjb, gzip-[1-9] • LZJB, GZIP-2, GZIP(-6), GZIP-9 (Sun ZFSストレージアプライアンス) ←高速 高圧縮→ ZFS

user1用 ファイルシステムの 容量を 1GB以内に制限

user2用 ファイルシステムの 容量を 5GB分確保

Storage Pool

Copyright© 2011, Oracle. All rights reserved.

127

device replace

Device Replace

• • • •

プール内ディスクの再配置 他プールのデバイスとの入れ替えは不可 データが入っている状態で実行可能 サービスI/O無停止で実行可

c2t2d0

c2t3d0

StoragePool

Copyright© 2011, Oracle. All rights reserved.

128

device replace

Device Replaceを応用したデータ移行

• 新規ストレージ導入時のデータ移行など

サーバ

SAN

移行元ストレージ

移行先ストレージ Device Replace

StoragePool

Copyright© 2011, Oracle. All rights reserved.

129

export / import

プールの Export / Import

• LANフリーバックアップやサーバ移行に • x86/x64 – SPARC間でのexport/importも可能 サーバ移行

LANフリーバックアップ 業務サーバ

バックアップサーバ

移行元サーバ

import

export

import

export

SAN

Storage Pool

移行先サーバ

SAN

Storage Pool

アレイベースのコピー機能

Copyright© 2011, Oracle. All rights reserved.

Storage Pool

130

ZFS 機能活用編

ZFSの活用

Copyright© 2011, Oracle. All rights reserved.

131

ZFSの活用

Sun ZFS ストレージアプライアンス (ZFSSA)

• Unified Storage / Sun ZFS Storage 7000 • Solaris ベースの NAS ヘッド • オープンアーキテクチャ 7120 • データ形式、プロトコル (NFS, FTP, WebDAV, iSCSI, CIFS, FC, 〜120TB InfiniBand, NDMP, ..) • オープンソースソフトウェア採用 • 他 NFS NAS からの容易な移行機能 (shadow migration) • コストパフォーマンス • ZFS と Flash (SSD) • Hybridストレージプール • DTrace Analytics • リアルタイム • システム性能確認 • 容量プランニング • 課題特定 Copyright© 2011, Oracle. All rights reserved.

7320 〜192TB

7420 〜1152TB (〜432TB/rack)

DTrace Analytics

132

ZFSの活用

Sun ZFS ストレージアプライアンスの特長 • ストレージ・システムを簡単に分析、最適化 • ビジネスへの影響を最小化する迅速な 診断・トラブルの解決・課題の解消 • インストールとストレージ構成を素早く • Hybridストレージプール技術とFlash(SSD) を使って、性能が容量とともにスケール • 発展するアプリケーション環境と ストレージ要求を適合させる • 拡張性、堅牢性、多機能、性能、管理性を 低コストで実現

Copyright© 2011, Oracle. All rights reserved.

133

ZFSの活用

Sun Storage 7410性能実測参考値 Workload NFS streaming read from DRAM NFS streaming read from disk NFS streaming write to disk NFS 4k read IOPS from DRAM NFS 512b reads from L2ARC NFS 512b sync writes to SLOG

Results 〜3.06 GB/s 2.03 GB/s 932 MB/s 404,000 IOPS 128-260 us 137-181 us

Hybridストレージプールが提供する優れた性能 • • • •

SS7410 (1head: 4x 6Core, 256GB, 8x JBOD(mirror), 2x dual 10GbE, 3x HBA) ワークロードにより、より良い性能が出る場合があります。 これらは公式な性能値ではなく、参考値です。 より詳細かつ多くのテスト • http://blogs.sun.com/brendan Copyright© 2011, Oracle. All rights reserved.

134

ZFS の活用

応用例1: ヘテロ環境での大規模統合共有ストレージ ・メールデータの保存 ・オフィスファイルの保存 ・画像データの保存 ・データマイニング等の計算データ保存 Solaris Linux Windows

NFS/iSCSI/CIFS/FC

・大規模ファイルシステムを簡単に構築可能 ・GB単価が安いディスクを使用可能 ・SSDをファイルシステムの二次キャッシュと  して使用できファイルシステムの入出力が  HDDのみで構築した場合に比べ高速になる

オンラインでのJBOD追加や ディスクドライブ追加 ローカルサーバー

Pool オンライン 拡張

メイン SnapShot

リモートレプリケー ション機能で大規模 ファイルシステムの データのバックアップ も簡単に実現

コピー

リモートサーバー 128ビット ファイルシステム

JBODの追加

Copyright© 2011, Oracle. All rights reserved.

135

ZFS の活用

応用例2: スナップショットでの過去ファイル共有

・過去に取得したスナップショット  イメージをリードオンリーで別マウント  ポイントでサーバに対し再共有可能。

ユーザA ユーザA用 過去データ置き場

消したファイルを 自分で発見!

管理端末

無くしたデータは各自 ユーザーが過去データ 置き場からコピー(復旧) する運用ルールで管理 者は手間いらず!

再共有すべき 過去スナップショットを指示

ファイル サーバー

メイン

Snapshot SnapshotSnapshot

誤ってファイルを消去! 月曜

火曜 三日前

水曜

木曜

金曜

土曜

一週間前

Copyright© 2011, Oracle. All rights reserved.

日曜

一ヶ月前

一ヶ月前

136

ZFS の活用

応用例3: レプリケーションによるバックアップ ・レプリケーション機能(非同期・差分更新)でD2Dバックアップを簡単に実現 ・必要であればバックアップサーバ等と連携を行うことで  テープメディアにデータのバックアップを取ることも可能 障害時はマウント先の ストレージを切り替える ことで迅速に対処可能

差分更新に対応しているの で大規模データのバック アップも初期時のフルコ ピー以降は差分データのみ の転送でOK

ローカルサーバー データ1 SnapShot

データ2 SnapShot

スナップショット 一括転送型 差分更新対応

コピー1 SnapShot

リモートサーバー1 コピー2

Backup Server

筐体間の主副関係を入

リモートサーバー2 れ替えて他サーバーの 受け口となる事も可能 コピー3

データ3 SnapShot

リモートサーバー3 Copyright© 2011, Oracle. All rights reserved.

137

ZFS の活用

応用例4: レプリケーションによるDR ソリューショ ・レプリケーション機能はIPベースでの非同期コピーの為、既存のサイト間 ン  ネットワークを利用して、災害対策システムの構築が可能

災害対策データセンター

メインデータセンター

メインサーバー データ1 SnapShot

データ2 SnapShot

IP/VLAN スナップショット 一括転送型 差分更新対応

災対サーバー コピー1

コピー2 データ3 データ4

Copyright© 2011, Oracle. All rights reserved.

138

ZFS の活用

応用例5: コンテンツサーバーソリューション

• コンテンツ配信の様々な箇所に適用可能 • コンテンツサーバー プロキシサーバー キャッシュサーバー

• 増え続けるコンテンツを格納 • ZFSの拡張性

メモリ

キャッシュ SSD

• 自動最適化キャッシング • ZFSのキャッシュ機構、 ファイル ディスク Storage Pool Hybridストレージプール • high-hits / long-tailを管理者が認識しなくてよい Hybirdストレージ プール • ファイルの一部分のみというキャッシングも可能

• ディスクアクセスパターンで先読み、並行処理 • ストライプ数増加によるスケーラビリティ Copyright© 2011, Oracle. All rights reserved.

139

ZFS の活用

ZFS 活用事例: 株式会社インターネットイニシアティブ(IIJ)様

• Storage 7410 によるクラウド用ストレージサービス • 採用ポイント • 各顧客に独立した容量をスムーズに シンプロビジョニング可能 • 保守性、信頼性、直感的な管理ツール、 Flash による比較的安価な性能拡張、 手離れの良さといった トータルな価格対容量比 • 既存システムとの統合 (作り込みと自動化)の容易性 • 「クラウドの向こう側」のユーザーが ストレージにかける負荷を分析して 性能や容量のプランニングに活用

Copyright© 2011, Oracle. All rights reserved.

140

ZFS 機能活用編

ZFS + 仮想化

Copyright© 2011, Oracle. All rights reserved.

141

ZFS + 仮想化

ZFS: 仮想化の強力なストレージインフラ

• 仮想マシン/仮想OS (またはそのイメージ) の • • • • • • • • •

(大量一括)高速作成、配備 シンプロビジョニング スナップショット・ロールバック 自動圧縮 重複排除 ストレージのRAID化 オンラインストレージ容量拡張 Flashの自動最適使用 共有ディスクプロビジョニング

• • • • • • •

リモートコピー ブロック単位差分バックアップ 包括的管理・監視ツール 強力なデータ保護 他ホストへの移動 HA 動的リソース配分

• Oracle Solaris コンテナ、Oracle VM Server for SPARC, Oracle VM Server for x86, Oracle VM VirtualBox, VMware, Xen Copyright© 2011, Oracle. All rights reserved.

142

ZFS + 仮想化

開発用途への「ZFS + 仮想化」

• 作ったり壊したりテストしたりを繰り返す開発用途にも最適 • • • • • •

複雑な環境でも何度も高速に作成可能 環境やプログラムなどをスナップショット時点に戻せる 大量にコピーしても容量消費は極小 繰り返しのテストにも有益 無償ツールでも開発や検証が行える など

• → 時間節約、リソース節約、費用節約

Copyright© 2011, Oracle. All rights reserved.

143

ZFS + 仮想化

仮想環境の高速作成、配備

• 従来のサービス追加方式 • 既存

• 新規追加

サービス1

サービス1

• ZFS+仮想化によるサービス追加

• zfs clone

• 既存仮想環境 • 仮想環境2 • 仮想環境3 サービス1 サービス1 サービス1

ZFSクローン機能で プロビジョニングが 即座に完了 クローン: 仮想環境のコピー 圧縮/重複排除: パッチ適用時の 使用容量節減、など使い分け

Copyright© 2011, Oracle. All rights reserved.

144

ZFS + 仮想化

仮想環境のHA / 他ホストへの移動

• HW障害時、定期メンテナンス時 • 環境1

• 環境2

サービス1

サービス1



• リソース不足時 •

共有ストレージ



ホスト 1

• 環境1

サービス1

• 環境2 サービス2



ホスト2

• 環境2

• 環境3

サービス2

サービス3

共有ストレージ

Copyright© 2011, Oracle. All rights reserved.

145

ZFS + 仮想化

仮想環境の他ホストへのコピー / 移動

• 別のサーバに仮想環境を丸ごと他ホストにコピー / 移動 • ZFSのクローンやリモートコピーとの連携で さらなる高速化・低消費容量 サーバA

サーバB 起動 仮想環境1 サービス1

仮想環境 イメージ

仮想環境1 サービス1

エクスポート / デタッチ

仮想環境 イメージ

インポート / アタッチ

コピー

Copyright© 2011, Oracle. All rights reserved.

146

ZFS + 仮想化

応用例1: サーバー仮想化環境での共有ストレージ ・OSイメージサーバー用共有ストレージとして活用 HA / 簡易HA / マイグレーション VM1

VM3

VM5

VM2

VM4

VM6

NFS iSCSI

VM7

VM5

Virus Scanning Active Directory Server Server

共有ストレージ Backup Server

Copyright© 2011, Oracle. All rights reserved.

147

ZFS + 仮想化

応用例 2: VDIによるデスクトップ仮想化

・Oracle Virtual Desktop InfrastructureとZFSの組み合わせで 低コストでの仮想デスクトップソリューションを構築 Sun Ray シンクライアント IP Network

Windows

Windows

Windows

Linux

Linux

Windows

Windows

Linux

Linux

Solaris

Windows

Windows

Linux

Linux

Solaris

OSイメージサービス

ストレージ ネットワーク

ストレージ サーバー

クライアント 端末 ユーザ環境

データセンター

Copyright© 2011, Oracle. All rights reserved.

仮想マシンのデータは 全てZFSに格納

148

ZFS + 仮想化

応用例 3: SAP Minimized Downtime Solution • ZFS のclone 機能で現行本番環境を複製 • 運用したまま、少所要時間、少容量

• 現行本番環境は切替までread onlyで使用 • →ダウンタイムの最小化 • https://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/u/9759

zone01

現行本番zone

現行本番zone

現行本番zone

本番切り替え

SAP Oracle

SAP Oracle

SAP Oracle

zfs promote

新本番zone

zfs clone zone02

SAP Oracle

実体化

SAP Oracle

Copyright© 2011, Oracle. All rights reserved.

新本番zone アップグレード

SAP Oracle

149

ZFS + 仮想化

応用例 4: 本番/ステージング/テスト/開発 物理的な移行

Web

Dev1

DB02Dev1 Dev

App

Dev2

DB02Dev2

detach attach

Web

clone

App DB サーバ1

Test DB 仮想環境 から 5つコピーを 作成する

DB01Dev1

DB

WebTest Test

AppTest DB02Test DB01Test

DBStage Stage

DB02Test DB01Prod

Prod サーバ1

Copyright© 2011, Oracle. All rights reserved.

DBProd DB02Prod 150

ZFS + 仮想化

ZFS + 仮想化活用事例: 某ソリューションプロバイダ様



SAPサポートソリューション

・SAP on Zone 論理構成

• SAP仮想化/統合化環境を実現 (SAP Solution Manager 本番、テスト、開発、 SAP Web Dispatcher、 SAProuter) ✔

サーバー台数の削減により、初期HW費用、 設置費用、運用コスト、消費電力の圧縮 →データセンターのグリーン化への貢献



仮想化のためのソフトウェアの追加費用無

・ハードウェア構成



パフォーマンスオーバーヘッド極小

障害が起こった場合は手動切り替え前提



柔軟なリソース配分



簡易HAによる、可用性向上 (メンテナンス、障害時には、NodeAから NodeBにZoneを移動して継続使用)



ZFS クローンでテスト環境複製が 50 分に 短縮 (以前は丸1日以上がかり)



ZFSスナップショットで瞬時にバックアップ取得



短時間クローン、瞬時スナップショット、圧縮を 追加費用無しで実現可能

Rev. Proxy Server

SAP router

SolMan 本番

空き

Solaris 10 Global Zone

Rev. Proxy Server

SolMan  4.0 router  本番 SAP

SolMan  4.0 開発/検証

Solaris 10 Global Zone

Sun Fire X4150 Quad Core Intel Xeon 2.33GHz 1CPU, 8GBMemory

Sun Fire X4150 Quad Core Intel Xeon 2.33GHz 1CPU, 8GBMemory

Sun StorageTek 2540 FC • 1500GB (300GB 15000 回転SAS ディスクドライブ x 5) • RAID コントローラ (512MB キャッシュ) x 1

Copyright© 2011, Oracle. All rights reserved.

151

ZFS 機能活用編

ZFS x Oracle

Copyright© 2011, Oracle. All rights reserved.

152

ZFS x Oracle

ストレージ統合

Sun ZFSストレージでストレージコストを30%削減

シンプル

複雑性の排除 Oracle SAP Peoplesoft MS/Exchange Sharepoint OVM VMWare . . .

リスク排除と生産性向上

 複数のITアーキテクチャにまたがるストレージ管理が簡単に  ポイント&クリックによる配備、データ保護、DTrace Analytics  Shadow Data Migration機能によりリスクを削減しての迅速な実働配備

スピード

ビジネスの加速

アプリケーション配備の加速    

同時に複数プロトコルによる共有 (FC, iSCSI, NFS, CIFS, IB, HTTP, FTP) 複数データサービス (圧縮、重複排除、高速スナップショット/クローン、レプリケーション、等) ハイブリッド・ストレージ・プールがデータ置き場所を自動で決定 (DRAM, Flash, HDD) DTrace Analytics が管理性の向上を可能にする

節約

ストレージコスト削減

ストレージ統合による費用と資産保有コストの削減

 容量の効率利用で使用率とTCOを削減  統合インフラが消費電力と空調費用を削減  優れた価格対性能・容量比で導入コストの削減

“Unified Storageはティア2用 ストレージソリューションだと 考えられていたが、今やデータ センターの SANストレージの 置き換えにまでなっている。” FutureGov, 2010年6月

Copyright© 2011, Oracle. All rights reserved.

153

ZFS x Oracle

仮想化環境への価値追加 シンプル

複雑性の排除

リスク排除と生産性向上

Oracle SAP Peoplesoft MS/Exchange Sharepoint File Sharing Content Mgmt Streaming . . .

 複数のITアーキテクチャにまたがるストレージ管理が簡単に  データ保護とストレージ効率化機能が管理をシンプルに  Oracle VM, VMware, Hyper-V による検証とテスト

スピード

ビジネスの加速

ストレージシステムとしての絶妙なデザイン

 ハイブリッド・ストレージ・プールが仮想マシンストレージ I/O性能加速  DTrace Analyticsが仮想マシンストレージの管理性を向上させる  仮想化環境内の統合を通じてストレージのアジリティ向上

節約

ストレージコスト削減 (-30%)

ストレージ統合による費用と資産保有コストの削減

 容量の効率利用で使用率とTCOを削減  統合インフラが消費電力と空調費用を削減  高コスト効果コンポーネントの採用で導入コスト削減

Copyright© 2011, Oracle. All rights reserved.

154

ZFS x Oracle

コスト効果の高いバックアップストレージで ビジネス継続性向上

クライアント

ビジネス促進要因

クライアントクライアント クライアント

-リスクを削減し生産性を向上 -長期的なリテンション(データマイニング) -バックアップウィンドウの短縮 バックアップ ソフトウェアによる メディア管理

コアとなる製品の要件 -高可用アーキテクチャ -スケーラブル、複数階層ソリューション -データ移動ソフトウェア (インテリジェントな アプリケーション) -サービス (移行、スクリプト化、等) Sun ZFS ストレージ アプライアンス

Sun ZFS ストレージアプライアンス テープ ライブラリ

災害対策 サイトへ

一次ディスク

-多機能なデータサービス -組込圧縮機能でバックアップウィンドウ短縮 -ターゲットソリューション向けの スクリプトとワークフロー

ターゲットディスク 災害対策サイト

Copyright© 2011, Oracle. All rights reserved.

155

ZFS x Oracle

Oracle データベースへの価値追加

Database

+ x

Copyright© 2011, Oracle. All rights reserved.

= ?! Sun ZFS ストレージ アプライアンス

156

ZFS x Oracle

Oracle データベース統合

Oracle Enterprise Manager Grid Controller

エンタープライズ向け監視/管理機構

 包括的ダッシュボードビュー - 一目で確認可能  ストレージ分析情報表示の中央リポジトリ  データベースの構成、ハードウェア、ネットワーク 操作や可用性分析  ストレージプラットフォーム用として  インストールされたプラグインによる情報収集  リアルタイムに情報がリポジトリに格納される

Sun x86 サーバー

Sun x86 サーバー

Oracle RAC データベース

Oracle RAC データベース

Oracle Enterprise Manager サーバー

DBAは Oracle DB の分析情報 を確認

•Sun ZFSストレージアプライアンス用として  データはDTrace AnalyticsとFMAに収集される  S7000とOEMGCでデータが共有される  キャッシュ利用率と性能測定  アラートの詳細  DBAとストレージ管理者の協力を可能にする

Copyright© 2011, Oracle. All rights reserved.

Sun ZFS ストレージ アプライアンス

157

ZFS x Oracle

RMAN によるバックアップの価値追加 • コスト効果の高い 高性能 D2D ターゲット

Oracle データベース RMAN

ディスク バックアップ

• ZFSの圧縮機能により さらなるバックアップ/ リストア時間の短縮 • データベースサーバーのCPUを RMAN の圧縮による負荷から開放

• 災害時復旧用の レプリケーション機構を 実装可能 一次ディスク アレイ

Sun ZFS ストレージアプライアンス Oracle RMAN ターゲット

• データベースに格納されない データを複製することで Data Guard を補完

Oracle RMAN データ保護のベストプラクティスとシームレスに統合

Copyright© 2011, Oracle. All rights reserved.

158

ZFS x Oracle

スナップショット/クローンによる Data Guard の DR コピー有効活用

一次サイト

二次サイト DBホスト1

DBホスト2

Oracle Data Guard

• 既存の Data Guard 環境に単に追加 するだけでよい • スクリプトやワークフローで自動化 • 運用環境の仕上げ

開発 テスト

QA

Copyright© 2011, Oracle. All rights reserved.

159

ZFS x Oracle

Fusion Middleware 11g 製品群の 共通基盤ストレージ

Sun ZFS ストレージ アプライアンス

Copyright© 2011, Oracle. All rights reserved.

160

ZFS x Oracle

Oracle Optimized Solution for WebLogic Suite + Sun ZFS ストレージアプライアンス

Sun ZFS ストレージ アプライアンス

10x 10GbE接続 2x 10GbE接続 Copyright© 2011, Oracle. All rights reserved.

161

ZFS x Oracle

Oracle Exalogic Elastic Cloud アプリケーショングリッド、OS、統合管理 + サーバー、ストレージ No.1 パフォーマンス Appサーバー

No.1 データグリッド

Oracle Enterprise Manager

Solaris and/or Linux and/or 高速JVM + GC制御 + Flight Recording Sun ZFS Storage 7320相当

ネットワーク処理最適化

}

最適化 オープン 高密度 スタンダード ※ Full Rack構成時

Copyright© 2011, Oracle. All rights reserved.

162

ZFS x Oracle

ZFS Storage Appliances Solution Fusion Middleware に DR の価値を追加 Webホスト1

Appホスト2

Appホスト1

Webホスト1

Appホスト2

Appホスト1

バイナリ、設定データ、 メタデータをレプリケーション DBホスト2

DBホスト2

Oracle Data Guard

• •

DB外に格納されているデータを複製することで Data Guard 環境を 完成させる ZFSストレージとData Guard双方のフェイルオーバー/フェイルバックが 調和良く組み合わされ自動化される Copyright© 2011, Oracle. All rights reserved.

163

ZFS 機能活用編

ZFS 事例集

Copyright© 2011, Oracle. All rights reserved.

164

ZFS 事例

某食品業社様 VTLソリューション

• 構成 • X4500 (RAID-Z2)+NetVaultで安価なVTLソリューション

• ZFS選定理由 • 他VTLと比較して劇的に安価 • RAID-Z2による冗長化 • パフォーマンス検証 • VTL の特性はシーケンシャルread/writeベース • RAID-Z/RAID-Z2にて性能要件を満たせた

Copyright© 2011, Oracle. All rights reserved.

165

ZFS 事例

某製造業者様 社内向けNFSサーバー • ZFS選定理由

• 構成 • X4500 x1 • クライアントは Linux、Solaris • テープドライブ(SL24) EBSでバックアップ • 選定時点でNBUは ZFSのACL未対応 • NBU6.5にてZFSの ACLに対応 • RAIDレベル • RAID-Z: 一時ファイル用 • ミラー: 通常ファイル用

• パフォーマンス要件 は無し • FC/NAS/X4500(ZFS)を比較 • X4500の優れた価格性能比 • 運用の容易さ • スナップショット機能 • 数回/日でスナップショット作 成、ユーザーに公開 • ユーザーのオペミスへの 管理者対応負荷が激減

Copyright© 2011, Oracle. All rights reserved.

166

ZFS 事例

某ISP様 ユーザーホームディレクトリサーバー

• 構成 • お客様向けNFSサーバー (ユーザーのホーム領域) • X4500 x 1 (RAID-Z)

• ZFS選定理由 • スナップショットの利便性

Copyright© 2011, Oracle. All rights reserved.

167

ZFS 事例

某サービスプロバイダ様 ファイルサーバー

• 構成 • X4500 x2 • webサーバー(T1000)のコンテンツを配置 • 2台のX4500間にてZFS機能で定期的に同期

• ZFS選定理由 • GB単価が安かった • 1000万以上のファイル数 • UFSではi-node が不足 • ZFSにて容量を有効活用できるようになった

Copyright© 2011, Oracle. All rights reserved.

168

ZFS 事例

某製造業者様 DWHソリューション

• 構成 • X4240 x2 • 本番 x2 (ミラー) • X4540 x4 • 本番 x2 (ミラー) • 開発 x1 (ミラー) • ロード、一次バックアップ用等 x1 (RAID-Z) • 販売データ解析

• ZFS選定理由 • 大容量データを扱うため • 性能検証にて他社ソリューションを圧倒

Copyright© 2011, Oracle. All rights reserved.

169

ZFS 事例

Sun ZFSストレージアプライアンス スピードアップ、簡素化、コスト削減 • 統合ストレージの再定義

全て業界初!

• エンタープライズ向けフラッシュ採用、Hybrid ストレージプール、Analytics、トリプルパリティ、 InfiniBand/FC/10GbEサポート、6Gb SAS、 5TB 読込キャッシュ、32コアコントローラ

• サンのストレージ製品で最速の立ち上がり • 出荷6ヶ月でストレージ・コストで47.5億円、 6,500人日のストレージ管理時間節減 • 多彩な業種で採用 • 発売60日で100を超える新パートナが契約

• 初期出荷から約 3 年で • 6000 以上のシステム、100PB 以上の容量、 2 億ドル以上の販売 Copyright© 2011, Oracle. All rights reserved.

170

ZFSSA 事例

株式会社ドワンゴ様   

2,200万人のユーザー、月間1億ページビュー

「ニコニコ動画」

その膨大な動画コンテンツを支える Sun ZFS Storage Appliance

■ 導入効果 ■ Ø 250TBを超える単一ボリューム容量(選定要件) Ø 統合SSDにより動画投稿の書き込み速度が向上 Ø 高機能の管理ツールによる柔軟な管理人員配置 Sun ZFS Storage 7420

Copyright© 2011, Oracle. All rights reserved.

171

株式会社ITコア様

ZFSSA 事例

クラウドサービス 「GrowServer2011」 400台の仮想サーバーのデータを保護する Sun ZFS Storage Appliance

■選定理由 ・自社ですべての構成の設定変更ができる。 ・無停止で追加や変更が可能で、顧客への サービスを中断しない。 ・「クラウドはパフォーマンスが命。迅速に問題点の把握と 解決を図るためには、ストレージの問題点をすぐに 把握できることが特に重要だった。」 ■導入後の効果 ・Disk の割り当てが容易でパフォーマンスが良く、 顧客が申し込んだ日のうちにサービス提供を実現 ・2 日必要としていたフルバックアップが、 わずか 4 時間で実現. Copyright© 2011, Oracle. All rights reserved.

Sun Storage 7310

172

ZFS 事例

Signature Styles

Malachi McCabe Manager Information Systems Signature Styles

“私たちの非構造化データファイルにおいて 73% もの圧縮率が実現できた。”

ビジネスの課題 デザインチームは膨大な量のデータを生成する ● 6 ベンダーからの 8 ストレージシステムに 8 件のサポート契約 ● 高価だが管理は難しい ●

ビジネスでの成果 ファイルや MySQL を S7410 クラスタに統合 ● Solarisのツールで20TBのデータを3日で簡単に移行 ● 性能向上 300% ● 空調コスト 30% 低減 ● スナップショット、クローン、レプリケーションでリカバリの大幅簡便化 ●

Copyright© 2011, Oracle. All rights reserved.

173

ZFS 事例

EasySpeedy

Peter Lerche Chief Executive Officer EasySpeedy

“Sun Open Storageへの感謝は, EasySpeedyが顧客ニーズに合うデータ・ストレージをコスト効率よく、 要求に応じてスケールできること。さらには、 その基盤が消費電力を最小限に、日々の管理の簡素化を 支援してくれる。”

ビジネスの課題 顧客データの柔軟性のあるストレージ・ソリューションの実現 ● 将来の成長を考慮する拡張性を確保 ● 格納するデータの費用対効果を最大化する ● 消費電力を最小にする ●

ビジネスでの成果 複数のプロトコルで素早い拡張性を実現 ● 独自ソリューションとベンダー・ロックインからの回避 ● 経費節減 ● エネルギー消費の縮小 ●

Copyright© 2011, Oracle. All rights reserved.

174

ZFS 事例

DigiTar

Jason Williams COO/CTO DigiTar

“Sun Storage 7000のようなOpenSolarisが搭載されるOpen Storage基盤はパワフルである。 我々から必要とするパフォーマンスと柔軟性を得るための考慮を手放しで開放してくれる。 Sun Storage 7000ソフトウェアはアレイ構築に時間がなくても、誰にでも拡張の意向があれば自由にできる。”

ビジネスの課題 高い演算命令実行回数/秒 (IOPs)、極めて小さいIOサイズ(平均8-15K)のストレージ・ニーズ ● 高価なクローズド・ストレージからの脱却 ● ストレージ・パフォーマンスの課題解決に要する時間削減に必要な可視性の改善 ●

ビジネスでの成果 使い易い、しかもパワフルな管理ツール ● パフォーマンスの向上 ● サービスの統合を通じてコストを節減 ●

Copyright© 2011, Oracle. All rights reserved.

175

ZFS 事例

お客様の声: i365 “データ保管・保持・開示のソフトウェア&サービス・プロバイダとして、 高い可用性と簡素で単刀直入な管理モデルを提供するSun 7000シリーズは とても魅力的で価値ある提案だと確信する。爽やかさを感じる。これまでの 見識でストレージの複雑さ解消したり化石的なストレージ技術を考えると...。” David Alen, Senior Vice President & CTO, i365, a Seagate Company

Copyright© 2011, Oracle. All rights reserved.

176

ZFS 事例

お客様の声: OurStage “サービス開始時、データの整合性と障害復旧を限られた予算で 実施するのがスタッフには特に問題だった。 Sun Storage 7000ユニファイドストレージ・システムの扱い易さと障害管理は この課題を小さくし、緻密なパッケージが適合した。結果、投資と テクニカル・トレーニングを抑えられた良いソリューションになった。” Mark Niedzielski, Infrastructure Manager, OurStage,Inc

Copyright© 2011, Oracle. All rights reserved.

177

ZFS 事例

ZFS 事例

• 国内事例

• 某製造業者様 • DWH • 大容量データ、圧倒的な性能

• 某食品業者様 • VTL ソリューション • 劇的に安価、冗長性、性能検証結果

• 某製造業者様 • 社内向けNFSサーバー • 価格性能比、容易な運用、 スナップショット

• 某 ISP 様

• 某大学様 • 会計システム (SAP) • 構築実績、検証結果

• 某ソリューションプロバイダ様 • SAPシステム • 検証実績、ソフトウェア費用

• 某ソリューションプロバイダ様 (前述)

• ユーザーホームディレクトリ • スナップショットの利便性

• 某サービスプロバイダ様 • ファイルサーバー • 価格、扱えるファイル数

• 某 SNS/ゲーム業者様 • ログ解析システム

• SAP サポートソリューション • 事例?! 自宅 ZFS サーバー自慢大会 • http://atnd.org/events/15878

• 海外事例 • Wikimedia, Internet Archive, Joyent, Oregon州立大学, Elanders, ETH Zurich • フランス国立核物理素粒子物理研究所, ..

Copyright© 2011, Oracle. All rights reserved.

178

ZFS 事例

ZFSSA 事例

• サンのストレージ製品で最速の 立ち上がり • 出荷6ヶ月でストレージ・コスト47.5億 円、6,500人日の ストレージ管理時間節減 • 多彩な業種で採用 • 発売60日で100を超える 新パートナが契約

• 国内事例

• 海外事例 • Signature Styles, EasySpeedy, DigiTar, i365, OurStage, Last.fm, ...

• Oracle 社内/社外向けシステム

7320

• 株式会社インターネットイニシアティブ様(前述) 7420 • 株式会社 IT コア様 (前述) • 株式会社ドワンゴ様 (前述) •

「ニコニコ動画」用ストレージ

• 某電機機器メーカー様 •

社内メールストレージ

• 某放送事業者様 •

放送データファイルサーバー

• 某データセンター事業者様

• 初期出荷から約 3 年で • 6000 以上のシステム、 100PB 以上の容量、 2 億ドル以上の販売

7120



InfiniBand対応クラウドストレージ

• Exalogic Elastic Cloud • ソフトバンクテレコム株式会社様 •

ホワイトクラウド エンタープライズ PaaS powered by Oracle

• Exadata D2D バックアップ •

某通信事業者様、SI様、教育サービス業様、証券会社 様、半導体メーカー様、自動車部品メーカー様、 課金請求書発行業者様、 金融業者様、製薬ソリューション業者様

Copyright© 2011, Oracle. All rights reserved.

179

まとめと参考情報

Copyright© 2011, Oracle. All rights reserved.

180

ZFS: 革新的ファイルシステム 管理性

機能

•極めて簡素

•プール構造 •ボリューム管理の統合

拡張性 •事実上無制限 •プール容量 •ファイル システム容量 •ファイル数

ZFS 1

ZFS 2

ZFS 3

性能 •Hybridストレージ プール •Read-modifywriteの排除 •入出力のパイプ ライン処理

•ディレクトリ数

堅牢性

•Copy-on-Write •トランザクショ ン処理 •End-to-End チェックサム

•スナップショット •リモートコピー •バックアップ •ファイル共有

Storage Pool

•自己修復

Copyright© 2011, Oracle. All rights reserved.

OS標準機能 オープンソース 181

ZFS: 広範なインフラ向けソリューションの 理想的なストレージ基盤 • 多くの機能を低コストで、多くの応用例、多くの事例 webインフラ ストラクチャ コンテンツ マネジメント

バックアップ データ プロテクション

デスクトップ統合 仮想化

ハイパフォーマンス コンピューティング

事業継続 災害対策

デスクトップ用 ファイルサービス/ インフラストラクチャ

NAS Eメールなど アーカイブ

クラウド コンピューティング / ストレージ

データベース DWH

Copyright© 2011, Oracle. All rights reserved.

182

まとめ • ZFS: 革新的ファイルシステム • ファイルシステムとして重要なポイントを網羅 • 拡張性、堅牢性、機能、性能、管理性

• ZFS: 広範なインフラ向けソリューションでの理想的な ストレージ基盤 • 多くの機能を低コストで • 多くの応用例、多くの事例

• OS 標準で使える • フル活用することで OS 自体も強力になっている

Copyright© 2011, Oracle. All rights reserved.

183

参考情報

ZFS 参考情報

• 参考情報リンク集 hiroa blog zfs

検索

からリンクしました!

• 解説記事、アーキテクチャ、ソースツアー、デモ、マニュアル、 構築時の参考情報、blog、事例、書籍

• Oracle Universityコース • Solaris 10 ZFS管理 (SA-2290-S10) • ZFSの機能、プールとファイルシステム管理、 スナップショットとクローンの操作、ACL、 トラブルシューティング

Copyright© 2011, Oracle. All rights reserved.

184

参考資料 (1) • 明日からでも使いたい次世代ファイルシステムノート • BigAdmin System Administration Portal PCでこそ使いたいZFS ZFS - Sunの最新ファイルシステム • http://www.atmarkit.co.jp/news/200706/29/ • ストレージの完全性、安全性、 zfs.html およびスケーラビティー • http://www.sun.com/bigadmin/hubs/ • Solaris ZFS集中講座 multilingual/japanese/content/ • http://www.atmarkit.co.jp/fserver/index/zfs.html zfs_part1.scalable.jsp • OpenSolaris でサーバ構築第4回 • 管理の簡素化と将来の拡張機能 一瞬でのバックアップを実現する • http://www.sun.com/bigadmin/hubs/ Solaris ZFS multilingual/japanese/content/ • http://www.atmarkit.co.jp/flinux/rensai/ zfs_part2_ease.jsp opensolaris04/opensolaris04a.html • OpenSolaris Community: ZFS • ZFS デモ • http://opensolaris.org/os/community/zfs • http://www.atmarkit.co.jp/news/200710/09/ solaris.html • ZFSソースツアー • http://jp.youtube.com/watch?v=N8eu06HNj1w • http://www.sun.com/bigadmin/hubs/ multilingual/japanese/content/zfs-source.jsp • http://jp.youtube.com/watch?v=1zw8V8g5eT0

hiroa blog zfs Copyright© 2011, Oracle. All rights reserved.

検索

からリンクしました! 185

• 事例

参考資料 (2)

hiroa blog zfs

検索

からリンクしました!

• http://wikitech-static.wikimedia.org/articles/z/f/s/Zfs.html • http://www.oracle.com/us/corporate/customers/060399.pdf • http://hepix.caspur.it/storage/hep_pdf/2007/Spring/zfsatdesy.pdf • http://blogs.sun.com/video/entry/ourstage_interview • http://www.oracle.com/us/corporate/customers/060413.pdf • http://sun.systemnews.com/articles/133/1/OpenStorage/21332 • http://www1.jp.dell.com/content/topics/segtopic.aspx/misc/seminars/OSS_seminar0901? c=jp&l=ja&s=gen • http://www.oracle.com/us/corporate/customers/customersearch/index.html?Keyword=zfs

• 構築時の参考情報 • http://www.solarisinternals.com/wiki/index.php/ZFS_for_Databases • http://www.solarisinternals.com/wiki/index.php/ZFS_Best_Practices_Guide • http://wikis.sun.com/display/BluePrints/Configuring+Sun+Storage+7000+Systems+for+Oracle+ Databases • http://wikis.sun.com/display/BluePrints/Best+Practices+for+Running+Oracle+Databases+in+ Solaris+Containers • 書籍『ZFS 仮想化されたファイルシステムの徹底活用』 Copyright© 2011, Oracle. All rights reserved.

186

Copyright© 2011, Oracle. All rights reserved.

Copyright© 2011, Oracle. All rights reserved.

188

188

ZFS-20111015.pdf

Whoops! There was a problem loading more pages. Whoops! There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. ZFS-20111015.pdf. ZFS-20111015.pdf. Open. Extract. Open with. Sign In. Main menu.

6MB Sizes 3 Downloads 182 Views

Recommend Documents

No documents