15 Fibre Channel Storage over Ethernet Networks: FCoE #
多くの企業のデータセンターが、そのLANおよびデータトラフィックをEthernetに依存し、またそのストレージインフラストラクチャをファイバチャネルに依存しています。Open Fibre Channel over Ethernet (FCoE)イニシエータソフトウェアは、Ethernetアダプタが付いたサーバが、Ethernetネットワーク上でファイバチャネルストレージに接続できるようにします。このコネクティビティはこれまで、ファイバチャネルファブリック上にファイバチャネルアダプタを有するシステム用に、独占的に確保されていました。FCoEテクノロジは、ネットワークコンバージェンスを支援することで、データセンター内の複雑性を減らします。これにより、ファイバチャネルストレージへの既存の投資を無駄にすることなく、ネットワーク管理を簡素化することができます。
  Open-FCoEでは、ホストバスアダプタ上の専有のハードウェアではなく、ホストでファイバチャネルのプロトコルを実行することができます。対象としているのは10 Gbps (ギガバイト/秒)のEthernetアダプタですが、PAUSEフレームに対応したすべてのEthernetアダプタで使用可能です。イニシエータソフトウェアにより、ファイバチャネルプロトコルの処理モジュールと、Ethernetベースのトランスポートモジュールが提供されます。Open-FCoEモジュールは、SCSI用の低レベルドライバの役割を果たします。Open-FCoEトランスポートは、net_deviceを使用してパケットの送受信を行います。DCB(データセンターブリッジング)ドライバにより、FCoE向けのサービスの質が提供されます。
 
FCoEは、ファイバチャネルフレームを変えずに、ファイバチャネルのプロトコルトラフィックをEthernet接続上で動かす、カプセル化プロトコルです。これにより、ネットワークセキュリティとトラフィック管理インフラストラクチャが、ファイバチャネルにおけるのと同じようにFCoEでも機能することができます。
以下の条件が当てはまる企業では、FCoEの導入を選択してもよいでしょう。
- すでにファイバチャネルストレージシステムがあり、ファイバチャネルのスキルと知識を持つ管理者がいる。 
- ネットワーク内に、10 GbpsのEthernetを展開している。 
本項では、ネットワークにFCoEを設定する方法を説明します。
15.1 インストール時におけるFCoEインタフェースの設定 #
SUSE Linux Enterprise Server向けのYaSTのインストールでは、サーバとファイバチャネルストレージインフラストラクチャ間の接続用のスイッチでFCoEが有効になっていれば、オペレーティングシステムのインストール時にFCoEディスクの設定を行うことができます。一部のシステムBIOSタイプでは、FCoEディスクを自動的に検出することができ、そのディスクをYaSTのインストールソフトウェアに報告します。ただし、FCoEディスクの自動検出は、すべてのBIOSのタイプでサポートされているわけではありません。その場合、インストールの開始時に次のwithfcoeオプションをカーネルのコマンドラインに追加することで、自動検出を有効にすることができます。
  
withfcoe=1
FCoEディスクが検出されると、YaSTのインストールでは、同時にFCoEを設定するオプションがあります。[ディスクアクティベーション]ページで、を選択して、FCoEの設定にアクセスします。FCoEインタフェースの設定については、15.3項 「YaSTを使用したFCoEサービスの管理」を参照してください。
FCoEデバイスはブートプロセス中は非同期で表示されます。これらのデバイスがルートファイルシステム用に正しく設定されていることがinitrdによって保証されるまでの間、他のファイルシステムや/usrなどのマウントポイントでは、これは保証されません。したがって、/usrや/varなどのシステムマウントポイントはサポートされません。これらのデバイスを使用するには、各サービスとデバイスが正しく同期されていることを確認します。
15.2 FCoEおよびYaSTのFCoEクライアントのインストール #
サーバへの接続用のスイッチでFCoEを有効にすることで、ストレージインフラストラクチャ内にFCoEディスクを設定することができます。SUSE Linux Enterprise Serverオペレーティングシステムのインストール時にFCoEディスクが利用可能であれば、FCoEイニシエータソフトウェアが、その時点で自動的にインストールされます。
FCoEイニシエータソフトウェアとYaST FCoEクライアントソフトウェアがインストールされていない場合は、次の手順で次のコマンドを使用して手動でインストールします。
sudo zypper in yast2-fcoe-client fcoe-utils
または、YaSTソフトウェアマネージャを使用して、これらのパッケージをインストールします。
15.3 YaSTを使用したFCoEサービスの管理 #
   YaST FCoEクライアント設定オプションを使用して、お使いのファイバチャネルストレージインフラストラクチャ内のFCoEディスク用のFCoEインタフェースの作成、設定、および削除ができます。このオプションを使用するには、FCoEイニシエータサービス(fcoemonデーモン)およびLink Layer Discovery Protocolエージェントデーモン(llpad)がインストールされて実行中であり、FCoE接続が、FCoE対応のスイッチで有効になっている必要があります。
  
