Calendar Server の高可用性 (HA) 設定により、ソフトウェアとハードウェアの障害を監視し、回復処理を行うことができます。Calendar Server の高可用性機能は、フェイルオーバーサービスとして実装されます。この章では、Sun Cluster ソフトウェアによる Calendar Server HA の設定について説明します。
この章では、Calendar Server HA サービスのインストールと設定の方法について、次の項目で説明します。
付録 C 「高可用性 (HA) 設定のワークシート」 には、Calendar Server の高可用性設定の計画に役立つワークシートが用意されています。
Calendar Server の HA 設定には、次の表に示すソフトウェアが必要です。
ソフトウェアとバージョン |
注意とパッチ |
---|---|
Solaris 9 OS SPARC プラットフォームのみ |
Solaris 9 OS のすべてのバージョンがサポートされます。 Solaris 9 OS は Sun Cluster 3.0 U3 以降を必要とします。 Solaris 9 OS には Solaris LVM (Logical Volume Manager) が含まれます。 |
Solaris 8 OS SPARC プラットフォームのみ |
Solaris 8 MU7 (Maintenance Update 7) OS 以降、および必要パッチの追加 |
Sun Cluster 3.0 U3 または 3.1 |
クラスタのすべてのノードに Sun Cluster ソフトウェアがインストールされ、設定が完了している必要があります。 Sun Cluster 3.1 をインストールするには、『Sun Java Enterprise System 2005Q4 Installation Guide for UNIX』に記載されているインストール手順に従って Java Enterprise System インストーラを使用します。 Sun Cluster ソフトウェアのインストールが完了したら、クラスタを設定する必要があります。詳細は、Sun Cluster System Administration Guide for Solaris OSを参照してください。関連するマニュアルについては、「関連マニュアル」を参照してください。 Sun Cluster のパッチ Solaris 9 OS については、Sun Cluster InfoDoc 49704 を参照してください。 Solaris 8 OS については、Sun Cluster InfoDoc 49705 を参照してください。 |
Solstice DiskSuite 4 |
Solstice DiskSuite は Solaris 8 OS だけで利用できます。 Solaris 9 OS には LVM (Logical Volume Manager) が含まれるので、Solstice DiskSuite は必要ありません。 |
VxVM (Veritas Volume Manager) 3.x |
Solaris 8 OS はバージョン 3.2 以降および必須パッチを必要とします。 Solaris 9 OS はバージョン 3.5 以降および必須パッチを必要とします。 |
VxFS (Veritas File System) 3.x |
Solaris 8 OS はバージョン 3.4 以降および必須パッチを必要とします。 Solaris 9 OS はバージョン 3.5 以降および必須パッチを必要とします。 HAStoragePlus は 110435-08 以降のパッチを必要とします。 |
ここで紹介する Calendar Server の HA 設定の例では、次の名前を使用します。
例で使用する名前 |
説明 |
---|---|
/global/cal/ |
グローバルファイルシステムのマウントポイント |
cal-logical-host |
論理ホスト名 |
cal-logical-host-ip |
論理ホストの IP 数値アドレス |
cs-admin@cal-logical-host |
Calendar Server 管理者の電子メールアドレス |
cal-node-1 |
ノード 1 |
cal-node-2 |
ノード 2 |
cal-resource-group |
カレンダリソースグループ |
cal-resource-group-store |
Calendar Server のストレージリソース |
cal-resource |
Calendar Server リソース |
これは Calendar Server HA 設定のインストールおよび設定に必要な手順の詳細なリストです。
Calendar Server の HA 設定をインストールおよび設定するには、スーパーユーザー (root) としてログインするか、スーパーユーザーになり、/dev/console に送信されるメッセージを表示するコンソールまたはウィンドウを指定します。
クラスタ内の各ノードで次の手順を実行します。
次の方法で、Calendar Server を実行する Calendar Server ランタイムユーザーおよびグループを作成します。
/etc/group ファイルに icsgroup (または選択した値) を追加します。
/etc/passwd ファイルに icsuser (または選択した値) を追加します。
デフォルト名は icsuser と icsgroup です。別の名前を使用することもできますが、UID と GID の番号は、クラスタ内のすべてのノードで同一である必要があります。ユーザー名を root とすることはできません。
ユーザー名とグループ名は、「インストール後の設定プログラムを実行する」の手順を実行するときに指定する必要があります。
/etc/vfstab ファイルの次のフィールドを追加または設定します。
mount point を /global/cal (または 「Calendar Server のインストールディレクトリの選択」で選択したファイルシステムのマウントポイント) に設定します。
mount at boot オプションを no に設定します。
mount options を、FFS の場合は logging、GFS の場合は global,logging に設定します。
Sun Java Enterprise System 製品 (Calendar Server など) のインストールは、従来の Sun 製品 (Sun ONE、iPlanet など) から大幅に変更されています。Sun Java Enterprise System 製品をインストールするには、Sun Java Enterprise System インストーラを使用する必要があります。
このインストーラについては、『Sun Java Enterprise System 2005Q4 Installation Guide for UNIX』を参照してください。
次の表は、Calendar Server の HA 設定に必要な Sun の製品とパッケージを示しています。
製品またはパッケージ |
ノード 1 |
ノード 2 |
---|---|---|
Sun Cluster ソフトウェア |
必要 |
必要 |
Calendar Server (6.0 以降) |
必要 |
不要 |
Calendar Server 用の Sun Cluster エージェント (SUNWscics パッケージ) |
必要 |
必要 |
共有コンポーネント (SUNWicu、SUNWldk、SUNWpr、SUNWsasl、SUNWtls の各パッケージ) |
必要 |
必要 |
ノード 1 には、選択されているすべての製品とパッケージを Java Enterprise System インストーラを使用してインストールします。Calendar Server をインストールするときは、デフォルトディレクトリ以外のディレクトリを指定する必要があります。「Calendar Server のインストールディレクトリの選択」を参照してください。
ノード 2 では、次の手順を実行します。
Java Enterprise System インストーラを使用して、Sun Cluster と Calendar Server 用の Sun Cluster エージェント (SUNWscics パッケージ) をインストールします。
注: Calendar Server 用の Sun Cluster エージェントだけをインストールすることはできません。Sun Cluster 用の Sun Java Enterprise System エージェントを選択すると、Java Enterprise System インストーラはすべてのエージェントをインストールします。
pkgadd コマンドを使用して、共有コンポーネント (SUNWicu、SUNWldk、SUNWpr、SUNWsasl、SUNWtls の各パッケージ) をインストールします。「共有コンポーネントのインストール」を参照してください。
Calendar Server のインストールでは、Java Enterprise System インストーラはデフォルトインストールディレクトリ /opt を使用します。
しかし、HA 設定では、グローバルインストールディレクトリを指定する必要があります。例: /global/cal/opt/
ノート 2 で必要な共有コンポーネントを利用できるようにするには、次のパッケージをインストールする必要があります。
SUNWicu – International Components for Unicode User Files
SUNWldk – LDAP C SDK
SUNWpr – Netscape Portable Runtime Interface
SUNWsasl – Simple Authentication and Security Layer (SASL)
SUNWtls – Network Security Services
これらのパッケージは、次のディレクトリに格納されています。
.../Solaris_sparc/Product/shared_components/Packages/SUNWldk .../Solaris_sparc/Product/shared_components/Solaris_8/Packages .../Solaris_sparc/Product/shared_components/Solaris_9/Packages
これらのパッケージをインストールするには、上のいずれかのディレクトリに移動し、pkgadd コマンドを実行します。次に例を示します。
# pkgadd -d . SUNWicu SUNWpr SUNWsasl SUNWtls
論理ホストを設定するには、次の手順を実行します。
cal-resource-group という Calendar Server フェイルオーバーリソースグループを作成します。
# scrgadm -a -g cal-resource-group -h cal-node-2,cal-node-1 |
リソースグループに cal-logical-host という論理ホスト名を追加します。Calendar Server はこのホスト名を待機します。
# scrgadm -a -L -g cal-resource-group -l cal-logical-host |
リソースグループをオンライン状態にします。
# scswitch -Z -g cal-resource-group |
ストレージリソースを有効化するには、次の手順を実行します。
ServicePaths プロパティーにマウントポイントを指定して、ストレージリソースを登録します。
# scrgadm -a -j cal-resource-group-store -g cal-resource-group -t SUNW.HAStorage -x ServicePaths=/global/cal -x AffinityOn=True |
ストレージリソースを有効化します。
# scswitch -e -j cal-resource-group-store |
SUNW.HAStoragePlus がグローバルファイルシステム (GFS) の設定も選択している場合は、ServicePaths プロパティーではなく、FileSystemMountPoints プロパティーの設定が必要です。
Calendar Server のインストールが完了したら、第 2 章「ディレクトリ準備スクリプト (comm_dssetup.pl)」で説明している手順に従って Directory Server セットアップスクリプト (comm_dssetup.pl) と Calendar Server 設定プログラム (csconfigurator.sh) を実行します。
次の表は、HA 設定用に指定が必要な設定情報を示しています。
表 7–1 HA 設定用の Calendar Server 設定オプション
HA 用の自動バックアップを設定するときは、クラスタの個々のノードで不完全なコピーが作成されないように、バックアップディレクトリを共有ストレージパーティションに配置する必要があります。バックアップディレクトリは容量が大きいため、パーティションのサイズに特に注意してください。
シンボリックリンクに対しては、ディスク容量の計算がうまく行われません。このため、自動バックアップディレクトリにはシンボリックリンクを使用しないでください。
Calendar Server は、設定ファイルを config ディレクトリに格納します。以前のリリースの場合は、config ディレクトリの場所が変更されています。新しい場所は次のとおりです。
/etc/opt/SUNWics5/config/
古い config ディレクトリへのシンボリックリンクは次のディレクトリに格納されます。
/opt/SUNWics5/cal
/opt/SUNWics5/cal/lib
/opt/SUNWics5/cal/sbin
Calendar Server 設定プログラム csconfigurator.sh の実行後、後続の手順で説明するように、古い各ディレクトリのシンボリックリンクを削除して新しいディレクトリへのリンクに置き換えます。これらの手順では、/etc/opt/SUNWics5/config にある元の設定ファイルの設定が維持されることに注意してください。
開始する前に、config ディレクトリの内容の所有者が icsuser と icsgroup (またはランタイムユーザー ID とランタイムグループ ID に指定した名前) であることを確認します。
# ls -ld config ... icsuser icsgroup ... config/
/global/cal/opt/SUNWics5/cal ディレクトリに移動します。次に例を示します。
# cd /global/cal/opt/SUNWics5/cal/ |
この /global/cal はファイルシステムのマウントポイントです。
config が新しい config ディレクトリへのシンボリックリンクであることを確認します。次に例を示します。
# ls -l config ... config -\> /etc/opt/SUNWics5/config/ |
/opt/SUNWics5/cal/ ディレクトリでシンボリックリンク config を削除します。
# cd /opt/SUNWics5/cal # rm config |
所有者と権限を維持したまま、/etc/opt/SUNWics5/config の内容を新しい HA ディレクトリにコピーします。
# cd /global/cal/opt/SUNWics5/cal # cp -pr /etc/opt/SUNWics5/config . |
/global/cal/opt/SUNWics5/cal/lib ディレクトリで、config が /etc/opt/SUNWics5/config へのシンボリックリンクであることを確認します。
# cd /global/cal/opt/SUNWics5/cal/lib # ls -l config ... config -\> /etc/opt/SUNWics5/config/ |
config シンボリックリンクを削除します。
# rm config |
新しい config の場所へのシンボリックリンクを作成します。
# ln -s ../config config |
新しいリンクを検証します。
# ls -l config ... config -\> ../config/ |
/global/cal/opt/SUNWics5/cal/lib ディレクトリで、config が /etc/opt/SUNWics5/config へのシンボリックリンクであることを確認します。
# cd /global/cal/opt/SUNWics5/cal/sbin # ls -l config ... config -\> /etc/opt/SUNWics5/config/ |
config シンボリックリンクを削除します。
# rm config |
新しい config の場所へのシンボリックリンクを作成します。
# ln -s ../config config |
新しいリンクを検証します。
# ls -l config ... config -\> ../config/ |
Calendar Server をアンインストールするときは、Java Enterprise System アンインストーラを使用します。このアンインストーラは、SUNWics5 および SUNWica5 パッケージを削除します。
ただし、Calendar Server の HA 設定では、アンインストーラを実行する前に、まず、場所を変更した config ディレクトリとその内容を削除する必要があります。次に例を示します。
# cd /global/cal/opt/SUNWics5/cal/ # rm -rf config |
config ディレクトリを削除しないと、SUNWics5 パッケージのアンインストール処理は失敗します。
/opt/SUNWics5/cal/config ディレクトリで、ics.conf 設定ファイルを次のように編集します。
次のパラメータを追加します。
local.server.ha.enabled="yes" local.server.ha.agent="SUNWscics" |
service.listenaddr パラメータの名前を service.http.listenaddr に変更し、このパラメータに論理ホストの IP アドレスを設定します。次に例を示します。
service.http.listenaddr = "cal-logical-host-ip" |
この “cal-logical-host-ip” は、論理ホストの数値 IP アドレスです。例: 123.321.12.2
ローカルホスト名を参照するすべてのパラメータが、論理ホスト名を参照するように変更します。次に例を示します。
local.hostname="cal-logical-host" local.servername="cal-logical-host" service.ens.host="cal-logical-host" service.http.calendarhostname="cal-logical-host.sesta.com" |
HA Calendar Server を起動する前に、次のようにカレンダリソースのタイプを SUNWscics として登録し、カレンダリソースを作成します。
カレンダリソースのタイプを登録します。
# scrgadm -a -t SUNW.scics |
カレンダリソースを作成します。
# scrgadm -a -j cal-resource -g cal-resource-group -t SUNW.scics -x Confdir_list=/global/cal/cal-resource-group -y Resource_dependencies=cal-resource-group-store -y Port_list=80/tcp |
リソースを有効化し、Calendar Server を起動します。
# scswitch -e -j cal-resource |
Calendar Server を起動したら、すべての必要プロセスまたはデーモン (csadmind、enpd、csnotifyd、cshttpd) が稼動していることを確認します。
また、バックアップノードへのサービスの切り替えを行い、高可用性が確保されていることを確認します。たとえば、サービスが cal-node-1 で稼動している場合、次のコマンドを実行してサービスを cal-node-2 に切り替えます。
# scswitch -z -g cal-resource-group -h cal-node-2
次に、cal-node-2 ですべてのプロセスが開始されることを確認します。
トラブルシューティング用に、エラーメッセージがコンソールと /var/adm/messages に出力されます。
ログレベルは /var/cluster/rgm/rt/SUNW.scics/loglevel ファイルに設定されています。詳細度を最大にするときは、“9” に設定します。
ログ機能の使用方法については、「関連マニュアル」を参照してください。
Calendar Server の HA サービスを起動、停止するときは、Sun Cluster の scswitch コマンドを使用します。Calendar Server の start-cal、csstart、stop-cal、または csstop ユーティリティーを使用しないでください。次に例を示します。
Calendar Server の HA サービスを起動するには
# scswitch -e -j cal-resource
Calendar Server の HA サービスを停止するには
# scswitch -n -j cal-resource
Calendar Server の HA サービスを再起動するには
# scswitch -R -j cal-resource
Sun Cluster の scswitch コマンドについては、『Sun Cluster Reference Manual for Solaris OS』を参照してください。
『Sun Cluster Concepts Guide for Solaris OS』は、Sun Cluster ソフトウェアとデータサービスに関する一般的な背景情報を提供し、リソースタイプ、リソース、リソースグループの用語について解説します。
『Sun Cluster Data Services Planning and Administration Guide for Solaris OS』は、データサービスの計画と管理に関する一般的な情報を提供します。
『Sun Cluster System Administration Guide for Solaris OS』は、Sun Cluster の設定をソフトウェアで管理する手順について解説します。
『Sun Cluster Reference Manual for Solaris OS』は、SUNWscman および SUNWccon パッケージだけで利用できるコマンドも含め、Sun Cluster ソフトウェアで利用できるコマンドとユーティリティーについて解説します。