Sun Cluster 3.0 データサービスのインストールと構成

第 6 章 Sun Cluster HA for Domain Name Service (DNS) のインストールと構成

この章では、Sun Cluster サーバーに Sun Cluster HA for Domain Name Service (DNS) をインストールし、構成する手順について説明します。

この章の内容は次のとおりです。

Sun Cluster HA for DNS は、フェイルオーバーサービスとして構成する必要があります。データサービス、リソースグループ、リソース、関連事項については、第 1 章「Sun Cluster データサービスの計画」および『Sun Cluster 3.0 の概念』を参照してください。

Sun Cluster HA for DNS のインストールと構成

表 6-1 に、インストールと構成作業について説明している節を示します。

表 6-1 作業マップ: Sun Cluster HA for DNS のインストールと構成

作業 

参照個所 

DNS のインストール 

「DNS のインストール」

Sun Cluster HA for DNS パッケージのインストール 

「Sun Cluster HA for DNS パッケージのインストール」

Sun Cluster HA for DNS データサービスの構成と起動 

「Sun Cluster HA for DNS の登録と構成」

リソース拡張プロパティの構成 

「Sun Cluster HA for DNS 拡張プロパティの構成」

DNS のインストール

この節では、DNS のインストール手順と、それを Sun Cluster HA for DNS データサービスとして実行する方法について説明します。

Sun Cluster HA for DNS データサービスは、インターネットドメインネームサーバーソフトウェア (in.named) を使用します。in.named ソフトウェアは、Solaris 8 オペレーティング環境にバンドルされています。DNS の設定については、in.named(1M) のマニュアルページを参照してください。Sun Cluster 構成での違いは、次のとおりです。

DNS をインストールする

  1. クラスタ内のノードでスーパーユーザーになります。

  2. DNS サービスを提供する論理ホスト名を決定します。

    この名前は、Sun Cluster ソフトウェアのインストール時に設定するホスト名にします。ホスト名の設定については、『Sun Cluster 3.0 ソフトウェアのインストール』を参照してください。

  3. DNS 実行可能ファイル (in.named) が /usr/sbin ディレクトリにあることを確認します。

    DNS 実行可能ファイルは、Solaris 8 オペレーティング環境にバンドルされており、インストール前は /usr/sbin にあります。

  4. DNS 構成ファイルとデータベースファイルを格納するディレクトリ構造をクラスタファイルシステム上に作成します。

    クラスタファイルシステムに dns ディレクトリを作成し、その下に named ディレクトリを作成します (例: /global/dns/named)。クラスタファイルシステムの設定については、『Sun Cluster 3.0 ソフトウェアのインストール』を参照してください。


    # mkdir -p /global/dns/named
    
  5. DNS 構成ファイルの named.conf または named.boot/global/dns の下に配置します。

    DNS がすでにインストールされている場合は、既存の named.conf または named.boot/global/dns ディレクトリにコピーできます。インストールされていない場合は、このディレクトリに named.conf ファイルを作成してください。named.conf または named.boot に登録できるエントリの種類については、in.named(1M) のマニュアルページを参照してください。named.conf または named.boot のいずれか 1 つ、または両ファイルが存在している必要があります。

  6. すべてのDNS データベースファイル (named.conf ファイルに指定されています) を /global/dns/named 下に配置します。

  7. Sun Cluster HA for DNS のすべてのクライアントで、DNS サービスの論理ホスト名のためのエントリを /etc/resolv.conf ファイルに作成します。

    すべてのノードで、/etc/resolv.conf を編集して論理ホスト名を登録します。たとえば、schost-1.eng.sun.com という論理ホスト名の 4 ノード構成のエントリ (phys-schost-1phys-schost-2phys-schost-3phys-schost-4) は、次のようになります。


    domain eng.sun.com
     
    ; schost-1.eng.sun.com
     
    (すでにファイルが存在する場合はこのエントリのみ追加)
     
    nameserver 192.29.72.90
     
    ; phys-schost-2.eng
    nameserver 129.146.1.151
     
    ; phys-schost-3.eng
    nameserver 129.146.1.152
     
    ; phys-schost-4.eng
    nameserver 129.144.134.19
     
    ; phys-schost-1.eng
    nameserver 129.144.1.57

    ドメイン名の直後に論理ホスト名のエントリを作成します。DNS は、resolv.conf ファイルにリストされている順番にアドレスを使用してサーバーへのアクセスを試みます。


    注 -

    /etc/resolv.conf がすでにノード上に存在する場合は、前の例で示したように、論理ホスト名を示す最初のエントリだけを追加してください。DNS がサーバーにアクセスする順番は、このエントリの順になります。


  8. すべてのクラスタノードで、/etc/inet/hosts を編集し、DNS サービスの論理ホスト名のためのエントリを作成します。

    次に例を示します。

    • IPaddress には、129.146.87.53 のように実際に使用する IP アドレスを指定します。

    • logicalhostname には、実際に使用する論理ホスト名を指定します。


    127.0.0.1						localhost
    IPaddress						logicalhostname
    
  9. すべてのクラスタノードで、/etc/nsswitch.conf ファイルを編集し、hosts エントリの clusterfiles の後に文字列 dns を追加します。

    次に例を示します。


    hosts:		 	cluster files dns
  10. DNS を検証します。

    検証を行う前に、in.named を必ず停止してください。次に例を示します。


    # cd /global/dns
    # /usr/sbin/in.named -c /global/dns/named.conf
    # nslookup phys-schost-1
    # pkill -x /usr/sbin/in.named
    

