Solaris のシステム管理 (IP サービス)

IPMP グループの構成

この節には、2 つ以上の物理インタフェースを持つ一般的な IPMP グループの構成作業を記載します。

Procedure複数のインタフェースを持つ IPMP グループを構成する方法

次の IPMP グループの構成手順は、VLAN を IPMP グループに構成する際にも適用されます。

始める前に

IPv4 アドレス、および該当する場合は、予想される IPMP グループ内のすべてのインタフェースの IPv6 アドレスを構成しておく必要があります。


注意 – 注意 –

各サブネットまたは L2 ブロードキャストドメインに対して、IPMP グループを 1 つだけ構成する必要があります。詳細については、「IPMP の基本要件」を参照してください。


  1. 構成するインタフェースのシステムで、Primary Administrator の役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Solaris のシステム管理 (基本編)』の第 2 章「Solaris 管理コンソールの操作 (手順)」を参照してください。

  2. 各物理インタフェースを IPMP グループを配置します。


    # ifconfig interface group group-name
    

    たとえば、hme0hme1 をグループ testgroup1 の下に配置するには、次のコマンドを入力します。


    # ifconfig hme0 group testgroup1
    # ifconfig hme1 group testgroup1
    

    グループ名には空白文字を使用しないでください。ifconfig ステータスディスプレイは、スペースを表示しません。したがって、違いは一方の名前がスペースを含んでいるだけという 2 つの類似するグループ名は作成しないでください。グループ名の 1 つにスペースが含まれる場合、これらのグループ名はステータスディスプレイでは同じに見えます。

    デュアルスタック環境では、特定のグループにインタフェースの IPv4 インスタンスを配置すると、IPv6 インスタンスが自動的に同じグループに配置されます。

  3. (任意) 1 つ以上の物理インタフェース上で IPv4 検査用 IP アドレスを構成します。

    検査用 IP アドレスを構成する必要があるのは、特定のインタフェースで検査信号ベースの 障害検出を使用する場合だけです。検査用 IP アドレスは、ifconfig コマンドに指定した物理インタフェースの論理インタフェースとして構成されます。

    グループ内の 1 つのインタフェースを待機インタフェースにする場合は、この時点ではそのインタフェースの検査用 IP アドレスを設定しないでください。待機インタフェースの検査用 IP アドレスは、「IPMP グループの待機インタフェースを構成する方法」の作業の一環として設定します。

    検査用 IP アドレスを設定するには、次の構文の ifconfig コマンドを使用します。


    # ifconfig interface addif ip-address parameters -failover deprecated up
    

    たとえば、一次ネットワークインタフェース hme0 には次の検査用 IP アドレスを作成します。


    # ifconfig hme0 addif 192.168.85.21 netmask + broadcast + -failover deprecated up
    

    このコマンドは、一次ネットワークインタフェース hme0 に対して次のパラメータを設定します。

    • アドレスを 192.168.85.21 に設定する。

    • ネットマスクおよびブロードキャストアドレスをデフォルト値に設定する。

    • -failoverdeprecated を指定


      注 –

      この検査用 IP アドレスをアプリケーションから使用されないようにするため IPv4 検査用アドレスを deprecated と指定する必要があります。


  4. 特定のインタフェースの IPv4 構成をチェックします。

    ifconfig interface を入力することによって、インタフェースの現在のステータスを常に参照できます。インタフェースのステータス参照の詳細については、特定のインタフェースに関する情報を入手する方法を参照してください。

    検査用 IP アドレスに割り当てられている論理インタフェースを指定することで、物理インタフェースの検査用 IP アドレス構成に関する情報を取得できます。


    # ifconfig hme0:1
    	hme0:1: flags=9000843<UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER>
        mtu 1500 index 2 
        inet 192.168.85.21 netmask ffffff00 broadcast 192.168.85.255
  5. (任意) 適用できる場合、IPv6 検査用アドレスを構成します。


    # ifconfig interface inet6 -failover

    IPv6 アドレスを持つ物理インタフェースは、インタフェースの IPv4 アドレスと同じ IPMP グループに配置されます。この状況は、IPv4 アドレスを持つ物理インタフェースを IPMP グループに構成する場合に発生します。まず IPv6 アドレスを持つ物理インタフェースを IPMP グループに配置する場合は、IPv4 アドレスを持つ物理インタフェースも暗示的に同じ IPMP グループに配置されます。

    たとえば、IPv6 検査用 IP アドレスを持つ hme0 を構成するには、次のように入力します。


    # ifconfig hme0 inet6 -failover
    

    検査用 IP アドレスをアプリケーションから使用されないようにするために IPv6 検査用 IP アドレスを deprecated と指定する必要はありません。

  6. IPv6 構成を確認します。


    # ifconfig hme0 inet6
    	hme0: flags=a000841<UP,RUNNING,MULTICAST,IPv6,NOFAILOVER> mtu 1500 index 2
            	inet6 fe80::a00:20ff:feb9:17fa/10 
            	groupname test

    IPv6 検査用 IP アドレスは、インタフェースのリンクローカルアドレスです。

  7. (任意) リブートしても IPMP グループ構成を保持させます。

    • IPv4 の場合は、次の行を /etc/hostname.interface ファイルに追加します。


      interface-address <parameters> group group-name up \
      	addif logical-interface -failover deprecated <parameters> up

      この例では、検査用 IPv4 アドレスは、次回のリブートで有効になります。構成をその場で有効にするには、手順 1、2、および任意で 3 を実行する必要があります。

    • IPv6 の場合は、次の行を /etc/hostname6.interface ファイルに追加します。


      -failover group group-name up

      この検査用 IPv6 アドレスは、次回のリブートで有効になります。構成をその場で有効にするには、手順 1、2、および任意で 5 を実行する必要があります。

  8. (任意) 手順 1 - 6 を繰り返して、IPMP グループにさらにインタフェースを追加します。

    実行中のシステムの既存のグループに新しいインタフェースを追加できます。ただし、リブート後は変更の内容は失われます。


