Brocade FCスイッチ ゾーニング設定ガイド

Brocade FCスイッチ
ゾーニング設定ガイド
はじめに
本資料はFabric OSが稼働するBrocade Fibre Channelスイッチのゾーニン
グについて理解するための参考資料として作成しています。
資料内に出てくるコマンド及び出力結果はFabric OS 7.2を元にしています
が、バージョンによっては結果が異なる場合があります。
詳細情報はFabric OS Command Reference及びAdministrator’s Guideをご
参照下さい。
資料内の推奨設定はBrocadeの見解であり、各ストレージベンダーで推奨
が異なっていることもあります。
サポートの観点上、ストレージベンダーの推奨に従って下さい。
Zoning
2
目次
• ゾーニングの基礎
• CLIによるゾーニング手順
• デフォルト ゾーニング
• WebToolsによるゾーニング手順
• ゾーン マージ
• Network Advisorによるゾーニング手順
• 特殊なゾーニング
• トラブルシュート他
Zoning
3
ゾーニングの基礎
Zoning
4
ゾーニングとは
ファブリック内のアクセスグループを構成する機能
• ゾーニング(Zoning)の目的
‒ Fabric内のNode間のアクセスを制御する機能
• 1つのFabricを論理的なアクセスグループに分割する機能
• Ethernet L2-SwitchにおけるVLAN(Virtual LAN)と似た機能
‒ セキュリティーの向上
•
他のデバイスによるストレージへのアクセスを制限することでデータの一貫
性を保証
‒ 障害伝搬範囲の低減
0
1
zone1
8
9
2
3
4
5
6
7
14
15
zone3
zone2
zone4
10
11
12
13
• RSCNやLIPの伝達範囲を、影響のあるゾーン内に制限
‒ RSCNはソフトウェア処理であるため、大規模環境では負荷が大きい
‒ 無関係なRSCNの受信を低減し、安定したデータI/Oを提供
Zoning
5
ゾーニング構築の大まかな流れ
• 事前準備
‒ ファブリックの詳細構成図の作成
• 定義
‒ 命名規則の決定
•
ゾーンメンバー、ゾーン定義の命名ルール
‒ メンバーの識別手段の決定
•
ポート(Domain,Index)、WWPN、WWNN のどれを使ってメンバーを識別するか
‒ ゾーンオブジェクト(エイリアス、ゾーン、ゾーンコンフィグ)の作成
• ゾーン設定のレビュー
‒ CLI、Network Advisor、WebTools、SAN Healthを使用
• ゾーン設定の有効化
• ゾーンメンバー間の通信の確認
Zoning
6
ゾーンオブジェクトの階層構造
• 3つのゾーンオブジェクト
‒ Alias
• ポートやpWWN, nWWNをAlias(別名 ex: Server_1,Disk_A)で定義
• 最大64文字まで
cfg
‒ Zone
(zone1;zone2)
• ゾーンに所属するメンバーを記述
• 単一のゾーンに3つ以上の複数のメンバーを登録可能
zone
(alias1;alias2;alias3)
• 同一メンバーは複数ゾーンに所属できる
‒ Zone configuration (もしくはzonesets)
alias
D,I
pWWN nWWN
• ファブリック内で有効化するZoneのグループ
• 複数の zone configuration (cfg) を作成できるが、有効化にできるのは一つの cfg のみ
Zoning
7
ゾーニングオブジェクト定義の流れ
• エイリアスを作成
‒ WWNやPortロケーション(Domain, Port number)に分かりやすい名前を付ける
• 必須ではないが、管理が容易になるのでエイリアスの使用を推奨
‒ alicreateコマンド alicreate “server_1”,”01:23:45:67:89:ab:cd:ef”
• ゾーン定義を作成
‒ アクセスさせるメンバーをまとめたゾーン定義を作成
•
メンバーの指定はエイリアスを使用
•
スイッチ間接続ポート(E_Port)は指定不要
‒ zonecreateコマンド zonecreate “sample_zone”,“server_2;storage_B”
• ゾーンコンフィグレーションを作成
‒ ゾーン定義を1つ以上含んだコンフィグレーションを作成
‒ cfgcreateコマンド crgcreate “sample_cfg”,”sample_zone1;sample_zone2;sample_zone3”
Zoning
8
ゾーニング管理方法(ツール)
• ゾーニングの設定、管理は下記の手段(ツール)を使用
操作方法
利点
必要機材
有償・無償
CLI
コマンド
ターミナルソフトのスクリプト等で大量設定が容易
ターミナルソフト
無償(標準機能)
WebTools
GUI
コマンドを覚える必要が無い
WWN等の入力間違いが少ない
Java環境、Webブラウザ
無償(標準機能)
GUI
WebToolsの利点に加え、BNAサーバにゾーンDBを保
持できる(有償版のみ)
下記の様な操作が可能
編集前後の差分比較
ゾーンDBの移行・マージ
有効ゾーンDBのロールバック
ゾーンDBのエクスポート・インポート
オフライン編集
ゾーニング設定のレポーティング
Windows/Linuxサーバ
BNAパッケージソフト
Brocade Network
Advisor
(BNA)
無償版、有償版
(ソフトウェア製品)
※無償版は機能制限有
有償版は75日の試用期間有
Zoning
9
ゾーンエイリアス
別名をつけてデバイス管理を簡単にする
• Alias(別名)はデバイスやデバイスのグ • Alias指定は以下の制約を持つ
ループに割り当てる名前
‒ 名前
• Aliasを作ることで、デバイスに分かりや
すい名前を付けたり、複数のデバイスを
一つの名前で扱うことができる
• 面倒なエントリーを簡略化したり、直感
的な名前空間を作ることができる
• Zone Aliasesはゾーンオブジェクトの繰
り返しの入力、たとえばPort WWNを簡
略化する
•
アルファベットから始まる
•
大文字、小文字を区別した英数字とアンダースコアのみ
•
最大64文字
‒ メンバー
•
Domain, Index (Indexはポート番号のこと)
•
Node World Wide Name
•
Port World Wide Name
‒ Node WWNがゾーンオブジェクトになった場合、
そのデバイスのすべてのポートがゾーンに含まれ
る
‒ Port WWNがゾーンオブジェクトになった場合、
当該ポートだけがゾーンに含まれる
Zoning
10
ゾーン設計
1イニシエーター1ゾーンが推奨
‒ Zoneに含めるメンバーは2つの方法で指定可能
•
WWN1
デバイスの固有名(WWN)で指定
‒ WWNゾーニング
•
LUN3
LUN2
LUN1
• Zoneのメンバー
DomainID:1
デバイスを接続するスイッチのポートで指定
0
• 推奨設計
イニシエータ(サーバHBA)のこと
•
複数のターゲット(ストレージ)を含んでも構わない
WWN2
1
LUN6
WWN3
2 3 4 5 6
7
zone3
zone2
zone1: (1,0;1,10)
zone2: (1,2;1,10;1,12)
zone3: (WWN1;WWN5)
8 9 10 11 12 13 14 15
WWN4
‒ 1つのZone内には1つのイニシエータのみ指定
•
LUN5
zone1
‒ Portゾーニング
‒ スイッチ間接続ポート(ISL)はメンバーに含めない
LUN4
LUN1
LUN2
LUN3
WWN5
LUN4
LUN5
LUN6
‒ 一つのメンバーを複数のZoneで指定可能
‒ 同一ファブリック内ではWWNかPortゾーニングで統一
•
WWNゾーニング、Portゾーニングの混在も可能だが推奨しない
Zoning
11
Portゾーニングの定義
Domain ID:2
• Domain,Index (D,I) の形式で指定
0
8
0
8
1
9
1
9
2
10
2
10
3
11
3
11
4
12
4
12
5
13
5
13
6
14
6
14
7
15
7
15
‒ Indexとはスイッチのポート番号のこと
‒ ダイレクタではスロット毎に同じポート番号が存在する
為、Indexはダイレクタ筐体全体におけるポートの通し
番号
• カスケードポートはメンバーに含めない
• デバイスを入れ替えてもゾーンの変更は不要
‒ サーバHBA,ストレージコントローラの交換保守等
Storage#A
Domain ID:1
Server#1
Server#2
Storage#B
Server#3
• デバイス接続ポート移動時にはゾーンの変更が必要
‒ FCスイッチのモデル変更、ポート保守等
以前はよく利用されていた定義方法だが、仮想環境などWWN
を使うケースが増えてきた現在ではWWNゾーンが推奨。Port
ゾーンはFICON環境など特定用途で使用する
Blue_Zone
Red_Zone
Green_Zone
1,10 ; 2,1
1,12 ; 2,4
1,14 ; 2,2
Server#1とServer#3のみがStorage#Aにアクセス可能
Server#2のみがStorage#Bにアクセス可能
Zoning
12
WWNゾーニングの定義
Domain ID:2
WWN_A1
• デバイスのWWNを指定
‒ pWWNとnWWNどちらでも可能
‒ pWWNを指定するのが一般的
• カスケードポートはメンバーに含めない
• 接続ポートを変更してもゾーンの変更は不要
‒ FCスイッチのモデル変更、ポート保守等
‒ 仮想サーバ(NPIV)デバイスのマイグレーション
• デバイスの入れ替え時にゾーンの変更が必要
‒ サーバHBA,ストレージコントローラの交換保守等
• ゾーンメンバ入れ替えコマンドの実装によりWWN
ゾーンの運用が容易になっている(FOS7.1以降)
• スイッチのポート構成に依存しないので移行が容易
WWN_A2
Storage#A
WWN_B
Domain ID:1
0
8
0
8
1
9
1
9
2
10
2
10
WWN_1
Server#1
WWN_2
3
11
3
11
4
12
4
12
5
13
5
13
6
14
6
14
7
15
7
15
Server#2
Storage#B
Blue_Zone
Red_Zone
Green_Zone
WWN_3
Server#3
WWN_1;WWN_A1
WWN_2;WWN_B
WWN_3;WWN_A2
Server#1とServer#3のみがStorage#Aにアクセス可能
Server#2のみがStorage#Bにアクセス可能
Zoning
13
ゾーンコンフィギュレーション
たくさんのゾーン定義をまとめて有効化する
• Zone Configurationは、有効にしたいゾーン定義の集合体
‒ ゾーン定義は複数のzone configurationに属することができる
‒ 複数のconfigurationを用意して用途毎に使い分ける(本番用、保守用等)
‒ Zone configurationを有効にすると、zone configurationに含まれる全てのゾーンが有効と
なる
• Defined configuration
‒ ファブリックで定義されたすべてのゾーンオブジェクト
• Effective configuration
‒ 今有効になっているzone configuration
‒ zone configurationを有効にした時点で形成される
B6510-01:FID128:admin> cfgshow
Defined configuration:
cfg: Smpl_cfg Zone_1
zone: zone_1 Svr_1; Stor_1
alias: Stor_1 50:0a:09:81:99:fb:8f:f9
alias: Stor_2 50:00:00:e0:da:81:38:30
alias: Svr_1 10:00:8c:7c:ff:08:f9:00
Effective configuration:
cfg: Smpl_cfg
zone: Zone_1 10:00:8c:7c:ff:08:f9:00
50:0a:09:81:99:fb:8f:f9
Zoning
14
ゾーン有効化の挙動
• ゾーンを有効にするには cfgenable コマンドを使用
‒ セーブコマンドで明示しなくてもゾーン設定がFlash memory
に保存される
‒ 電源投入、再起動時にも内容は保持される
• cfgenable Cfg_EngMkt を実行
①
Cfg_EngMktがEffective configurationになる
②
Defined configurationがFlash Memoryに保存される
③
有効化したゾーンコンフィグ名(“Cfg_EngMkt”)がFlash
Memoryに保存される
• 指定されたzone configurationは未定義なゾーン名、ゾー
ンの別名、その他の一貫性に誤りが無いかを確認される
Defined
configuration
Cfg_EngMkt
Zone_Eng
Zone_Mkt
Effective
configuration
①
②
Cfg_EngMkt
Zone_Eng
Zone_Mkt
③
RAM
Flash
Memory
• 失敗した場合、直前の状態が維持される(ゾーンが無効
か、直前に有効であったzone configurationが有効のまま
になる)
Zoning
15
ゾーン無効化の挙動
• ゾーンを無効にするには cfgdisable コマンドを使用
‒ ゾーンを無効にするとDefault Zoneで指定したアクセスポリ
シーが適用される (All Access / No Access)
• cfgdisable Cfg_EngMkt を実行
①
Effective configuration が無効化
②
Defined configurationがFlash Memoryに保存される
③
Effective configuration名が”none”としてFlash Memoryに保
存される
• 他のスイッチで編集中のゾーン設定(Transaction)は破棄
される
‒ cfgdisableを実行するスイッチで編集中の場合はFlash
Memoryに保存される
Defined
configuration
Effective
configuration
Cfg_EngMkt
Zone_Eng
Zone_Mkt
Cfg_EngMkt
Zone_Eng
Zone_Mkt
①
②
③
RAM
Flash
Memory
Zoning
16
ゾーン定義消去の挙動
• ゾーン定義をクリアにするには cfgclear コマンドを使用
‒ cfgclearコマンドを使うと、Defined configurationのゾーンオ
ブジェクトが削除される
‒ cfgdisableしていない状態(ゾーンが有効化したまま)では
cfgclearコマンドは実行できない
‒ cfgclearだけではFlash Memoryに何も保存されない
Defined
configuration
Effective
configuration
Cfg_EngMkt
Zone_Eng
Zone_Mkt
①
• cfgclear を実行
①
Defined configuration がRAMから クリアされる
• ゾーン定義を完全にクリアし、状態を保持するためには
下記の手順を実行する
1.
cfgdisable
RAM
Flash
Memory
2. cfgclear
3. cfgsave
Zoning
17
ゾーン設定保存の挙動
• 変更したゾーン設定を保存するには cfgsave コマンドを使用
‒ 変更したゾーン設定を保存してもそれらは有効にはならない
‒ 変更した設定を有効化するにはcfgenableを実行する
• cfgsave を実行
①
編集中の内容がDefined configurationに反映
②
Defined configurationがFlash Memoryに保存される
③
有効化したゾーンコンフィグ名(“Cfg_EngMkt”)がFlash Memoryに
保存される
• ゾーン設定が保存されると、Defined configurationおよびEffective
configurationがファブリックのすべてのスイッチのフラッシュメモ
リに書き込まれる
‒ 保存された設定は、電源投入時に呼び出される
Defined
configuration
Effective
configuration
Cfg_EngMkt
Zone_Eng
Zone_Mkt
Cfg_EngMkt
Zone_Eng
Zone_Mkt
xxxx
xxxx…..
①
②
③
RAM
Flash
Memory
• Cfgsaveコマンドは現在のトランザクションを終了しコミットする
• Defined configurationがサポートされているゾーンデータベースの
サイズを上回った場合、以下のメッセージが表示される
Commit zone DB larger than supported - <zone db size> greater than <max zone db size>
Zoning
18
Zoning 設定における注意事項
• Zone 設定はファブリック内に伝播する
‒ どこかのスイッチで行った変更は、全てのスイッチに自動的に伝播する
• トラフィックは中断しない
• Zone 更新はトランザクション処理
‒ ファブリック内で同時に複数箇所からZone変更はしない運用が望ましい
• トランザクションの矛盾が発生する可能性(設定保存時にワーニングで通知される)
• ZoneのメンバーはデバイスのWWNもしくはポートのみ指定
‒ ISLポートは含めない(ただし、Traffic Isolation Zoning等の特殊なZoningは除く)
Zoning
19
ゾーニングの設計まとめ
• LUNマスキングをする/しないに関わらず、ファブリックでゾーニング設定は必ず実施
• メンバー指定はpWWNで統一するのがセキュリティと操作の一貫性において推奨
• エイリアスを作成するとデバイスの特定が容易
• オブジェクトの名前は判りやすく、かつ最小限の文字数にする
• 1イニシエーターにつき1ゾーニングを定義(Single Inisiator Zoning)
‒ ターゲットは複数でもよい
FOS6.x
‒ DiskストレージとTapeストレージは別ゾーンに分ける
• default zoneはnoaccessを設定
• ゾーン設定するスイッチ
FOS7.x
エッジスイッチ
コアスイッチ
FOS7.x (最新)
‒ (エッジスイッチよりも)コアスイッチから実施した方が良い
‒ Fabric OSのバージョンの新しいスイッチから実施した方が良い
• ゾーン情報はconfiguploadコマンドでバックアップ
Zoning
20
Zone DBとトランザクション
• ゾーン情報は、スイッチ内でデータベース (Zoning DB)として保持され
ている
トランザクション
のロールバック
(cfgtransabort)
‒ cfgsizeコマンドでDBサイズを確認
•
v2.6.x,v3.1.xは96KB、v3.0.x, v4.0~4.2.xは128KB、v3.2.x, v4.4.x, v5.0~5.1.xは256KB
•
v5.2x以降,v6.x以降は1MB
‒ 複数のスイッチで構成されるファブリックのゾーンDBの最大値はDBサイズの
小さいFOSバージョンに合わせる
• ゾーンオブジェクトの作成・編集は、「トランザクション」として管理
される
• 以下のコマンド実行時にトランザクションは「コミット」される
エイリアス (alias) 作成
ゾーン (zone) 作成
コンフィグ (zone config) 作成
コンフィグ有効 (cfgenable)
‒ cfgenable/cfgdisable、cfgsave
•
コミット時にリモートスイッチとZoning DBを同期
トランザクションのコミット
‒ cfgtransshowコマンド
•
トランザクションIDと中止 (abort)可能かどうかを表示
‒ cfgtransabortコマンド
•
トランザクションを中止 (abort) = 「ロールバック」
Zoning
21
FOSv7.0.0と6.xの混在時の考慮点
• FOS v7.0.0が稼働するスイッチとv6.x以前のバージョンで稼働するス
イッチが混在する環境においてはパッチが適応されたバージョンへアッ
プグレードしておくこと
‒ パッチ未適応の場合、128KB以上のゾーンサイズを各スイッチに展開すること
が出来ない
‒ 以前存在したXPATH OS 7.0とリリース名が同じ7.0になってしまうため
• XPATH OSとはAP7420 FC Routing装置で稼働していたOS
‒ FOS v7.0.0のみ該当する不具合
‒ 各バージョンのリリースノートを参照
メジャーバージョン
パッチ適応バージョン
6.2
6.2.2d以降
6.3
6.3.2a以降
6.4
6.4.1以降
Zoning
22
ゾーニングの実装方法
Brocade スイッチはASICによるHardware Enforced
ゾーニングの構成
名称
ポート(D,P)のみ
Portゾーニング
pWWNのみ
WWNゾーニング
ポートとpWWN
Mixedゾーニング
• ゾーニングの実装方法
‒ Frame based hardware Enforcement
•
ASICが送信先ポートをチェックし、ゾーン定義されていない場合はフレームを破棄
•
Brocadeの推奨
•
Portゾーニング、WWNゾーニング、PortゾーニングとWWNゾーニングが重なっていな
い状態
‒ Session based hardware Enforcement
•
PLOGI (+ADISC/PDISC)セッションによる実装
•
Name Serverの情報を元にPLOGIセッションでアクセス制御
•
Mixedゾーニング、PortゾーニングとWWNゾーニングが重なっている状態
• 同一ファブリック内ではWWNかポートどちらかに統一
Mixed Zoning
WWN Zoning
Session Enforced
Frame Enforced
WWN1
(2,0)
0
1
2 3 4 5 6 7
Domain 2
8 9 10 11 12 13 14 15
(2,8)
(2,9)
portzoneshowコマンドで実装方法を確認可能
Switch:FID128:admin> portzoneshow
PORT: 0 (0) E-Port
PORT: 1 (1) F-Port Enforcement: SESSION BASED HARD defaultHard: 0 IFID: 0x43020005
PORT: 2 (2) F-Port Enforcement: HARD WWN defaultHard: 0 IFID: 0x43020002
WWN3
WWN2
WWN4
WWN5
(2,14)
(2,15)
Port Zoning
Frame Enforced
Port Zoning
WWN Zoning
Frame Enforced Session Enforced
Zoning
Frame Enforced
23
デフォルト ゾーニング
Zoning
24
Default Zoning
• Default Zoneは、「zoningが無効になっている場合」のデバイスアクセスを制御するポリシー
• defzone –allaccess により、全てのデバイスがアクセス可能
• defzone –noaccess
により、全てのデバイスで通信不可
• Default zoneはユーザーが定義したゾーン設定が無効な場合に効力を持つ
• Default zoneの機能はファブリック単位で設定により有効・無効にできる
‒ Default zoneはFC-GS (Fibre Channel – Generic Service) 標準に基づく
• defzoneコマンドはdefault zoneの設定と現在の設定の表示を行う
• Default zoneの設定はzoningのトランザクションバッファに保存される
‒ 通常、cfgsaveによりcommitされる
‒ Cfgenableあるいはcfgdisableもcfgsaveと同様にcommitを暗黙的に行う
‒ Cfgtransabortコマンドにより、defzoneコマンドの結果もアボートできる
Zoning
25
Default Zoning 設定例
B6510-01:FID128:admin> defzone --show
現在の設定を表示
Default Zone Access Mode
committed - All Access
transaction - No Transaction
アクセス禁止(no access)に変更
B6510-01:FID128:admin> defzone --noaccess
You are about to set the Default Zone access mode to No Access
Do you want to set the Default Zone access mode to No Access ? (yes, y, no, n): [no] y
B6510-01:FID128:admin> defzone --show
Default Zone Access Mode
committed - All Access
transaction - No Access
設定の保存
B6510-01:FID128:admin> cfgsave
You are about to save the Defined zoning configuration. This
action will only save the changes on Defined configuration.
Do you want to save the Defined zoning configuration only? (yes, y, no, n): [no] y
Updating flash ...
B6510-01:FID128:admin> defzone --show
Default Zone Access Mode
committed - No Access
transaction - No Transaction
Zoning
26
Default Zoning有効化
B6510-01:FID128:admin> cfgshow
Defined configuration:
cfg: smpl_cfg
途中省略
alias: svr_0 10:00:8c:7c:ff:08:f9:00
Effective configuration:
cfg: smpl_cfg
zone: smpl_zone
50:0a:09:81:99:fb:8f:f9
ゾーン定義・状態の表示
ユーザーが定義したゾーン設定が有効になっている
B6510-01:FID128:admin> cfgdisable
稼働中のゾーン設定を停止
途中省略
Effective configuration is empty. "No Access" default zone mode is ON.
B6510-01:FID128:admin> cfgshow
有効になっているゾーン設定は無いが、default zoneで設定
Defined configuration:
したNo Accessの状態になっている
途中省略
Effective configuration:
No Effective configuration: (No Access)
Zoning
27
Default Zone “noaccess”時のゾーンマージ
スイッチ同士のDefault Zoneの設定が異なった場合、FOS7.0以前と以降ではファブリックマージの挙動が異なる
SW1 (既存側)
Defzone状態
Zone設定
SW2(追加側)
Defzone状態
Zone設定
FOS7.0以前
の挙動
FOS7.0以降
の挙動
備 考
No Access
Zone Config
No Access
Empty
Zone conflict
Fabric 形成
Zone ConfigがSW2へマージ
No Access
Empty
No Access
Zone config
Zone conflict
Fabric 形成
Zone ConfigがSW1へマージ
Zone conflict
無停止でコンフリクトを解決す
るためにはDefzone を変更する
• SW1でNo Access (もしくは)
• SW2でAll Access
Zone conflict
無停止でコンフリクトを解決す
るためにはDefzone を変更する
• SW1でAll Access (もしくは)
• SW2でNo Access
All Access
No Access
Zone Config
Empty
No Access
All Access
Empty
Zone config
Zone conflict
Zone conflict
Zoning
28
ゾーン マージ
Zoning
29
ファブリックへスイッチ追加する
• スイッチが保持するゾーン情報がそれぞれ異なっている場合、正しくカ
スケード接続ができず、ファブリックのマージに失敗する
• ゾーンが有効になっているファブリックにスイッチを追加する場合は下
記の手順で行う
1.
追加するスイッチにゾーン設定が無いことを確認
• cfgdisable;cfgclear;cfgsaveを実行してクリアする
2. デフォルトゾーニングの設定を既存ファブリックと合わせておく
3. 既存ファブリックに追加スイッチを接続
4. 既存ファブリックからDefined/Effective configurationが追加スイッチへ伝播
する
Zoning
30
ゾーンが有効なファブリックのマージ
スイッチ(ファブリック)をマージする場合、それぞれでゾーン設定を保持、有効化していた場合、zoning conflict に
よる segmentation状態になる。マージするためにはゾーンオブジェクトを完全に同じ状態にしなければならない。
エラーメッセージ
記述内容
Configuration mismatch
二つのファブリックでゾーニングが有効になっていて、互いの
Effective configurationが異なる場合。
Type mismatch
同じ名前のオブジェクトが他方のゾーニング設定で違うタイプに
なっている場合に発生。
例:Fabric A: alias: Mkt_Host 1,16
Fabric B: zone: Mkt_Host 1,16
Content mismatch
互いのファブリックでオブジェクト名やタイプが同じでも、設定内
容が異なったり、順番が違っている場合に発生。
例:Fabric A: alias: Eng_Stor wwn2; wwn1
Fabric B: alias: Eng_Stor wwn1; wwn2
Zoning
31
Network Advisorによるゾーンマージ
BNAゾーンデータベース編集機能の活用
• Brocade Network Advisor (BNA)では複
数のファブリックのゾーンデータベー
スを保持することができる
‒ 保持したゾーンデータベースは比較、編
集が可能
‒ 二つのゾーンデータベースをマージし、
新たなゾーンデータベースをスイッチへ
展開することでファブリックマージする
際のゾーンデータベース不整合を回避で
きる
Zoning
32
特殊なゾーニング
Zoning
33
ゾーニングの種類
トラフィックを制御する特別なゾーニング
• Brocade FC Switchではデバイスのアクセス制御に定義するゾーニング
(Normal zone)の他にもトラフィックを制御する用途のゾーニングがある
‒ LSAN zone
• 独立したファブリック間をルーティングする論理SANを構成する
‒ Traffic Isolation zone (TI zone)
• 静的にISL経路を指定する
‒ QoS zone
• 特定のホストとターゲットの間のトラフィックに優先度を設定
※本資料はNormal zoneの説明を目的とする為、本章では他のゾーニングに関して紹介のみとする
Zoning
34
LSAN Zone
異なるファブリックのデバイス間で通信
• LSAN (Logical SAN)ゾーン
‒ 異なるセグメント間(ファブリック間)のデバイス同士の通信を
実現する
•
LANでいうL3ルーティングの様なもの
• pWWNゾーン定義することで通信を実現する
(要Integrated Routing ライセンス)
‒ 定義方法は通常のゾーンと同じだが、ゾーン定義名を”lsan_”で始
まる文字列にする(大文字可)
• 利用例
‒ 離隔地間のファブリックをマージせずに通信する災対ソリュー
ション
‒ 管理運用上(別システム、別組織など)ファブリックをマージさ
せない統合バックアップ
Zoning
35
Traffic Isolation Zone (TI Zone)
静的な経路指定手段
Backup
• ファブリック上に専用の経路を設定
‒ 通常のゾーン定義とは別定義
•
専用のzoneコマンドで指定
‒ 他のアプリケーションによる帯域消費の影響を防ぐ
‒ アプリケーションが必要とする帯域を確保する
‒ FCルーティング経路(LSAN)にも適応可能
‒ Fabric OS 6.0以降が動作する全ての製品でサポート
‒ オプションライセンスは不要
• 適用例
DataBase
Traffic Isolation専用のゾーン定義(TI Zone)を指定すると
特定のノード間通信で使用するISLを明示的に指定できる。
‒ Backup専用パス (赤)
‒ 専用のTrunkingやISL (E_Port)を指定し、経路を確保
‒ DataBase: TIゾーンの設定無し (黒)
‒ Backup用以外の経路を使用
Zoning
36
Traffic Isolation (続き)
• 導入における注意点等
‒ TI ZoneはDefined Configにのみ現れ、Effective Configには現れない
‒ TI ZoneにはE_PortおよびN_Portを必ず含める
‒ NL_Portはサポートしない
‒ {Domain, Index (≒port)}で設定
‒ Backboneファブリック (FC Routing環境)でTI Zoneを設定する場合は、ポート以外にinitiator/targetをpWWNで指
定
‒ TI Zoneの設定はCLIのみ (Web Toolsは不可)
‒ TI ZoneはRouting情報は変更しない
• サポート構成
‒ Fabric OS 6.0以上
‒ EX/VEX_PortはFabric OS 6.1でサポート
• Failover mode
‒ Enable: TI Zone内の最後のISLがオフライン時、同一コストの他のISLへフェールオーバー
‒ Disable: TI Zone内の最後のISLがオフライン時、他のISLへフェールオーバーしない
Zoning
37
QoS Zone
トラフィックに優先順位を決めてQoSを実現
• QoS Zone
‒ FCトラフィックの優先順位を指定する
ゾーニング
‒ 通常のゾーニングとして定義する
• ゾーン定義名は”QOSH_”, “QOSL_”から始まる文
字列にする
• ゾーンメンバーはWWNで指定する
‒ Fabric OS7.2.0以降は標準機能
• FOS7.2以前はAdaptive Networkingライセンス必要
Zoning
38
CLIによるゾーニング手順
Zoning
39
Zoning関係コマンド
Create
Delete
Add
Remove
Show
オブジェクト作成
オブジェクト削除
メンバー追加
メンバー削除
設定表示
Alias
aliCreate
aliDelete
aliAdd
aliRemove
aliShow
Zone
zoneCreate
zoneDelete
zoneAdd
zoneRemove
zoneShow
cfgCreate
cfgDelete
cfgAdd
cfgRemove
cfgShow
Config
オブジェクト内の
メンバー入替
オブジェクト名称変更
オブジェクトコピー
オブジェクト削除
zoneObjectRename
zoneObjectCopy
zoneObjectExpunge
(FOS7.1~)
Alias
zoneObjectReplace
Zone
Config
その他
-
Zone 設定の有効化
cfgEnable
Zone 設定の無効化
cfgDisable
Zone 設定の Flash への格納
cfgSave
Zone 設定のクリア
cfgClear
zonehelpでゾーニング関連コマンドが表示される
Zoning
40
CLIを使ったゾーニング設定例
• エイリアスの作成
admin> alicreate “Eng_Host”,”1,0”
admin> alicreate “Eng_Stor1”,”1,1”
admin> alicreate “Mkt_Host”,”10:00:8c:7c:ff:08:f9:00”
admin> alicreate “Mkt_Stor2”,”50:0a:09:81:99:fb:8f:f9”
admin> alicreate “Mkt_Stor3”,”50:00:00:e0:da:81:38:30”
Engineering
Host
Port 0
Storage1 Port 1
• ゾーン定義の作成
admin> zonecreate “Zone_Eng”,”Eng_Host; Eng_Stor1”
admin> zonecreate “Zone_Mkt”,”Mkt_Host; Mkt_Stor2; Mkt_Stor3”
• ゾーンコンフィギュレーションの作成
admin> cfgcreate “Cfg_EngMkt”,”Zone_Eng; Zone_Mkt”
Engineering
Host
Domain 1
Storage 1
複数のメンバーを指定するときは
セミコロン(;)で区切る
Marketing
Host
Storage 3
Storage 2
Marketing
Host WWN 10:00:8c:7c:ff:08:f9:00
Storage2WWN 50:0a:09:81:99:fb:8f:f9
Storage3WWN 50:00:00:e0:da:81:38:30
Zoning
41
CLIを使ったゾーニング設定例
• 現在の設定を確認
admin> cfgshow
Defined configuration:
cfg: Cfg_EngMkt
Zone_Eng; Zone_Mkt
zone: Zone_Eng
Eng_Host; Eng_Stor1
zone: Zone_Mkt
Mkt_Host; Mkt_Stor2; Mkt_Stor3
alias: Eng_Host 1,0
alias: Eng_Stor1 1,1
alias: Mkt_Host 10:00:8c:7c:ff:08:f9:00
alias: Mkt_Stor2 50:0a:09:81:99:fb:8f:f9
alias: Mkt_Stor3 50:00:00:e0:da:81:38:30
Effective configuration:
No Effective configuration: (No Access)
Engineering
Host
Port 0
Storage1 Port 1
Engineering
Host
Domain 1
Storage 1
Marketing
Host
Storage 3
Storage 2
Marketing
Host WWN 10:00:8c:7c:ff:08:f9:00
Storage2WWN 50:0a:09:81:99:fb:8f:f9
Storage3WWN 50:00:00:e0:da:81:38:30
まだゾーニングを有効にしていない為、No Effective のままになっている
Zoning
42
CLIを使ったゾーニング設定例
• ゾーンコンフィグを有効にする
admin> cfgenable Cfg_EngMkt
Engineering
Host
Port 0
Storage1 Port 1
You are about to enable a new zoning configuration.
途中省略
zone config "smpl_cfg" is in effect
Updating flash ...
admin> cfgshow
Defined configuration:
cfg: Cfg_EngMkt
Zone_Eng; Zone_Mkt
途中省略
alias: Mkt_Stor3 50:00:00:e0:da:81:38:30
Effective configuration:
cfg: Cfg_EngMkt
zone: Zone_Eng
1,0
1,1
zone: Zone_Mkt
10:00:8c:7c:ff:08:f9:00
50:0a:09:81:99:fb:8f:f9
50:00:00:e0:da:81:38:30
Engineering
Host
Domain 1
Storage 1
Marketing
Host
Storage 3
Storage 2
Marketing
Host WWN 10:00:8c:7c:ff:08:f9:00
Storage2WWN 50:0a:09:81:99:fb:8f:f9
Storage3WWN 50:00:00:e0:da:81:38:30
cfg_EmgMktが有効になっている
Zoning
43
ゾーンオブジェクトの操作コマンド
• ゾーンオブジェクト(エイリアス、ゾーン定義、ゾーンコンフィグ)に対して下記の操作コマンドが用意さ
れている
• zoneobjectcopy (オブジェクトのコピー)
‒ zoneobjectcopy “Cfg_EngMkt”,”Cfg_Test”
• zoneobjectrename (オブジェクトのリネーム)
‒ zoneobjectrename “Zone_Engg”,”Zone_Eng”
• zoneobjectexpunge(オブジェクトの削除)
‒ zoneobjectexpunge “Mkt_Host”
‒ 他のオブジェクトの中からも当該オブジェクトが削除される。例えば、エイリアスを削除した場合、このエイリア
スを使ったゾーン定義の中からも削除される
• zoneobjectreplace(オブジェクト内のメンバー入替)
‒ zoneobjectreplace “WWN_1” “WWN_2”
‒ FOS7.1からサポートされたコマンド、ゾーンデータベース内のオブジェクトメンバーを入れ替える
Zoning
44
ゾーニング関連コマンドの機能拡張
FOS7.1で実装されたゾーンメンバーの入れ替えコマンド
• zoneObjectReplaceコマンド
‒ ゾーンメンバー (WWN/Domain,Index)を、他のメンバーと置き換え
‒ Zone DB上のすべてのオブジェクトを置き換え
‒ TI Zoneなど特殊なゾーンは対象外
‒ 入替後に設定を有効にするには、cfgEnableコマンドを実行
B6510-01:FID128:admin> zoneshow
Defined configuration:
cfg: smpl_cfg
smpl_zone
zone: smpl_zone
stor_0; svr_0
alias: stor_0 50:0a:09:81:99:fb:8f:f9
alias: stor_1 50:00:00:e0:da:81:38:30
alias: svr_0 10:00:8c:7c:ff:08:f9:00
Effective configuration:
cfg: smpl_cfg
zone: smpl_zone
50:0a:09:81:99:fb:8f:f9
10:00:8c:7c:ff:08:f9:00
B6510-01:FID128:admin> zoneobjectreplace “50:0a:09:81:99:fb:8f:f9” “50:0a:09:81:99:fb:ab:cd”
B6510-01:FID128:admin> zoneshow
Defined configuration:
cfg: smpl_cfg
smpl_zone
zone: smpl_zone
stor_0; svr_0
alias: stor_0 50:0a:09:81:99:fb:ab:cd
alias: stor_1 50:00:00:e0:da:81:38:30
alias: svr_0 10:00:8c:7c:ff:08:f9:00
Effective configuration:
cfg: smpl_cfg
zone: smpl_zone
50:0a:09:81:99:fb:8f:f9
10:00:8c:7c:ff:08:f9:00
Zoning
45
ゾーニング関連コマンドの機能拡張
FOS7.1からAliasをワイルドカード指定可能
• Aliasにおけるワイルドカード (*)の使用
• zoneCreate/zoneRemoveコマンドなどで、Aliasをワイルドカード指定が可能
B6510-01:FID128:admin> zonecreate “new_zone”,”s*”
B6510-01:FID128:admin> zoneshow
Defined configuration:
cfg: smpl_cfg
smpl_zone
zone: new_zone
stor_0; stor_1; svr_0
zone: smpl_zone
stor_0; svr_0
alias: stor_0 50:0a:09:81:99:fb:8f:f9
alias: stor_1 50:00:00:e0:da:81:38:30
alias: svr_0 10:00:8c:7c:ff:08:f9:00
Zoning
46
ゾーン表示関連のコマンド
• nsaliasshow
‒ スイッチのネームサーバの表示情報(nsshow)にエイリアスの
情報を付加して表示
• nodefind <WWN | PID | Alias>
‒ WWN,PID,Aliasで指定したノードの情報を表示
• nszonemember –a
‒ オンラインのデバイスでゾーンのメンバーになっているデバ
イスのPIDとエイリアスを表示
admin> nsaliasshow
{
Type Pid COS
PortName
NodeName
TTL(sec)
N 011c00;
3;10:00:8c:7c:ff:07:d4:00;20:00:8c:7c:ff:07:d4:00; na
途中省略
LSAN: No
Aliases:
N 011d00;
3;10:00:8c:7c:ff:08:f9:00;20:00:8c:7c:ff:08:f9:00;
na
途中省略
LSAN: No
Aliases: svr_0
The Local Name Server has 4 entries }
• nszonemember –u
‒ オンラインのデバイスでゾーンのメンバーになっていないデ
バイスのPIDとエイリアスを表示
Zoning
47
ゾーニング関連コマンドの機能拡張
FOS7.1からトランザクションの差分情報表示
• zoneShow/cfgShowコマンド: 以下のオプションを追加
‒ -transdiffs: 実行中のトランザクション情報を含めて、ゾーン情報を表示
‒ -trasdiffsonly: 実行中のトランザクションがあるゾーン情報のみを表示
• 表記については以下の通り
‒ “*”: 変更が行われているゾーン (トランザクションが実行中)
‒ “+”: トランザクションで追加されたメンバー
‒ “-”: トランザクションで削除されたメンバー
B6510-01:FID128:admin> zoneshow --transdiffs
Defined configuration:
cfg: smpl_cfg
smpl_zone
*zone: +new_zone
stor_0; stor_1; svr_0
zone: smpl_zone
stor_0; svr_0
alias: stor_0 50:0a:09:81:99:fb:8f:f9
alias: stor_1 50:00:00:e0:da:81:38:30
alias: svr_0 10:00:8c:7c:ff:08:f9:00
B6510-01:FID128:admin> zoneshow --transdiffsonly
*zone: +new_zone
stor_0; stor_1; svr_0
Zoning
48
WebToolsによるゾーニング手順
Zoning
49
Zone Adminの起動
• WebToolsを起動し、メニューバーか
らZone Adminを起動する
‒ Configure > Zone Admin
※ WebTools起動方法については
Administrator’s Guide等、別の資料を参
照のこと
Zoning
50
Zone Admin画面
通常のゾーニングはBasic Zones
モードで操作する
Node WWN
メンバー追加
Port WWN
メンバー削除
他のスイッチのポートやオフライン
デバイス等、左側のSelection List
に表示されないものを追加
Zoning
51
エイリアスの作成
Alias tabを選択する
新規作成、削除、名前変更
作成後に編集する場合はプルダ
ウンで目的のエイリアスを選択
Zoning
52
ゾーンの作成
新規作成、削除、名前変更、コピー
Zone tabを選択する
作成したAliasを選択し、Zone
Memberに追加する
Zoning
53
ゾーンコンフィグの作成
新規作成、削除、名前変更、コピー
Zone Config tabを
選択する
作成したZoneを選択し、Zone Config
Memberに追加する
Zoning
54
ゾーンの有効化、設定保存、etc
ゾーン有効化、設定保存、設定全消去
Enable Config をクリックするとゾーンコ
ンフィグの選択画面が表示される。
有効にするコンフィグを選んでOKをク
リック
Zoning
55
Network Advisorによるゾーニング手順
Zoning
56
Zoning 画面の起動
1
• Network Advisorのメイン画面のツール
バーからZoning管理画面を起動する
‒ Configure > Zoning > Fabric
※ Network Advisorの入手、インストール、
起動方法についてはAdministrator’s Guide
やInstallation Guideを別途参照のこと
本章は有償版を基にしているため、無償版では一部使用で
きない機能がある
2
Zoning
57
Zoning管理画面
表示中のゾーンデータベース
スイッチ上のデータベースやBNAサーバに
保存されたデータベースを選択できる
設定対象のファブリックを選択
ゾーニング有効化
Alias, PID, WWNを選択
デフォルトゾーニング
設定
現在有効なオブジェクト
は緑のマークが付く
エイリアス エリア
ゾーン エリア
ゾーンコンフィグ
エリア
各オブジェクトの作成、編集
Zoning
58
エイリアスの作成
1
エイリアス名の入力
3 追加ボタンをクリック
New Aliasをクリックする
と別画面が表示される
2 エイリアスの対象になる
デバイスを選択
オフラインデバイスのWWNを直接入力して追加
4
OKボタンをクリックして設定完了
Zoning
59
ゾーンの作成
2
ゾーン名を入力
3
4
ゾーンを選択し
右クリックでメ
ニュー表示
ゾーンに追加したいメンバーを選択
(複数選択可)
1
新規ゾーンの作成
Zoning
60
ゾーンコンフィグの作成
2
ゾーンコンフィグ名の入力
3
ゾーンコンフィグに追
加するゾーンを選択
(複数選択可)
4
1
新規ゾーンコンフィグの作成
Zoning
61
ゾーンの有効化
有効化するゾーンコン
フィグを選択し、
Activateをクリックす
ると確認画面が開く
既存で有効なコンフィグとの差異が表示される
問題なければ、OKをクリックし、有効化
Zoning
62
有効なゾーンコンフィグの表示
Active Zone Configuration タブ選
択すると現在有効なゾーンコンフィ
グの表示画面になる
Zone Member Displayでは
・全メンバー表示
・オンライン(ログイン)メンバーのみ表示
・オフラインメンバーのみ表示
が選択可能
※オフラインメンバーの表示はWWNを手入力したと
きの記述間違いや取り外したデバイスの特定に便利
Zoning
63
ゾーンデータベースの比較・マージ
参照ゾーンDB
編集ゾーンDB
Zoning 画面右上のZone DB Operation
のプルダウンメニューからCompareを選ぶと
ゾーンDBの比較やマージができる
BNAサーバ上で編集するので運用中のシステ
ムに影響を与えない
※この画面から直接スイッチ上のゾーンDBを
上書きすることはできない
Zoning
64
トラブルシュート他
Zoning
65
ゾーンDBのバックアップ・リストア
• ゾーンDBをFCスイッチ外部に保存する手段
‒ FCスイッチ設定ファイルとして保存
•
configupload コマンド(CLI)、WebTools、BNA
‒ BNA Zoning画面でXMLファイルとしてエクスポート
•
‒ 改行コードや不要なキャラクタが挿入されトラ
ブルの原因になる
BNA有償版のみ
• ゾーンDBのリストア
‒ FCスイッチ設定ファイルのダウンロード
•
configdownload コマンド(CLI)、WebTools、BNA
•
1台のスイッチでファブリックを構成している場合の手段
•
スイッチ上にゾーン情報が存在する場合、設定ファイルの内
容と混在してしまうので、事前にスイッチ上の情報はクリア
しておくこと
‒ カスケード接続で他のスイッチから情報を伝播させる
•
• configファイルやエクスポートしたファイル
は編集せずに使用すること
2台以上のスイッチでファブリックを構成している場合の手段
‒ BNA Zoning画面でXMLファイルをインポート
configファイル内のゾーンDB例
[Zoning]
cfg.Cfg_EngMkt:Zone_Mkt;Zone_Eng
zone.Zone_Eng:Eng_Host;Eng_Stor1
zone.Zone_Mkt:Mkt_Host;Mkt_Stor2;Mkt_Stor3
alias.Eng_Host:1,28
alias.Eng_Stor1:1,1
alias.Mkt_Host:10:00:8c:7c:ff:08:f9:00
alias.Mkt_Stor2:50:0a:09:82:89:fb:8f:f9
alias.Mkt_Stor3:50:0a:09:82:99:fb:8f:f9
defzone:allaccess
enable:Cfg_EngMkt
Zoning
66
ゾーニングのトラブル例
ゾーニングトラブルあるある
• スイッチ1台のゾーンDBをクリアしようとしたら、カスケードしている他のスイッチの情報も全部
クリアされた・・・
‒ ゾーンDBはファブリック全体に伝播するので、当たり前の話ですが、ついうっかり陥るミス
•
作業前にconfiguploadでスイッチ情報のバックアップ
•
cfgsaveコマンドの実行は慎重に
• ゾーンを設定したのに、サーバからストレージが認識されない・・・
‒ サーバ、ストレージ側のLUNマスキング等の設定の確認も必要
‒ ゾーンメンバーの記述ミスに注意(特にWWN)
•
nszonemember –uやオフラインデバイスの確認
•
設定したゾーンをゾーンコンフィグに追加忘れに注意
‒ デバイスがファブリックに認識されていない(オンラインになっていない)
•
nsshow、switchshowでデバイスの存在を確認
•
fcpingコマンドによる疎通確認
Zoning
67
fcpingによるデバイス接続確認
fcpingはSANスイッチから
Source/Destinationデバイスに送信
• fcpingコマンド
‒ Fibre Channel ELS ECHOリクエストを発行
‒ 送信元とあて先をファイバチャネルアドレス (24ビット/3バイト)またはWWNで指定
‒ ゾーニングのチェックなどに有効
‒ ELS ECHOリクエストは、fcpingコマンドを発行したスイッチのEmbedded Port (SID =
0xFFFCxx, xx = domain id)から発行される
‒ fcpingコマンドを発行するスイッチは、source/destinationのいずれかを含むスイッチとする
ことを推奨
‒ 第三者となるスイッチから発行することも可能だが、送出されるリクエストは実際の経路と
異なる場合がある
‒ 全てのデバイスがELS ECHOに対応しているとは限らないので注意
Zoning
68
ありがとうございました
本件に関するお問い合わせ
ブロケード コミュニケーションズ システムズ株式会社
https://www.brocadejapan.com/form/contact