- YaSTを起動し、 › の順に選択します。 
- タブで、FCoEサービスとLldpad (Link Layer Discovery Protocolエージェントデーモン)サービスの開始時刻を確認し、必要に応じて変更します。 - FCoEサービスの開始: Fibre Channel over Ethernetサービスの - fcoemonデーモンを、サーバの起動時に開始するか、マニュアルで開始するかを指定します。このデーモンは、FCoEインタフェースを制御して、- llpadデーモンとの接続を確立します。値は、(デフォルト)またはです。
- Lldpadサービスの開始: Link Layer Discovery Protocolエージェント - llpadデーモンを、サーバの起動時に開始するか、マニュアルで開始するかを指定します。- llpadデーモンは、データセンターブリッジング機能およびFCoEインタフェースの設定について、- fcoemonデーモンに情報を送ります。値は、(デフォルト)またはです。
 - 設定を変更した場合は、をクリックして変更内容を保存して適用します。 
- タブで、サーバ上で検出されたすべてのネットワークアダプタに関する情報(VLANおよびFCoEの設定に関する情報を含む)を確認します。また、FCoE VLANインタフェースの作成や既存のFCoEインタフェース設定の変更、FCoEインタフェースの削除もできます。 - 列を使用して、FCoEが使用可能かどうかを判断します。 - インタフェース名
- インタフェースに名前が割り当てられている( - eth4.200など)場合は、スイッチでFCoEが利用可能であり、FCoEインタフェースがアダプタに対してアクティブになっています。
- 未設定:
- 状態がである場合は、スイッチでFCoEが有効になっていますが、FCoEインタフェースはアダプタに対してアクティブになっていません。アダプタでインタフェースを有効にするには、アダプタを選択して、をクリックします。 
- 使用不可:
- 状態がである場合は、FCoEがスイッチ上のその接続に対して有効になっていないため、そのアダプタではFCoEは使えません。 
 
- 未設定のFCoE対応アダプタを設定するには、そのアダプタを選択し、をクリックします。問い合わせに対して、を選択して確認します。 - アダプタがインタフェース名と共に列に表示されます。 
- 設定済みのアダプタの設定を変更するには、リストでそのアダプタを選択し、をクリックします。 - 次のオプションを設定できます。 
- アダプタに対してFCoEインスタンスの作成を有効または無効にします。 
- データセンターブリッジングがアダプタに必要かどうかを指定します(通常は必要です)。 
- fcoemonデーモンでVLANインタフェースを作成するかどうかを指定します。
 - 設定を変更した場合は、をクリックして変更内容を保存して適用します。設定は、 - /etc/fcoe/cfg-ethXファイルに書き込まれます。- fcoemonデーモンは、初期化時に各FCoEインタフェースの環境設定ファイルを読み込みます。
- 設定済みのインタフェースを削除するには、それをリストで選択します。をクリックし、をクリックして確認します。FCoEインタフェースの値が、に変わります。 
- タブで、FCoEシステムサービスの全般設定を確認または変更します。FCoEサービススクリプトと - fcoemonデーモンからのデバッグメッセージを有効/無効にしたり、メッセージをシステムログに送信するかどうかを指定したりできます。
- をクリックして、変更内容を保存して適用します。 
15.4 コマンドを使用したFCoEの設定 #
- 端末コンソールを開きます。 
- YaSTを使用して、Ethernetネットワークインタフェースカード( - eth2など)を設定します。
- Link Layer Discovery Protocolエージェントデーモン( - llpad)を起動します。- sudo systemctl start lldpad 
- お使いのEthernetアダプタ上で、データセンターブリッジングを有効にします。 - tux >dcbtool sc eth2 dcb on Version: 2 Command: Set Config Feature: DCB State Port: eth2 Status: Successful
- Priority Flow Control (PFC)設定を、データセンターブリッジングに対して有効にします。 - sudo dcbtool sc eth<x> pfc e:1 a:1 w:1 - 引数の設定値は次のとおりです。 - e:<0|1>
- 機能の有効化を制御します。 
- a:<0|1>
- 機能を、データセンターブリッジング交換プロトコルを介してピアにアドバタイズするかどうかを制御します。 
- w:<0|1>
- 機能が、ピアから受け取った内容に基づいてその運用設定を積極的に変更するかどうかを制御します。 
 