次の作業

Sun Cluster のインストール時に、すでに Sun Cluster HA for DNS パッケージがインストールされている場合は、「Sun Cluster HA for DNS の登録と構成」へ進みます。インストールされていない場合は、「Sun Cluster HA for DNS パッケージのインストール」へ進みます。

Sun Cluster HA for DNS パッケージのインストール

scinstall(1M) ユーティリィティは、Sun Cluster HA for DNS データサービスパッケージ (SUNWscdns) をクラスタにインストールします。対話型の scinstall を使用すると、Sun Cluster データサービス CD から特定のデータサービスパッケージをインストールすることができます。また、scinstall-s オプションを指定し、非対話型で使用することで、CD 内のすべてのデータサービスパッケージをインストールすることもできます。scinstall は、以下の手順に従って対話型で使用することをお勧めします。

データサービスパッケージは、Sun Cluster の初期インストール時にインストールされます。インストールされていない場合は、ここで説明する手順を使用してインストールしてください。

Sun Cluster HA for DNS パッケージをインストールする

この手順を実行するには、Sun Cluster データサービス CD が必要です。Sun Cluster HA for DNS を実行できるすべてのクラスタノードで、この手順を実行してください。

  1. データサービス CD を CD-ROM ドライブに挿入します。

  2. オプションは指定せずに、scinstall を実行します。

    scinstall が対話型モードで起動します。

  3. 「Add support for new data service to this cluster node.」メニューオプションを選択します。

    CD 内にある任意のデータサービスのソフトウェアを読み込むことができます。

  4. scinstall を終了し、ドライブから CD を取り出します。

次の作業

Sun Cluster HA for DNS を登録し、データサービス用にクラスタを構成するには、「Sun Cluster HA for DNS の登録と構成」を参照してください。

Sun Cluster HA for DNS の登録と構成

Sun Cluster HA for DNS データサービスを登録して構成するには、Sun Management Center のクラスタモジュールを使用するか、以下の手順を使用します。

Sun Cluster HA for DNS を登録して構成する

この手順を実行するには、構成に関する次の情報が必要になります。

