この章では、Sun Cluster データサービスのインストールと構成を計画するにあたってのガイドラインを説明します。この章の内容は次のとおりです。
データサービス、リソースタイプ、リソース、およびリソースグループの詳細は、『Sun Cluster の概念 (Solaris OS 版) 』を参照してください。
Sun Cluster ソフトウェアがサービスを提供できるのは、Sun Cluster 製品で提供されるデータサービス、または、Sun Cluster データサービス API (Application Programming Interface) で作成されたデータサービスだけです。
お使いのアプリケーションに Sun Cluster データサービスが提供されていない場合は、そのアプリケーション用のカスタムデータサービスの開発を検討してください。カスタムデータサービスを開発するには、Sun Cluster データサービス API を使用します。詳細は、『Sun Cluster データサービス開発ガイド (Solaris OS 版)』を参照してください。
Sun Cluster は、sendmail(1M) サブシステム用のデータサービスは提供していません。sendmail サブシステムを個々のクラスタノードで実行することは可能ですが、sendmail の機能は高可用性ではありません。この制限は、sendmail のすべての機能 (メールの配信、メールの経路設定、待ち行列化、再試行) に適用されます。
この節では、Sun Cluster データサービスを構成するためのガイドラインを説明します。
Solaris と Sun Cluster のインストールを開始する前に、すべてのデータサービスの要件を確認します。計画に不備があった場合、インストールエラーが発生し、Solaris や Sun Cluster ソフトウェアを完全にインストールし直す必要が生じる可能性もあります。
たとえば、Sun Cluster Support for Oracle Parallel Server/Real Application Clusters の Oracle Parallel Fail Safe/Real Application Clusters Guard オプションには、ユーザーがクラスタ内で使用するホスト名に関する特殊な要件があります。Sun Cluster HA for SAP にも特殊な要件があります。Sun Cluster ソフトウェアをインストールした後にホスト名は変更できないため、このような必要条件は Sun Cluster ソフトウェアをインストールする前に調整しておく必要があります。
一部の Sun Cluster データサービスは、x86 ベースのクラスタでは使用できません。詳細については、http://docs.sun.com で、ご使用のリリースの Sun Cluster のリリースノートを参照してください。
アプリケーションソフトウェアおよびアプリケーション構成ファイルは、次のいずれかの場所にインストールできます。
各クラスタノードのローカルディスク – ソフトウェアと構成ファイルを個々のクラスタノードに配置すると、次のようなメリットが得られます。あとでアプリケーションを更新する場合に、サービスを停止することなく実施できます。
ただし、ソフトウェアや構成ファイルの異なるコピーが存在するため、保守や管理をするファイルが増えるという欠点があります。
クラスタファイルシステム – アプリケーションバイナリをクラスタファイルシステムに格納した場合、保守や管理をするコピーが 1 つだけになります。しかし、アプリケーションソフトウェアをアップグレードするには、クラスタ全体でデータサービスを停止する必要があります。アップグレード時に多少の時間停止できるようであれば、アプリケーションおよび構成ファイルの 1 つのコピーをクラスタファイルシステムに格納することが可能です。
クラスタファイルシステムの作成方法については、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』の「グローバルデバイス、デバイスグループ、およびクラスタファイルシステムの計画」を参照してください。
HA ローカルファイルシステム – HAStoragePlus を使用すると、ローカルファイルシステムを Sun Cluster 環境に統合して、ローカルファイルシステムの可用性を高めることができます。HAStoragePlus は、Sun Cluster でローカルファイルシステムのフェイルオーバーを行うための付加的なファイルシステム機能 (チェック、マウント、強制的なマウント解除など) も提供します。フェイルオーバーを行うには、アフィニティースイッチオーバーが有効な広域ディスクグループ上にローカルファイルシステムが存在していなければなりません。
HAStoragePlus リソースタイプを使用する方法については、「高可用性ローカルファイルシステムの有効化」を参照してください。
nsswitch.conf ファイルは、ネームサービスの検索用の構成ファイルです。このファイルは次の情報を指定します。
ネームサービスの検索に使用する Solaris 環境内のデータベース
データベースの検索順序
一部のデータサービスについては、「group」検索の対象の先頭を「files」に変更してください。具体的には、nsswitch.conf ファイル内の「group」行を変更し、「files」エントリが最初にリストされるようにします。「group」行を変更するかどうかを判断するには、構成するデータサービスのマニュアルを参照してください。
Sun Cluster 環境用に nsswitch.conf ファイルを構成する方法の詳細については、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』の「Sun Cluster 環境の計画」を参照してください。
データサービスによっては、Sun Cluster の要件を満たす必要があります。特別な検討事項が適用されるかどうかを判断するには、構成するデータサービスに関するマニュアルを参照してください。
クラスタファイルシステムの作成方法については、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』の「グローバルデバイス、デバイスグループ、およびクラスタファイルシステムの計画」を参照してください。
リソースタイプ HAStoragePlus を使用すると、フェイルオーバー用に構成された Sun Cluster 環境で HA ローカルファイルシステムを使用できます。HAStoragePlus リソースタイプを設定する方法については、「高可用性ローカルファイルシステムの有効化」を参照してください。
SMF (Service Management Facility) を使用すると、ノードの起動中またはサービス障害中に自動的に SMF サービスを起動および再起動することができます。この機能は、クラスタアプリケーションに高可用性とスケーラビリティーを実現する、Sun Cluster Resource Group Manager (RGM) に似ています。SMF サービスと RGM の機能は相互に補完的です。
Sun Cluster には、3 つの新しい SMF プロキシリソースタイプが含まれています。これらを使用すると、フェイルオーバー、マルチマスター、またはスケーラブル構成の Sun Cluster とともに SMF サービスが実行できるようになります。SMF プロキシリソースタイプを使用すると、相互関係のある SMF サービスのセットを 1 つのリソースにカプセル化し、SMF プロキシリソースを Sun Cluster で管理することができます。この機能では、SMF は 1 つのノード上の SMF サービスの可用性を管理します。Sun Cluster は、SMF サービスの、クラスタ全体にわたる高い可用性とスケーラビリティーを提供します。
これらのサービスのカプセル化の詳細については、「Sun Cluster 上で Solaris SMF サービスを有効にする」を参照してください。
Sun Cluster で、Solaris Service Management Facility (SMF) と統合されるアプリケーション (NFS または DNS 以外) を高可用性にする必要が生じる場合があります。障害発生後 Sun Cluster がアプリケーションを正しく再起動またはフェイルオーバーできるようにするには、次のように、アプリケーションの SMF サービスインスタンスを無効にする必要があります。
NFS または DNS 以外のアプリケーションの場合、アプリケーションを表す Sun Cluster リソースのすべての潜在的主ノード上で SMF サービスインスタンスを無効にします。
アプリケーションの複数のインスタンスが、Sun Cluster で監視する必要があるコンポーネントを共有している場合、そのアプリケーションのすべてのサービスインスタンスを無効にします。このようなコンポーネントの例としては、デーモン、ファイルシステム、デバイスなどがあります。
アプリケーションの SMF サービスインスタンスを無効にしないと、Solaris SMF と Sun Cluster の両方がアプリケーションの起動とシャットダウンを制御しようとする場合があります。その結果、アプリケーションの動作が予測不可能になる場合があります。
詳細については、次のマニュアルを参照してください。
『System Administration Guide: Basic Administration』の「How to Disable a Service Instance」
『Sun Cluster Data Service for DNS Guide for Solaris OS』
Sun Cluster は、デバイスグループとリソースグループに関し、ノードリストという概念を持っています。ノードリストには、ディスクデバイスグループまたリソースグループの潜在的マスターであるノードが順にリストされています。Sun Cluster はフェイルバックポリシーを使用して、次の条件のセットに対応する Sun Cluster の動作を決定します。
障害が発生しクラスタを離脱していたノードまたはゾーンが、クラスタに再結合する。
クラスタに再結合するノードまたはゾーンが、現在の主ノードまたはゾーンよりも先にノードリストに出現する。
フェイルバックが True に設定されていると、デバイスグループまたはリソースグループが現在の主ノードから、再結合したノードに切り替えられ、このノードが新しい主ノードになります。
たとえば、ノード phys-schost-1 と phys-schost-2 が含まれるノードリストを持つディスクデバイスグループ disk-group-1 があり、フェイルバックポリシーが Enabled に設定されているとします。さらに、 アプリケーションデータの保持に disk-group-1 を使用する resource-group-1 というフェイルオーバーリソースグループも持っているとします。このような場合は、resource-group-1 を設定するときに、リソースグループのノードリストに phys-schost-1 と phys-schost-2 も指定し、フェイルバックポリシーを True に設定します。
スケーラブルリソースグループの高可用性を保証するためには、そのスケーラブルサービスグループのノードリストをディスクデバイスグループのノードリストのスーパーセットにします。このようにすることで、ディスクに直接接続されるノードは、スケーラブルリソースグループを実行するノードまたはゾーンになります。この利点は、データに接続されている少なくとも 1 つのクラスタノードがクラスタで起動されていれば、スケーラブルリソースグループがこれらと同じノード上で実行さている時に、スケーラブルサービスが利用できることです。
デバイスグループとリソースグループの関係の詳細については、『Sun Cluster の概要 (Solaris OS 版)』の「デバイスグループ」を参照してください。
デバイスグループの設定方法の詳細は、次のマニュアルを参照してください。
HAStoragePlus リソースタイプは、次のオプションの構成をするために使用できます。
ディスクデバイスとリソースグループの起動の順番を調整します。HAStoragePlus リソースを含むリソースグループのそのほかのリソースがオンラインになるのは、ディスクデバイスリソースが利用可能になったあとに限られます。
AffinityOn を True に設定することで、リソースグループとディスクデバイスグループを同一ノード上に配置します。このような配置により、ディスクに負荷をかけるデータサービスのパフォーマンスが向上します。
また、HAStoragePlus はローカルおよび広域ファイルシステムをマウントすることができます。詳細については、「クラスタファイルシステムの構成の計画」を参照してください。
HAStoragePlus リソースがオンラインの間にデバイスグループが別のノードに切り替えられた場合、AffinityOn の設定は効果がありません。リソースグループはデバイスグループとともに移行することはありません。一方、リソースグループが別のノードに切り替わった場合、AffinityOn が True に設定されていると、デバイスグループはリソースグループと一緒に新しいノードに移動します。
デバイスグループとリソースグループ間の関係については、「リソースグループとデバイスグループ間での起動の同期」を参照してください。
VxFS や Solaris ZFS (Zettabyte File System) などのファイルシステムをローカルモー ドでマウントする手順については、「高可用性ローカルファイルシステムの有効化」を参照してください。詳細は、SUNW.HAStoragePlus(5)のマニュアルページを参照してください。
次のタイプのデータサービスには HAStoragePlus が必要です。
記憶装置に直接接続されていないノードを持つデータサービス
ディスクに負荷をかけるデータサービス
データサービスのリソースグループのノードリストにあるノードの中には、記憶装置に直接接続されていないものがある場合があります。このような状況では、記憶装置とデータサービス間の起動の順番を調整する必要があります。この要件を満たすには、リソースグループを次のように構成します。
HAStoragePlus リソースをリソースグループ内で構成します。
そのほかのデータサービスリソースの依存性を HAStoragePlus リソースに設定します。
Sun Cluster HA for Oracle や Sun Cluster HA for NFS など、データサービスの中にはディスクに負荷をかけるものがあります。ディスクに負荷をかけるデータサービスの場合、リソースグループとデバイスグループを同じノード上に配置します。この要件を満たすには、次の作業を行います。
HAStoragePlus リソースをデータサービスリソースグループに追加します。
HAStoragePlus リソースをオンラインに切り替えます。
HAStoragePlus リソースにデータサービスリソースの依存性を設定します。
AffinityOn を True に設定します。
フェイルバック設定は、リソースグループとデバイスグループで同一にする必要があります。
データサービスの中にはディスクに負荷をかけないものもあります。たとえば Sun Cluster HA for DNS は、起動時にファイルをすべて読み込むため、ディスクに負荷をかけません。データサービスがディスクに負荷をかけない場合、HAStoragePlus リソースタイプの構成はオプションです。
この節の情報は、データサービスのインストールまたは構成について計画する場合に利用してください。これらの情報に目を通すことで、ユーザーの決定がデータサービスのインストールと構成に及ぼす影響について理解できるでしょう。特定のデータサービスについては、そのデータサービスのマニュアルを参照してください。
ディスク障害時の入出力サブシステム内の再試行により、データサービスがディスクに負荷をかけるアプリケーションでは、遅延が生じることがあります。ディスクに負荷をかけるデータサービスは入出力中心で、クラスタ内で多数のディスクを構成しているものです。入出力サブシステムが再試行し、障害から回復するまで、数分かかることもあります。この遅延によって、最終的にディスクが自分自身で回復したとしても、Sun Cluster がアプリケーションを別のノードにフェイルオーバーすることがあります。このような場合のフェイルオーバーを回避するには、データサービスのデフォルトの検証タイムアウト値を増やしてみてください。データサービスのタイムアウトについての詳細や、タイムアウト値を増やす方法については、ご購入先にお問い合わせください。
よりよいパフォーマンスを保つために、ストレージに直結されたクラスタノードにデータサービスをインストールし、構成してください。
クラスタノード上で動作するクライアントアプリケーションは、HA データサービスの論理 IP アドレスにマッピングしてはなりません。フェイルオーバー後、このような論理 IP アドレスは存在しなくなり、クライアントが切断されたままになる可能性があります。
データサービスを構成するときに、次のノードリストプロパティーを指定できます。
installed_nodes プロパティー
nodelist プロパティー
auxnodelist プロパティー
installed_nodes プロパティーは、データサービスのリソースタイプのプロパティーです。このプロパティーには、リソースタイプがインストールされ、実行が有効になるクラスタノード名の一覧が含まれます。
nodelist プロパティーは、リソースグループのプロパティーです。このプロパティーは、優先順位に基づいて、グループをオンラインにできるクラスタノード名またはゾーン名のリストを指定します。これらのノードは、リソースグループの潜在的主ノードまたはマスターです。フェイルオーバーサービスについては、リソースグループノードリストを 1 つだけ設定します。スケーラブルサービスの場合は、2 つのリソースグループを設定するため、ノードリストも 2 つ必要になります。一方のリソースグループとノードリストには、共有アドレスをホストするノードが含まれます。このノードリストは、スケーラブルリソースが依存するフェイルオーバーリソースグループを構成します。もう一方のリソースグループとそのノードリストは、アプリケーションリソースをホストするノードを識別します。アプリケーションリソースは、共有アドレスに依存します。共有アドレスを含むリソースグループ用のノードリストは、アプリケーションリソース用のノードリストのスーパーセットになる必要があるためです。
auxnodelist プロパティーは、共有アドレスリソースのプロパティーです。このプロパティは、クラスタノードを識別する物理ノード ID の一覧が含まれます。このクラスタノードは共有アドレスをホストできますが、フェイルオーバー時に主ノードになることはありません。これらのノードは、リソースグループのノードリストで識別されるノードとは、相互に排他的な関係になります。このノードリストは、スケーラブルサービスにのみ適用されます。詳細は、clressharedaddress(1CL) のマニュアルページを参照してください。
データサービスをインストールして構成するには、次の手順を使用します。
パッケージが提供されているインストールメディアから、データサービスパッケージをインストールします。
Sun Cluster CD-ROM
Sun Cluster Agents CD-ROM
クラスタ環境で実行するアプリケーションをインストールして構成する。
データサービスが使用するリソースおよびリソースグループを構成する。データサービスを構成するときは、リソースグループマネージャー (RGM) によって管理される、リソースタイプ、リソース、リソースグループを指定します。これらの手順は、各データサービスに関するマニュアルで説明されています。
データサービスのインストールと構成を開始する前に、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』を参照してください。このマニュアルには次の作業に関する手順が説明されています。
データサービスソフトウェアパッケージのインストール
ネットワークリソースが使用する Internet Protocol Network Multipathing (IP Networking Multipathing) グループの構成
以下のデータサービスのインストールと構成には、Sun Cluster Manager を使用できます。Sun Cluster HA for Oracle、Sun Cluster HA for Sun JavaTM System Web Server、Sun Cluster HA for Sun Java System Directory Server、Sun Cluster HA for Apache、Sun Cluster HA for DNS、および Sun Cluster HA for NFS。詳細については、Sun Cluster Manager のオンラインヘルプを参照してください。
次の表に、Sun Cluster データサービスのインストールと構成作業の概要を示します。作業手順の詳細が記載されている参照先も示します。
表 1–1 Sun Cluster データサービスをインストールおよび構成するための作業
作業 |
参照先 |
---|---|
Solaris と Sun Cluster ソフトウェアのインストール | |
IP ネットワークマルチパス グループの設定 | |
多重ホストディスクの設定 | |
リソースとリソースグループの計画 | |
アプリケーションバイナリの格納先の決定 (nsswitch.conf の構成) | |
アプリケーションソフトウェアのインストールと構成 |
該当する Sun Cluster データサービスブック |
データサービスソフトウェアパッケージのインストール |
『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』 or the appropriate Sun Cluster data services book |
データサービスの登録と構成 |
該当する Sun Cluster データサービスブック |
この例では、Oracle アプリケーション用のフェイルオーバーデータサービスが必要とする、リソースタイプ、リソース、リソースグループを設定する方法を紹介します。Oracle アプリケーション用のデータサービスを構成する手順の詳細は、『Sun Cluster Data Service for Oracle Guide for Solaris OS 』を参照してください。
この例とスケーラブルデータサービスの例の主な相違点は、次のとおりです。ネットワークリソースを含むフェイルオーバーリソースグループに加え、スケーラブルデータサービスには、アプリケーションリソース用の独立したリソースグループ (スケーラブルリソースグループ) が必要です。
Oracle アプリケーションは、サーバーとリスナーの 2 つのコンポーネントを持ちます。Sun は Sun Cluster HA for Oracle データサービスを提供しているため、これらのコンポーネントはすでに Sun Cluster リソースタイプに対応付けられています。これら両方のリソースタイプが、リソースとリソースグループに関連付けられます。
この例は、フェイルオーバーデータサービスの例なので、論理ホスト名ネットワークリソースを使用し、主ノードから二次ノードにフェイルオーバーする IP アドレスを使用します。フェイルオーバーリソースグループに論理ホスト名リソースを入れ、Oracle サーバーリソースとリスナーリソースを同じリソースグループに入れます。この順に入れることで、フェイルオーバーを行うすべてのリソースが 1 つのグループになります。
Sun Cluster HA for Oracle をクラスタ上で実行するには、次のオブジェクトを定義する必要があります。
LogicalHostname リソースタイプ – このリソースタイプは組み込まれているため、明示的に登録する必要はありません。
Oracle リソースタイプ – Sun Cluster HA for Oracle は、2 つの Oracle リソースタイプ (データベースサーバーとリスナー) を定義します。
論理ホスト名リソース – これらのリソースは、ノードで障害が発生した場合にフェイルオーバーする IP アドレスをホストします。
Oracle リソース – Sun Cluster HA for Oracle— 用に 2 つのリソースインスタンス (サーバーとリスナー) を指定する必要があります。
フェイルオーバーリソースグループ – 1 つのグループでフェイルオーバーを行う、Oracle サーバーとリスナー、および論理ホスト名リソースで構成されています。
この節では、インストールや構成の作業に使用するツールについて説明します。
Sun Cluster Manager は、次の作業を実行できる Web ベースのツールです。
クラスタのインストール
クラスタの管理
リソースやリソースグループの作成と構成
Sun Cluster ソフトウェアを使ったデータサービスの構成
Sun Cluster Manager では、次のアプリケーションに対して Sun Cluster のデータサービスの構成を自動化するためのウィザードを用意しています。
Apache Web Server
NFS
Oracle
Oracle Real Application Clusters
SAP Web Application Server
各ウィザードでは、データサービスが必要とする Sun Cluster リソースを構成できます。このウィザードでは、Sun Cluster 構成で実行するためのアプリケーションソフトウェアのインストールと構成は自動化されません。Sun Cluster 構成で実行できるようにアプリケーションソフトウェアのインストールと構成を実行するには、アプリケーションのユーティリティおよび Sun Cluster の保守コマンドを使用してください。詳細については、アプリケーションのドキュメントおよび Sun Cluster のドキュメントセットを参照してください。各ウィザードでサポートされているデータサービスの構成オプションは制限されています。ウィザードでサポートされていないオプションを構成するには、Sun Cluster Manager または Sun Cluster の保守コマンドを使用して、データサービスの構成を手作業で実行します。詳細は、Sun Cluster のマニュアルを参照してください。
Sun Cluster Manager には、次の Sun Cluster リソースの構成を自動化するウィザードがあります。
論理ホスト名リソース
共有アドレスリソース
高可用性ストレージリソース
ウィザードを使用して作成したリソースは、データサービスの構成にかかわらず、どのデータサービスでも使用できます。
Sun Cluster Manager を使用してクラスタソフトウェアをインストールする方法については、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』を参照してください。管理作業については、Sun Cluster Manager のオンラインヘルプを参照してください。
Sun Cluster モジュールを使用すると、クラスタの監視やリソースおよびリソースグループに対する処理の一部を Sun Management Center GUI から行えます。Sun Cluster モジュールのインストールの要件と手順については、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』を参照してください。Sun Management Center に関する詳細が説明されている Sun Management Center ソフトウェアマニュアルのセットを参照するには、http://docs.sun.com にアクセスしてください。
clsetup(1CL) ユーティリティーは、メニュー主導型のインタフェースで、Sun Cluster の一般的な管理に使用できます。このユーティリティーは、さらに、データサービスのリソースやリソースグループの構成にも使用できます。この場合には、clsetup のメインメニューからオプション 2 を選択して、「リソースグループ」というサブメニューを起動してください。
Sun Cluster の保守コマンドを使用すると、データサービスリソースを登録および構成することができます。データサービスの登録と構成の方法については、データサービスのブックを参照してください。たとえば Sun Cluster HA for Oracle を使用する場合は、『Sun Cluster Data Service for Oracle Guide for Solaris OS』の「Registering and Configuring Sun Cluster HA for Oracle」の手順を参照してください。
これらのコマンドを使用してデータサービスリソースを管理する方法については、第 2 章「データサービスリソースの管理」を参照してください。
次の表に、データサービスリソースの管理に使用できるツールを作業ごとに示します。これらの作業の詳細や、関連する手順をコマンド行から行う方法については、第 2 章「データサービスリソースの管理」を参照してください。
表 1–2 データサービスリソースを管理するためのツール
作業 |
Sun Cluster Manager |
SPARC:Sun Management Center |
clsetup ユーティリティー |
---|---|---|---|
リソースタイプを登録する |
+ |
_ |
+ |
リソースグループを作成 |
+ |
_ |
+ |
リソースグループへソースを追加する |
+ |
_ |
+ |
リソースグループの自動回復アクションを保存停止する |
+ |
_ |
+ |
リソースグループの自動回復アクションを再開する |
+ |
_ |
+ |
リソースグループをオンラインにする |
+ |
+ |
+ |
リソースグループを削除 |
+ |
+ |
+ |
リソースを削除する |
+ |
+ |
+ |
リソースグループの現在の主ノードを切り替える |
+ |
_ |
+ |
リソースを使用可能にする |
+ |
+ |
+ |
リソースを使用不可にする |
+ |
+ |
+ |
リソースグループを非管理状態に移行する |
+ |
_ |
+ |
リソースタイプ、リソースグループ、リソース構成情報を表示する |
+ |
+ |
+ |
リソースプロパティを変更する |
+ |
_ |
+ |
リソースの STOP_FAILED エラーフラグを消去する |
+ |
_ |
+ |
リソースの START_FAILED リソース状態を解除する |
+ |
_ |
+ |
ノードをリソースグループに追加する |
+ |
_ |
+ |