#02-02 ~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~...
-
Upload
solarisjpnight -
Category
Technology
-
view
1.200 -
download
0
description
Transcript of #02-02 ~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~...
1 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
~Solaris 11 をマルチ・プロトコル SCSI ターゲットに~
「もう一つのストレージ仮想化機能 “COMSTAR”概要」 日本オラクル株式会社システム事業統括ソリューション統括本部プロダクトマネジメント本部
シニアセールスコンサルタント 佐藤和幸
2 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。
OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。
文中の社名、商品名等は各社の商標または登録商標である場合があります。
3 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Program Agenda
• COMSTAR 概要
• iSCSIをつかってみよう
• VirtualBoxでiSCSIを使ってみる
• iSCSI における冗長化構成
4 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
COMSTAR 概要
5 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “ZFS”
スケールアウト指向の組み込まれたデータサービス
データ暗号化 重複排除 レプリケーション 圧縮 flash deviceと
組み合わせる
hybrid storage pool
重複排除で10倍の利用効率
チェックサムによるデータ破壊からの保護
仮想化されたストレージリソースを利用した高速なプロビジョニング
6 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• ホストをSCSIターゲットデバイスに • FibreChannel, Ethernet, InfiniBand を
利用してストレージを提供可能に
– iSCSI, iSER, FCoE, SRP など多数の
ストレージ・プロトコルをサポート
– Ethernet を利用した iSCSI Target を
構成するならば、追加コストなし
– ターゲットとして公開される領域にはZFS
を利用 (zvol)
マルチ・プロトコルSCSIターゲット機能
7 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• STMFが中核となり、下記のサービスを提供
– COMSTARの構成要素
• Logical-Unit Proveider(+ SCSI block device)
• Port Proveider (Target サービス)
• libstmfによる管理インターフェース
• これがCOMSTARのコアとなる実装
SCSI Target Mode Framework (STMF)
8 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• SCSI Logical-unitを構成するためのもの
– SCSI block deviceを作成し、SCSI LUとしてSTMF Frameworkに登録(Regist)する
• SCSI block deviceを作成するには、backing storeが必要に
– STMF Frameworkに登録されると、GUIDと呼ばれるユニークなIDが割り当てられる
– この割り当てられたGUIDを使ってTargetの結び付きを行う
LUを構成する Logical-unit Provider
# sbdadm list-lu
Found 2 LU(s)
GUID DATA SIZE SOURCE
-------------------------------- ------------------- ----------------
600144f00003ba12ba194bd6ec950001 21474836480 /dev/zvol/rdsk/rpool2/fct-volume.01
600144f00003ba12ba194bd7a0e10002 36417050624 /dev/rdsk/c0t1d0s0
9 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• 何らかのインターフェースを利用してtarget機能を提供する
– Ethernet (iSCSI)
– Fiber Channel (FC, FCoE)
– InifiniBand(iSER..)
– SAS(未サポート)
• STMF Frameworkを通してLogical-unit Providerと結び付く
• SCSIコマンドをLUに運ぶ役割を担う
• target毎に異なる管理コマンドで操作
SCSI Target機能を構成する Port Provider (SCSI Target Port)
10 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• STMF Frameworkを操作するためのAPI群
– Target作成コマンド(itadm, srptadm など)
– sbdadm/stmfadmコマンド
• Initiatorはlibstmfで提供されるAPIは利用していない
– iscsiadm コマンド等
– そのため、initiator自身はSTMFの影響を受けない
– Targetとの接続には、既存の方法がそのまま利用される
• COMSTAR特有の接続方法は必要なし
管理インターフェース - libstmf
11 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• stmfadmコマンド – STMF Frameworkを操作するコマンド
– backing storeからSCSI block deviceを作成しLogical-unitとしてSTMF
Frameworkに登録するためのコマンド
– Logical-unitの操作や、target/host group
の操作、Port Providerとの紐付けなど
$ stmfadm
使用法: stmfadm -?,-V,--help
使用法: stmfadm add-hg-member [-?]
使用法: stmfadm add-tg-member [-?]
使用法: stmfadm add-view [-?]
使用法: stmfadm create-hg [-?]
使用法: stmfadm create-tg [-?]
使用法: stmfadm create-lu [-?]
使用法: stmfadm delete-hg [-?]
使用法: stmfadm modify-lu [-?]
使用法: stmfadm delete-lu [-?]
使用法: stmfadm delete-tg [-?]
使用法: stmfadm import-lu [-?]
使用法: stmfadm list-hg [-?]
使用法: stmfadm list-lu [-?]
使用法: stmfadm list-state [-?]
使用法: stmfadm list-target [-?]
使用法: stmfadm list-tg [-?]
使用法: stmfadm list-view [-?]
使用法: stmfadm online-lu [-?]
使用法: stmfadm offline-lu [-?]
使用法: stmfadm online-target [-?]
使用法: stmfadm offline-target [-?]
使用法: stmfadm remove-hg-member [-?]
使用法: stmfadm remove-tg-member [-?]
使用法: stmfadm remove-view [-?]
管理インターフェース - stmfadm
12 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. © 2011 Oracle Corporation – Proprietary and Confidential
ストレージの仮想化機能 “COMSTAR”
Port Provider
LU Provider
libstmf
13 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• Oracle Solaris 11の動作するホストを用意
• パッケージのインストール – # pkg install storage-server
• サービスの有効化 – # svcadm enable stmf
• COMSTARによる SCSI ターゲットサービスが提供可能に – ソフトウェアによるフレームワークの実装であるため容易に導入可能
– 非大域ゾーンでは利用できません
COMSTARを利用するための準備
14 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Logical-unit providerの担当
• backing store を用意
• backing store を SCSI block
device へ変換
• stmfadmでSCSI clock deviceをSTMF Frameworkに登録し、Logical-unitに変身させる
• ここまでがLogical-unit provider
の担当
Port Providerの担当
• そして、Target の作成
• Logical-unit を紐づける Target を選定
• iSCSI, FC, Inifiniband など....
• Targetの作成
• iSCSI なら/usr/sbin/itadm
• SRPなら/usr/sbin/srptadm
ストレージの仮想化機能 “COMSTAR”
SCSIターゲットができるまでのまとめ
Initiator との接続
• Initiator から Target へ接続
• Target が利用するストレージプロトコルをサポートしているかを確認
• COMSTAR を考慮した特別な接続方法は必要ない
• 外部ディスクとして認識
• backing store とは
– 実データを格納するための入れ物
– 利用可能なものは、
– ディスク、スライス, raw/block device (zvol 含む), ファイル
15 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI
を使ってみよう
16 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSIとは?
• Small Computer System Interface (SCSI)
– コンピュータと機器を接続し、利用するための標準規格
• Sun Common SCSI Architecture (SCSA)
– Solarisに実装されるSCSIを扱うための共通アーキテクチャ
• ディスクを扱うために普通に利用している機能
– sd/ssd driverがSCSIプロトコルを使ってデバイスと会話
• Fibre Channel, iSCSI, Parallel SCSI, SAS, etc...
• Solarisは、このような機能をあらかじめ持っています
– 特に気にする必要はありません
17 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSIとは?
• Internet Small Computer System Interface (iSCSI)
– IETF IP Storageワーキンググループにて策定(RFC 3720)
• TCP/IPネットワーク経由にてSCSIコマンドを送信する通信プロトコル
– SCSIコマンドをTCP/IPパケットでカプセル化しデータ通信を実現
• ネットワーク上のストレージをローカルデバイスとして扱うことが可能に
iSCSIは通信プロトコルです
SCSI iSCSI TCP IP
Link PHY
IP
network
TCP/IPプロトコル
iSCSIプロトコル
SCSIプロトコル
SCSI
コマンド/データ SCSI
レスポンス/データ ストレージ
サーバ
SCSI iSCSI TCP IP
Link PHY
18 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI Bootとは?
– iSCSI Initiator
• SCSIコマンドを発行する役割を持つ
– iSCS Target
• Initiatorから発行されたコマンドを処理する役割持つ
– iSCSI Name (RFC 3721)
• ノード識別や管理の為に利用される名前。
– iSCSI Qualified Nameやiqnと呼ばれる
– iSCSI Initiator/Targetに割り当てられる名前
• 全世界で唯一であることが求められる
• iSCSIを利用するために押さえておくべき事柄
SCSI
コマンド/データ
SCSI
レスポンス/データ iSCSI Initiator iSCSI target
iSCSI Name: iqn.1986-03.com.intel:s10u9
IP
network
iSCSI Name:
iqn.1986-03.com.sun:02:760428f9-f1fc-ed2f-9102-bf0e4e27eeb9
• iSCSIを利用するために押さえておくべき事柄
19 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• COMSTARのインストールからLUの作成まで
例: iSCSI Target の作成
• iSCSI Targetの作成
# pkg install storage-server
# svcadm enable stmf
# zfs create -p -V 4g rpool/zvol/testVolume
# stmfadm create-lu /dev/zvol/rdsk/rpool/zvol/testVolume
Logical unit created: 600144F0080027E5D1964EE09C570001
# stmfadm add-view 600144F0080027E5D1964EE09C570001
# svcadm enable –r svc:/network/iscsi/target:default (初回のみ)
# itadm create-target
Target iqn.1986-03.com.sun:02:1ff9b930-7298-c82e-be3b-ad392d9d674f successfully created
ZFS 上に 4GB の zvol を作成
testVolume を LU として登録
target と結びつけるため view に追加
iSCSI target を作成 iqn が生成される
• iSCSI Initiator からの接続 (Solaris iSCSI Initiator の場合)
# iscsiadm add discovery-address 10.0.2.2
# iscsiadm modify discovery –t enable
target 探索用 IP address をセット
target の探索開始!
20 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
ストレージの仮想化機能 “COMSTAR”
• FC Target や iSCSI Targetなど複数の Target を立てた場合 – そのままでは、LU が全てのTargetから参照可能
– host/target groupを作成し、Targetと結び付けるマスキング機能を提供
• Multipathによる冗長化 – Initiator側で提供される冗長化ソフトウェアを利用可能
• Solaris は MPxIO
– COMSTARに依存した設定等は必要なし
• その他のプロトコルを利用する場合でも、 – LUの作成手順は、すべて同一手順で可能
その他
21 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox で iSCSIを使ってみる
22 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
• Oracle VM VirtualBox
– 強力なクロスプラットフォーム仮想化ソフトウェア
– Oracle Solaris 11 をホストOSとしてサポート
• Solais 11上に Solaris, Windows や Linux 環境を構築可能
• Oracle Solaris Zones Ready
– Solaris Zones 上での動作をサポート
– Solaris 11 では Crossbow の仮想NICと連携可能
– COMSTAR iSCSI target も利用可能
•ストレージを iSCSI にすることでゾーンをコンパクトに運用することも可能
• VirtualBoxにiSCSI Initiator機能を搭載
Solaris Zones に構成可能な Oracle VM VirtualBox
https://www.virtualbox.org/
23 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
vbox-zone02
• VirtualBox がサポートする OS を Solaris
ホストに集約
– Solaris では提供できないサービス
(他OSに特化した)の提供など
• Windows, Linux などの開発環境として
利用可能
• Solaris Zones 単位で VirtualBox を
動作させることで可搬性の向上を狙う
– VBox の HDD に iSCSI LUN を割り当てるなど
• Solaris 使いとしては、これを ZFS data
stream 化できることに喜びを感じる
開発環境としての仮想環境
e1000g0
vbox-zone01
Solaris 11 VirtualBox
Windows
global zone
Solaris 11
VirtualBox
Windows
iSCSI
LUN
24 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
vbox-zone02
• サンプル環境の作成方法
– 右図の赤い線に囲われている環境を作成
• 大域ゾーンへ VirtualBox をインストール – カーネル・モジュールが提供する機能を利用する 必要がある為
• 続いて、非大域ゾーンを作成
– 非大域ゾーンを作成し、こちらにも VirtualBox を
インストールする
開発環境としての仮想環境
e1000g0
vbox-zone01
Solaris 11 VirtualBox
Windows
global zone
Solaris 11
VirtualBox
Windows
iSCSI
LUN
# pkgadd –d VirtualBox-4.1.12-SunOS-r77218.pkg
25 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
• 非大域ゾーンの構成 (下記は構成例)
– ネットワークは、anet リソースを使用した仮想 NIC自動生成機能にて対応
• anet リソース設定は、 すでに設定されている(create より自動生成)
• VirtualBox は、この仮想NICをブリッジアダプタとしても利用可能
– NAT ,内部ネットワークなども利用可能
ゾーンの構成と VirtualBox のインストール
# /usr/sbin/zonecfg -z VBox_Windows_7 zonecfg:VBox_Windows_7> create zonecfg:VBox_Windows_7> set autoboot=true zonecfg:VBox_Windows_7> set zonepath=/rpool/zones/VBox_Windows7 zonecfg:VBox_Windows_7> add device zonecfg:VBox_Windows_7:device> set match=/dev/vboxdrv zonecfg:VBox_Windows_7:device> end zonecfg:VBox_Windows_7> add device zonecfg:VBox_Windows_7:device> set match=/dev/vboxusbmon zonecfg:VBox_Windows_7:device> end zonecfg:VBox_Windows_7> commit zonecfg:VBox_Windows_7> exit # zoneadm –z VBox_Windows_7 install # zoneadm –z VBox_Windows_7 boot # zlogin –C VBox_Windows_7
add device は、大域ゾーンの device file
を非大域ゾーンでも利用するために指定
(必須)
ゾーンの構成開始
ゾーンのデプロイ ゾーンの起動
ゾーンへのログイン
26 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
• zlogin コマンドで非大域ゾーンへログイン
– ネットワーク設定などを実施後、ssh で大域ゾーン等からログイン可能
• 非大域ゾーンに IPS からパケージを追加 – VirtualBox を動作させるためのパッケージをインストール
– 非大域ゾーンは、大域ゾーンの IPS情報を利用するため設定不要
• 非大域ゾーンにも VirtualBox をインストール – VirtualBox を、非大域ゾーンで動作させるため
ゾーンの構成と VirtualBox のインストール
# pkg install X-all
zones # pkgadd –d VirtualBox-4.1.10-SunOS-r76795.pkg
大域ゾーンからIPSリポジトリへアクセス
可能であれば、組み込まれた Proxy に
より、非大域ゾーンからもアクセス可能
大域ゾーンと非大域ゾーンには
必ず同一バージョンの VirtualBox
をインストールすること
27 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
• 物理NIC(net0)から仮想NICが生成され割り当てられる
– 非大域ゾーンの OS は物理 NICとして認識
– VirtualBox は、このNICをブリッジインターフェース
として利用可能
– 構成例では、それぞれ同一ネットワークに接続して
いることになる
• 外部からみた場合は、完全に独立した
環境を構成可能
• リソースが許せば複数のVBox環境を動作可能
• VBoxのストレージは iSCSI LUN に外出し可能
– VBox 自身が iSCSI Initiator の機能を持つ
非大域ゾーンのネットワーク構成例
net0
vbox-zone
Solaris 11
VirtualBox
Windows
global zone
Solaris 11
net0 (vnic)
同一ネットワークへの接続
28 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
• COMSTARを利用した、40GBのiSCSI LUN 作成例
COMSTARとの連携 - iSCSI Target の作成
• iSCSI Targetの作成
# pkg install storage-server
# svcadm enable stmf
# zfs create -p -V 40g rpool/zvol/testVolume
# stmfadm create-lu /dev/zvol/rdsk/rpool/zvol/testVolume
Logical unit created: 600144F0080027E5D1964EE09C570001
# stmfadm add-view 600144F0080027E5D1964EE09C570001
# svcadm enable –r svc:/network/iscsi/target:default (初回のみ)
# itadm create-target
Target iqn.1986-03.com.sun:02:1ff9b930-7298-c82e-be3b-ad392d9d674f successfully created
ZFS 上に 40GB の zvol を作成
testVolume を LU として登録
target と結びつけるため view に追加
iSCSI target を作成 iqn が生成される
• ゲストVMで利用するストレージを iSCSI LUNとして外出しする例
29 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
• VirtualBox に iSCSI LUN を登録 – VirtualBox 自身が iSCSI Initiator の機能を持つ
– VirtualBox 4.x では CUI でのみ iSCSI LUN を登録可能
– VM: dummy を登録し、これをベースに iSCSI LUN を登録 (登録後は削除する)
– Virtual Media Manager に登録される為、以降の VM作成時にストレージとして指定可能
– 起動ディスクにすることで、ゾーンで抱えるデータを最小限にすることが可能
$ /opt/VirtualBox/VBoxManage createvm -name dummy --register $ VBoxManage storagectl dummy --name "SATA Controller" --add sata --controller IntelAHCI $ /opt/VirtualBox/VBoxManage storageattach dummy ¥ --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium iscsi ¥ --server 192.168.10.254 --target iqn.1986-03.com.sun:02:1ff9b930-7298-c82e-be3b-ad392d9d674f
COMSTARとの連携 - iSCSI LUNの利用
※192.168.10.254 – iSCSI Target
30 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
VirtualBox in Oracle Solaris 11 Zones
• 利用されるSolarisの仮想化機能 – Solaris Zones (隔離された実行環境)
– Crossbow (仮想ネットワーク)
– COMSTAR (仮想ストレージ)
– ZFS (データ管理)
Solarisの仮想化機能をフルに活用した一例
31 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSIにおける
冗長化構成
32 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について
• iSCSIは、TCP/IPを利用するプロトコル
– ネットワークで起こる問題は、iSCSIの障害要因に
• NICやスイッチの故障、断線などいろいろ
• さらにiSCSIはSCSIデバイスを扱っているのと同等
– iSCSI Targetから提供されるLUNへの冗長化も考慮する必要がある
• ネットワークとSCSIデバイスの冗長化が必要に
冗長化の必要性
33 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について
• Initiator側は2つのNICを持ち 1つのiSCSI Targetへのネット ワークとLUNへのパスを 冗長化構成にする
• iSCSI Targetは 2 つの NICを持ち ネットワークパスの冗長化を確保 する必要がある
簡単な冗長化構成の例
0 Storage Node
LUN iSCSI Target
Initiator Node
iSCSI
HBA NIC
iSCSI Initiator
NIC
IP
Network
NIC NIC
34 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について
• IP LayerとSCSI Layerのfailover機構が必要に – ネットワークの冗長化
• IP Layerの冗長化
– IPMP機能によるネットワーク・パスの冗長化
– LUNへのパス冗長化
• SCSI Layerの冗長化
– iSCSI MS/TにSCSI Layerの冗長化
• iSCSI Multi Session Per Target
• IPMP+iSCSI MS/Tで冗長化を構成することが可能
冗長化が必要な部分
35 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について
• IPMPを利用したIP Layerの冗長化
– iSCSI HBAとは異なるNICを追加で用意
– /etc/hostname.e1000g0 (iSCSI HBA)
• 192.168.200.100 netmask + broadcast + group ipmp0 up
– /etc/hostname.e1000g1 (追加NIC)
• group ipmp0 up
– 再起動でIPMP リンクベース障害検出機能が有効になる
IPMPによるIP Layerの冗長化(Solaris 10)
# ifconfig -a e1000g0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 1 inet 192.168.200.100 netmask ffffff00 broadcast 192.168.200.255 groupname ipmp0 ether 0:1b:21:76:f:a1 e1000g1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3 inet 0.0.0.0 netmask ff000000 broadcast 0.255.255.255 groupname ipmp0 ether 0:1b:21:77:81:32
36 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について
• IPMPを利用したIP Layerの冗長化
– 2 つの NIC を用意
– ネットワークは手動構成が必須
– # netadm enable –p ncp DefaultFixed
– ipadm コマンドで IPMP interface を構成
IPMPによるIP Layerの冗長化 (Solaris 11)
# ipadm create-ip net0 # ipadm create-ip net1 # ipadm create-ipmp -i net0 -i net4 ipmp1 # ipadm create-addr -T static -a 192.168.10.13/24 ipmp1/v4 # ipmpstat –a ADDRESS STATE GROUP INBOUND OUTBOUND :: down ipmp1 -- -- 192.168.10.13 up ipmp1 net5 net5 net1
37 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について
• NICの疑似障害によるインターフェースのfailover – IPMPの機能により、追加NIC(e1000g1)の論理インターフェースが作成され failoverが完了する
• e1000g0 (iSCSI HBA)に疑似障害を発生
IPMPによるIP Layerの冗長化
# if_mpadm -d e1000g0 # ifconfig -a e1000g0: flags=89000842<BROADCAST,RUNNING,MULTICAST,IPv4,NOFAILOVER,OFFLINE> mtu 0 index 1 inet 0.0.0.0 netmask 0 groupname ipmp0 ether 0:1b:21:76:f:a1 e1000g1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3 inet 0.0.0.0 netmask ff000000 broadcast 0.255.255.255 groupname ipmp0 ether 0:1b:21:77:81:32 e1000g1:1: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3 inet 192.168.200.100 netmask ffffff00 broadcast 192.168.200.255
38 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について (Initiator)
• iSCSI MS/Tを利用したscsi device layerの冗長化
– initiatorから複数のセッションを1つのTarget(group)に張る
• 内部的にmultipath機能が有効に
iSCSI MS/Tを利用したSCSI Layerの冗長化
設定可能なセッション数: 1 - 4
# iscsiadm modify initiator-node -c 2
iscsi: [ID 240218 kern.notice] NOTICE: iscsi session(13) iqn.1986-03.com.sun:02:760428f9-f1fc-ed2f-9102-bf0e4e27eeb9 online genunix: [ID 834635 kern.info] /scsi_vhci/disk@g600144f05a8c0e0000004cc284780001 (sd0) multipath status: optimal, path /iscsi (iscsi0) to target address: 0004iqn.1986-03.com.sun:02:760428f9-f1fc-ed2f-9102-bf0e4e27eeb90001,0 is online Load balancing: round-robin genunix: [ID 834635 kern.info] /scsi_vhci/disk@g600144f05a8c0e0000004cc284780001 (sd0) multipath status: degraded, path /iscsi (iscsi0) to target address: 0000iqn.1986-03.com.sun:02:760428f9-f1fc-ed2f-9102-bf0e4e27eeb90001,0 is offline Load balancing: round-robin iscsi: [ID 328943 kern.notice] NOTICE: iscsi session(10) iqn.1986-03.com.sun:02:760428f9-f1fc-ed2f-9102-bf0e4e27eeb9 offline
39 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について (Initiator)
• iSCSI MS/T無効時
– Path Countの変化に注目
iSCSI MS/Tを利用したSCSI Layerの冗長化
# mpathadm list lu /dev/rdsk/c0t600144F05A8C0E0000004CC284780001d0s2 Total Path Count: 2 Operational Path Count: 1
# mpathadm list lu
/dev/rdsk/c0t600144F05A8C0E0000004CC284780001d0s2
Total Path Count: 3
Operational Path Count: 2
• iSCSI MS/T有効時
– Path Countの変化に注目
この状態では、ネットワーク側の冗長化は機能しているが
iSCSI Targetへのセッションが1つであるためfailoverに失敗する
Path Countが増え、iSCSI Targetへのセッションが
2つになる
この状態になることで、failoverが可能になる
40 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について (Initiator)
MS/Tによるセッションの確認
# iscsiadm list target -S (-vを追加することで、詳細を出力) Target: iqn.1986-03.com.sun:02:760428f9-f1fc-ed2f-9102-bf0e4e27eeb9 Alias: - TPGT: 1 ISID: 4000002a0001 Connections: 1 LUN: 0 Vendor: SUN Product: COMSTAR OS Device Name: /dev/rdsk/c0t600144F05A8C0E0000004CC284780001d0s2 Target: iqn.1986-03.com.sun:02:760428f9-f1fc-ed2f-9102-bf0e4e27eeb9 Alias: - TPGT: 1 ISID: 4000002a0000 Connections: 1 LUN: 0 Vendor: SUN Product: COMSTAR OS Device Name: /dev/rdsk/c0t600144F05A8C0E0000004CC284780001d0s2
ISID = Initiator Session ID
セッションが1つ増えたことにより
新たなセッションIDが生成される
※既存のセッション情報
※追加されたセッション情報
41 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
iSCSI における冗長化構成について
• Initiator側の冗長化構成 – 2 つのパスで冗長化構成を行う必要がある
•ネットワークパス (IPMP, Link Aggregation)
• LUN へのパス (iSCSI MS/T, MC/S)
• Target側の冗長化構成 – ネットワークパスのみ冗長化構成
• IPMP, Link Aggregation を使用
まとめ
42 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
参考情報
• Oracle Solaris の管理: デバイスとファイルシステム
第 14 章 COMSTAR を使用した iSCSI ストレージデバイスの構成
http://docs.oracle.com/cd/E26924_01/html/E25880/fmvcd.html#scrolltoc
• Oracle Solaris 10 の新インストール技術 – iSCSI Boot Support (iSCSI の冗長化構成)
http://www.slideshare.net/satokaz/oracle-solaris-10u9iscsiboot20101111public
• PSARC/2007/523 COMSTAR: Common Multiprotocol SCSI Target
http://arc.opensolaris.org/caselog/PSARC/2007/523/
• PSARC/2008/235 SCSI Block Disk Provider for COMSTAR
http://arc.opensolaris.org/caselog/PSARC/2008/235
• PSARC/2008/587 iSCSI Port Provider for COMSTAR
http://arc.opensolaris.org/caselog/PSARC/2008/587
• PSARC/2008/434 libstmf enhancement for provider data
http://arc.opensolaris.org/caselog/PSARC/2008/434
ストレージの仮想化機能 “COMSTAR”
43 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
参考情報
• Oracle Solaris 11 VM Downloads http://www.oracle.com/technetwork/server-storage/solaris11/downloads/virtual-
machines-1355605.html
– Oracle Solaris 11 VM for Oracle VM VirtualBox
• VirtualBox にインポートするだけで Oracle Solaris 11 を試用可能
– Oracle VM Template for Oracle Solaris 10 Zones for SPARC/x86
• Oracle Solaris 10 Zones の構成情報テンプレート
• Oracle Solaris 11 VM for Oracle VM VirtualBox と組み合わせることで、VirtulBox 上で Solaris 11 と Solaris 10 Zones の試用環境を構築可能
• Solaris 11が動作する環境にて利用可能
Oracle Solaris 11 をすぐに試せる VM テンプレート
44 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
参考情報
• 製品情報とダウンロード – oracle.co.jp/solaris
• Oracle Technology Network
– http://www.oracle.com/technetwork/jp/server-storage/solaris11/overview/index.html
• System administrators community
– oracle.com/technetwork/systems
• @ORCL_Solaris
• facebook.com/SolarisJP
45 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
46 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.