この手順は、任意のクラスタメンバーで実行します。

  1. クラスタ内のノードでスーパーユーザーになります。

  2. データサービスのリソースタイプを登録します。


    # scrgadm -a -t SUNW.dns
    
    -a

    データサービスのリソースタイプを追加します。

    -t SUNW.dns

    データサービス用に事前に定義したリソースタイプ名を指定します。

  3. 論理ホスト名および DNS リソースが使用するリソースグループを作成します。

    必要に応じて、-h オプションを指定してデータサービスを実行できる一群のノードを選択することもできます。


    # scrgadm -a -g resource-group-name [-h nodelist]
    -g resource-group-name

    リソースグループの名前を指定します。任意の名前を指定できますが、クラスタ内で一意のリソースグループにする必要があります。

    -h nodelist ...

    潜在的マスターを識別する物理ノード名または ID をコンマで区切って指定します (任意)。フェイルオーバー時は、この順序で主ノードが決まります。


    注 -

    -h を使用してノードリストの順序を指定します。クラスタ内のすべてのノードが潜在的マスターの場合、-h オプションを使用する必要はありません。


  4. 使用する論理ホスト名がすべて、ネームサービスデータベースに追加されていることを確認します。

    Sun Cluster のインストールの一部として、この確認を行います。詳細は、『Sun Cluster 3.0 ソフトウェアのインストール』の計画に関する章を参照してください。


    注 -

    ネームサービスの検索が原因で障害が発生するのを防ぐために、サーバーおよびクライアントの /etc/hosts ファイルに、すべての論理ホスト名が登録されていることを確認してください。サーバーの /etc/nsswitch.conf のネームサービスマッピングは、NIS または NIS+ にアクセスする前に最初にローカルファイルを検査するように構成してください。


  5. 論理ホスト名リソースをリソースグループに追加します。


    # scrgadm -a -L -g resource-group-name ¥
    -l logical-hostname[,logical-hostname] [-j resource-name] ¥
    [-n network-interface-id-list]
    -L

    論理ホスト名リソースを指定します。

    -l logical-hostname

    論理ホスト名をコンマで区切って指定します。

    -j resource-name

    ネットワークリソース名を指定します (省略可能)。リソース名を指定しない場合、ネットワークリソース名は、デフォルトで -l オプションで最初に指定した名前になります。

    -n network-interface-id-list

    各ノードの NAFO グループをコンマで区切って指定します (省略可能)。リソースグループの nodelist 内のすべてのノードが、network-interface-list に含まれている必要があります。このオプションを指定しない場合は、scrgadm は、nodelist 内の各ノードの hostname リストによって指定されるサブネット上からネットアダプタを見つけようとします。

  6. DNS アプリケーションリソースをリソースグループに追加します。


    # scrgadm -a -j [resource-name] -g resource-group-name ¥
    -t SUNW.dns -y Network_resources_used=network-resource,... ¥
    -y Port_list=port-number/protocol -x DNS_mode=config-file-name ¥ 
    -x Confdir_list=config-directory
    
    -j resource-name

    DNS アプリケーションリソース名を指定します。

    -t SUNW.dns

    リソースグループが属するリソースタイプの名前を指定します。このエントリは必須です。

    -y Network_resources_used=network-resource, ...

                      

    DNS が使用するネットワークリソース (論理ホスト名) をコンマで区切って指定します。このプロパティを指定しない場合は、デフォルトで、リソースグループに含まれるすべての論理ホスト名になります。

    -y Port_list=port-number/protocol

    使用するポート番号とプロトコルを指定します。このプロパティを指定しない場合は、デフォルトで 53/udp が使用されます。

    -x DNS_mode=config-file-name

    conf (named.conf) または boot (named.boot) のいずれかの構成ファイルを指定します。このプロパティを指定しない場合は、デフォルトで conf が使用されます。

    -x Confdir_list=config-directory

    DNS 構成ディレクトリパスの場所を指定します。必ず、クラスタファイルシステム上の場所である必要があります。これは、Sun Cluster HA for DNS の必須拡張プロパティです。

  7. リソースと障害モニターを有効にし、リソースグループを管理状態に移行し、オンラインにします。


    # scswitch -Z -g resource-group-name
    
    -Z

    リソースとモニターを有効にし、リソースグループを管理状態に移行し、オンラインにします。

    -g resource-group-name

    リソースグループの名前を指定します。

例 - フェイルオーバー Sun Cluster HA for DNS の登録

次に、Sun Cluster HA for DNS を 2 ノードクラスタに登録する例を示します。この例の最後で、scswitch コマンドで Sun luster HA for DNS データサービスを起動していることに注意してください。


Cluster Information
Node names: phys-schost-1, phys-schost-2
Logical hostname: schost-1
Resource group: lh-schost-1 (すべてのリソースの場合),  
Resources: schost-1 (論理ホスト名),	dns-1 (DNS アプリケーションリソース) 
 