例 31–1 2 つのインタフェースを持つ IPMP グループの構成

次の操作を実行したいとします。

次のコマンドを入力します。


# ifconfig hme0 addif 192.168.85.21 netmask + broadcast + -failover deprecated up

この検査用 IP アドレスをアプリケーションから使用されないようにするため IPv4 検査用アドレスを deprecated と指定する必要があります。「複数のインタフェースを持つ IPMP グループを構成する方法」を参照してください。

アドレスのフェイルオーバー属性を有効にするには、ダッシュなしで failover オプションを使用します。

IPMP グループのすべての検査用 IP アドレスには、同じネットワークアドレスを使用してください。すべての検査用 IP アドレスは 1 つの IP サブネットに属していなければなりません。



例 31–2 リブート後の IPv4 IPMP グループ構成の保持

次の構成で testgroup1 という名の IPMP グループを作成したいとします。

この場合、/etc/hostname.hme0 ファイルに次の行を追加します。


192.168.85.19 netmask + broadcast + group testgroup1 up \
	addif 192.168.85.21 deprecated -failover netmask + broadcast + up

同様に、2 番目のインタフェース hme1 を同じグループ (testgroup1) に入れ、検査用 IP アドレスを指定するには、次の行を追加します。


192.168.85.20 netmask + broadcast + group testgroup1 up \
	addif 192.168.85.22 deprecated -failover netmask + broadcast + up


例 31–3 リブート後の IPv6 IPMP グループ構成の保持

IPv6 アドレスを持つインタフェース hme0 のテストグループを作成するには、次の行を /etc/hostname6.hme0 ファイルに追加します。


-failover group testgroup1 up