- データセンターブリッジングを有効にして、FCoEに対するスイッチの優先度設定を受け入れます。 - tux >sudo dcbtool sc eth2 app:fcoe e:1 Version: 2 Command: Set Config Feature: Application FCoE Port: eth2 Status: Successful
- デフォルトのFCoE環境設定ファイルを、 - /etc/fcoe/cfg-eth2にコピーします。- sudo cp /etc/fcoe/cfg-ethx /etc/fcoe/cfg-eth2 
- FCoEイニシエータサービスを開始します。 - systemctl start fcoe.service 
- Link Layer Discovery Protocolエージェントデーモン( - llpad)およびFCoEイニシエータサービスを、起動時に開始するよう設定します。- systemctl enable llpad fcoe 
15.5 FCoE管理ツールを使用したFCoEインスタンスの管理 #
fcoeadmユーティリティは、FCoE (Fibre Channel over Ethernet)管理ツールです。これを使用して、所定のネットワークインタフェースのFCoEインスタンスの作成、破棄、およびリセットを行うことができます。fcoeadmユーティリティは、ソケットインタフェースを通じて、実行中のfcoemonプロセスにコマンドを送ります。fcoemonの詳細については、man 8 fcoemonを参照してください。
  
fcoeadmユーティリティを使用して、以下に関してFCoEインスタンスにクエリを行うことができます。
  
- インタフェース 
- ターゲットLUN 
- ポートの統計データ 
fcoeadmユーティリティは、fcoe-utilsパッケージの一部です。このコマンドの一般的な構文は、次のようになります。
  
fcoeadm [-c|--create] [<ethX>] [-d|--destroy] [<ethX>] [-r|--reset] [<ethX>] [-S|--Scan] [<ethX>] [-i|--interface] [<ethX>] [-t|--target] [<ethX>] [-l|--lun] [<ethX>] [-s|--stats <ethX>] [<interval>] [-v|--version] [-h|--help]
   詳細については、man 8 fcoeadmを参照してください。
  
例#
- fcoeadm -c eth2.101
- FCoEインスタンスをeth2.101上に作成します。 
- fcoeadm -d eth2.101
- FCoEインスタンス上のeth2.101を破棄します。 
- fcoeadm -i eth3
- インタフェース - eth3上のFCoEインスタンスすべてに関する情報を表示します。インタフェースが指定されていない場合、FCoEインスタンスが作成されているすべてのインタフェースの情報を表示します。次に、接続eth0.201の情報の例を示します。- tux >sudo fcoeadm -i eth0.201 Description: 82599EB 10-Gigabit SFI/SFP+ Network Connection Revision: 01 Manufacturer: Intel Corporation Serial Number: 001B219B258C Driver: ixgbe 3.3.8-k2 Number of Ports: 1 Symbolic Name: fcoe v0.1 over eth0.201 OS Device Name: host8 Node Name: 0x1000001B219B258E Port Name: 0x2000001B219B258E FabricName: 0x2001000573D38141 Speed: 10 Gbit Supported Speed: 10 Gbit MaxFrameSize: 2112 FC-ID (Port ID): 0x790003 State: Online
- fcoeadm -l eth3.101
- 接続eth3.101で検出されたすべてのLUNの詳細情報を表示します。接続が指定されていない場合、すべてのFCoE接続で検出されたすべてのLUNの情報を表示します。 
- fcoeadm -r eth2.101
- eth2.101上のFCoEインスタンスをリセットします。 
- fcoeadm -s eth3 3
- FCoEインスタンスが存在する特定のeth3ポートに関する統計情報を3秒間隔で表示します。統計情報は、時間間隔ごとに1行ずつ表示されます。間隔を指定していない場合、デフォルトの1秒が間隔として使用されます。 
- fcoeadm -t eth3
- FCoEインスタンスが存在する特定のeth3ポートから検出されたすべてのターゲットに関する情報を表示します。検出された各ターゲットの後ろに、関連付けられたLUNが列記されます。インスタンスが指定されていない場合、FCoEインスタンスが存在するすべてのポートからのターゲットを表示します。次に、接続eth0.201からのターゲットの情報の例を示します。 - tux >sudo fcoeadm -t eth0.201 Interface: eth0.201 Roles: FCP Target Node Name: 0x200000D0231B5C72 Port Name: 0x210000D0231B5C72 Target ID: 0 MaxFrameSize: 2048 OS Device Name: rport-8:0-7 FC-ID (Port ID): 0x79000C State: Online LUN ID Device Name Capacity Block Size Description ------ ----------- ---------- ---------- ---------------------------- 40 /dev/sdqi 792.84 GB 512 IFT DS S24F-R2840-4 (rev 386C) 72 /dev/sdpk 650.00 GB 512 IFT DS S24F-R2840-4 (rev 386C) 168 /dev/sdgy 1.30 TB 512 IFT DS S24F-R2840-4 (rev 386C)
15.6 追加情報 #
詳細については、以下のマニュアルを参照してください。
- Open-FCoEのサービスデーモンについては、 - fcoemon(8)マニュアルページを参照してください。
- Open-FCoEの管理ツールについては、 - fcoeadm(8)マニュアルページを参照してください。
- データセンターブリッジング設定ツールについては、 - dcbtool(8)マニュアルページを参照してください。
- Link Layer Discovery Protocolエージェントデーモンについては、 - lldpad(8)マニュアルページを参照してください。
- 一般的な情報は、Open-FCoEホームページ(http://www.open-fcoe.org/dokuwiki/start)を参照してください。 