(DNS リソースタイプの登録)
# scrgadm -a -t SUNW.dns
 
(リソースグループを追加し、すべてのリソースを含む)
# scrgadm -a -g lh-schost-1
 
(論理ホスト名リソースをリソースグループに追加する)
# scrgadm -a -L -g lh-schost-1 -l schost-1 
 
(DNS アプリケーションリソースをリソースグループに追加する)
# scrgadm -a -j dns-1 -g lh-schost-1 -t SUNW.dns ¥
-y Network_resources_used=schost-1 -y Port_list=53/udp ¥
-x DNS_mode=conf -x Confdir_list=/global/dns
 
(フェイルオーバーリソースグループをオンラインにする)
 
# scswitch -Z -g lh-schost-1

SUNW.HAStorage リソースタイプを構成する

SUNW.HAStorage リソースタイプは、HA 記憶装置とデータサービス間の動作を同期させます。Sun Cluster HA for DNS は、ディスクに負荷をかけず、スケーラブルではないので、SUNW.HAStorage リソースタイプの設定は任意です。

このリソースタイプの詳細については、SUNW.HAStorage(5) のマニュアルページおよび 「リソースグループとディスクデバイスグループの関連性」を参照してください。設定手順については、新しいリソース用に SUNW.HAStorage リソースタイプを設定する」を参照してください。

データサービスのインストールと構成の確認

Sun Cluster HA for DNS が正しくインストールされ、構成されていることを確認するには、「Sun Cluster HA for DNS を登録して構成する」で説明されている手順を完了した後で、次のコマンドを実行します。


# nslookup logical-hostname logical-hostname

この例では、logical-hostname は、DNS 要求をサービスするために構成したネットワークリソースの名前です。前述の登録の例では、schost-1 がこれに該当します。出力では、指定した論理ホストによってクエリが処理されたことが示されます。

Sun Cluster HA for DNS 拡張プロパティの構成

DNS リソースを作成するための必須拡張プロパティは、Confdir_list のみです。

すべての Sun Cluster プロパティについての詳細は、付録 A 「標準プロパティ」を参照してください。

Sun Cluster HA for DNS 拡張プロパティを構成する

通常、拡張プロパティは、Sun Cluster HA for DNS リソースの作成時に、Sun Management Center のクラスタモジュールを使用するか、scrgadm -x parameter=value コマンド行を使用して構成します。または、第 9 章で説明する手順を使用し、後で構成することもできます。

表 6-2 に、Sun Cluster HA for DNS の拡張プロパティを示します。拡張プロパティには、動的に更新されるものと、リソースが作成されたときにのみ更新されるものとがあります。調整の列は、いつプロパティを更新できるかを示しています。

表 6-2 Sun Cluster HA for DNS 拡張プロパティ

名前/データタイプ 

デフォルト 

範囲 

調整 

説明 

Confdir_ list (文字配列)

なし 

なし 

作成時 

パス名をコンマで区切ったリスト。各パス名は、DNS インスタンスの conf ディレクトリを含むディレクトリを示します。

DNS_mode

conf

なし 

作成時 

使用する DNS 構成ファイル。conf (named.conf) または boot (named.boot) を指定します。

Monitor_ retry_ count (整数)

0 - 2,147,483,641 

 

-1 は、再試行の数が無限であることを示す。 

任意の時点 

Monitor_retry_interval プロパティによって指定された時間範囲内に、プロセスモニターが障害モニターを再起動する回数。このプロパティは、障害モニターの再起動について制御するのであって、リソースの再起動を制御するわけではありません。リソースの再起動は、システム定義プロパティの Retry_interval および Retry_count によって制御されます。

Monitor_ retry_ interval (整数)

0 - 2147483641 

 

-1 は、再試行の間隔が無限であることを示す。 

任意の時点 

障害モニターの失敗がカウントされる期間 (分)。この期間内に、障害モニターの失敗の数が、拡張プロパティ Monitor_retry_count で指定した値を超えた場合、プロセスモニターは障害モニターを再起動しません。

Probe_ timeout (整数)

30 

0 - 2,147,483,641 

任意の時点 

DNS インスタンスの検証に障害モニターが使用するタイムアウト値 (秒)