同様に、2 番目のインタフェース hme1 をグループ (testgroup1) に入れ、検査用 IP アドレスを指定するには、次の行を /etc/hostname6.hme1 ファイルに追加します。


-failover group testgroup1 up

注意事項

IPMP グループの構成時、in.mpathd は、システムコンソールまたは syslog ファイルに多数のメッセージを出力します。これらのメッセージは、本質的に参考情報で、IPMP 構成が正しく機能していることを示します。

参照

IPMP グループをアクティブ-待機構成にする場合は、「IPMP グループの待機インタフェースを構成する方法」を参照してください。

ターゲットシステムの構成

検査信号ベースの障害検出では、「検査信号ベースの障害検出」で説明されているようにターゲットシステムを使用します。一部の IPMP グループでは、in.mpathd が使用するデフォルトのターゲットで十分です。ただし、一部の IPMP グループでは、検査信号ベースの障害検出用に特定のターゲットを設定したほうが良いこともあります。ルートテーブルのホストルートを検査信号のターゲットとして設定して、検査信号ベースの障害検出を実行します。経路制御テーブルに構成されているすべてのホストルートは、デフォルトルーターの前に一覧化されます。したがって、IPMP はターゲットを選択するために、明示的に定義されたホストルートを使用します。直接ターゲットを指定するには、 ホストルートを手動で設定するか、起動スクリプトになることができるシェルスクリプトを作成します。

ネットワーク上のどのホストが適切なターゲットになるのかの評価では、 次の基準を検討します。

Procedure検査信号ベースの障害検出のターゲットシステムを手動で指定する方法

  1. 検査信号ベースの障害検出を構成しているシステムにユーザーアカウントでログインします。

  2. 検査信号ベースの障害検出のターゲットとして使用される特定のホストにルートを追加します。


    $ route add -host destination-IP gateway-IP -static
    

    destination-IPgateway-IP の値を、ターゲットとして使用されるホストの IPv4 アドレスと置き換えます。たとえば、IPMP グループ testgroup1 のインタフェースと同じサブネット上のターゲットシステム 192.168.85.137 を指定するには、次のように入力します。


    $ route add -host 192.168.85.137 192.168.85.137 -static 
    
  3. ターゲットシステムとして使用されるネットワーク上の追加ホストにルートを追加します。

Procedureシェルスクリプトでターゲットシステムを指定する方法

  1. IPMP グループを構成したシステムで、Primary Administrator の役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Solaris のシステム管理 (基本編)』の第 2 章「Solaris 管理コンソールの操作 (手順)」を参照してください。

  2. 提案したターゲットへの静的なルートを設定するシェルスクリプトを作成します。

    たとえば、次のような内容の ipmp.targets というシェルスクリプトを作成します。


    TARGETS="192.168.85.117 192.168.85.127 192.168.85.137"
    
    case "$1" in
            'start')
                /usr/bin/echo "Adding static routes for use as IPMP targets"
    		for target in $TARGETS; do
    	  /usr/sbin/route add -host $target $target
    		done
                      ;;
            'stop')
                  /usr/bin/echo "Removing static routes for use as IPMP targets"
    		 for target in $TARGETS; do
    		/usr/sbin/route delete -host $target $target
    		 done
                      ;;
      esac  
  3. シェルスクリプトを起動スクリプトディレクトリにコピーします。


     # cp ipmp.targets /etc/init.d  
    
  4. 新しい起動スクリプトのアクセス権を変更します。


    # chmod 744 /etc/init.d/ipmp.targets
    
  5. 新しい起動スクリプトの所有権を変更します。


    # chown root:sys /etc/init.d/ipmp.targets
    
  6. /etc/init.d ディレクトリ内に起動スクリプトのリンクを作成します。


    # ln /etc/init.d/ipmp.targets /etc/rc2.d/S70ipmp.targets
    

    ファイル名 S70ipmp.targets の接頭辞 S70 によって、ほかの起動スクリプトを尊重しながら新しいスクリプトが命令されます。

待機インタフェースの構成

IPMP グループをアクティブ-待機構成にする場合は、この手順を行ってください。この種類の構成についての詳細は、「IPMP インタフェースの構成」を参照してください。

ProcedureIPMP グループの待機インタフェースを構成する方法

始める前に

IPMP グループの構成と検査用 IP アドレスの割り当てについては、「複数のインタフェースを持つ IPMP グループを構成する方法」を参照してください。

  1. 構成する待機インタフェースのシステムで、Primary Administrator の役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Solaris のシステム管理 (基本編)』の第 2 章「Solaris 管理コンソールの操作 (手順)」を参照してください。

  2. インタフェースを待機用として構成し、検査用 IP アドレスを割り当てます。


    # ifconfig interface plumb \
    ip-address other-parameters deprecated -failover standby up
    

    待機インタフェースは、1 つの IP アドレス (検査用 IP アドレス) しか持つことができません。standby up オプションを設定する前に、-failover オプションを設定してください。<other-parameters> の場合は、ifconfig(1m) のマニュアルページに説明されているように、構成で必要なパラメータを使用します。

    • たとえば、IPv4 検査用 IP アドレスを作成するには、次のコマンドを入力します。


      # ifconfig hme1 plumb 192.168.85.22 netmask + broadcast + deprecated -failover standby up
      
      hme1

      待機インタフェースとして構成する物理インタフェースとして hme1 を定義します。

      192.168.85.22

      この検査用 IP アドレスを待機インタフェースに割り当てます。

      deprecated

      その検査用 IP アドレスが出力パケットには使用されないことを示します。

      -failover

      インタフェースで障害が発生しても、検査用 IP アドレスのフェイルオーバーは行われないことを示します。

      standby

      インタフェースを待機インタフェースに指定します。

    • たとえば、IPv6 検査用 IP アドレスを作成するには、次のコマンドを入力します。


      # ifconfig hme1 plumb -failover standby up
      
  3. 待機インタフェースの構成結果をチェックします。


    # ifconfig hme1
    hme1: flags=69040843<UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4,NOFAILOVER,
          STANDBY,INACTIVE mtu 1500 
             index 4 inet 192.168.85.22 netmask ffffff00 broadcast 19.16.85.255
             groupname test

    INACTIVE は、このインタフェースが送信パケットには使用されないことを示します。この待機インタフェースに障害経路の迂回が行われると、INACTIVE 状態は取り消されます。


    注 –

    ifconfig interface コマンドを入力することによって、インタフェースの現在のステータスを常に参照できます。インタフェースのステータス参照については、「特定のインタフェースに関する情報を入手する方法」を参照してください。


  4. (任意) リブート後も IPv4 待機インタフェースを保持します。

    待機インタフェースを同じ IPMP グループに割り当て、待機インタフェースの検査用 IP アドレスを構成します。

    たとえば、hme1 を待機インタフェースとして構成するには、/etc/hostname.hme1 ファイルに次の行を追加します。


    192.168.85.22 netmask + broadcast + deprecated group test -failover standby up 
  5. (任意) リブート後も IPv6 待機インタフェースを保持します。

    待機インタフェースを同じ IPMP グループに割り当て、待機インタフェースの検査用 IP アドレスを構成します。

    たとえば、hme1 を待機インタフェースとして構成するには、/etc/hostname6.hme1 ファイルに次の行を追加します。


    -failover group test standby up

例 31–4 IPMP グループの待機インタフェースの構成

次の構成に基づいて検査用 IP アドレスを作成するとします。

その場合、次のように入力します。


# ifconfig hme2 plumb 192.168.85.22 netmask + broadcast + \
deprecated -failover standby up

インタフェースは、アドレスが NOFAILOVER として設定されたあとにだけ、待機インタフェースとして設定されます。

次のように入力して、インタフェースの待機ステータスを解除します。


# ifconfig interface -standby