Solaris Cluster のインストールについては、Oracle Technology Network のサイトから入手可能な『Oracle Solaris Cluster ソフトウェアのインストールガイド』で詳細に説明されています (このドキュメントのソフトウェアパッケージのダウンロードを参照)。
ACSLSHA 8.4 は、Oracle Solaris Cluster 4.2 を使用した Solaris 11.2 でサポートされています。
Cluster ソフトウェアをインストールするには、この手順に従います。
/opt/OSC
ディレクトリを作成します。
# mkdir /opt/OSC
Oracle Cluster 4.2 のダウンロードで決定した操作システムバージョンによっては、Solaris Cluster パッケージの 1 つまたは 2 つの ISO イメージがダウンロードされていることがあります。ダウンロードされた各 Cluster パッケージを /opt/OSC
ディレクトリに移動します。
パッケージを unzip します。unzip されたパッケージごとに ISO イメージを特定します。
各 ISO イメージから擬似デバイスを作成します。
# /usr/sbin/lofiadm -a /opt/OSC/V46190-01.iso # /usr/sbin/lofiadm -a /opt/OSC/osc-4_2_5_1_0-repo-incr.iso
これらのそれぞれについて作成した /dev/lofi
インスタンス番号を追跡します。
/opt/OSC
ディレクトリで、擬似デバイスごとにマウントポイントを作成します。
# mkdir mnt # mkdir mnt1
擬似デバイスをこれらのマウントポイントにマウントします。
# mount –F hsfs –o ro /dev/lofi/1 /opt/OSC/mnt # mount –F hsfs –o ro /dev/lofi/2 /opt/OSC/mnt1
次のいずれかを選択します。
Solaris バージョンが 11.2.13 以上の場合は、手順 8 に進みます。
Solaris バージョンが 11.2.12 以下であって、基本 Cluster イメージのみをダウンロードしている場合、その基本イメージのリポジトリを公開できます。
# pkg set publisher –G ’*’ –g file:/opt/OSC/mnt/repo ha-cluster
このセクションの手順 13 に進んでパッケージをインストールします。
次の手順では、OSC 基本パッケージを読み取り/書き込みファイルシステムにコピーし、パッチ更新を基本パッケージにマージします。
OSC パッケージをマージするための読み取り/書き込みファイルシステムを作成します。
# cd /opt/OSC # mkdir merged_iso
基本 OSC イメージリポジトリを作成されたディレクトリにコピーします。
# cp –r mnt/repo merged_iso
マージされたディレクトリに 2 つのイメージを一緒に同期させます。
# rsync –aP mnt1/repo merged_iso
リポジトリ用に検索インデックスを再構築します。
# pkgrepo rebuild –s merged_iso/repo
マージされたパッケージの ha-cluster
リポジトリを公開します。
# pkg set-publisher –g file:/opt/OSC/merged_iso/repo ha-cluster
Oracle Solaris Cluster パッケージをインストールします。
# pkg install -–accept ha-cluster-full
隣接するノード上で手順 1 から 13 を繰り返します。
scinstall
ルーチンSolaris Cluster のインストールルーチンは、2 台のノード間で一連のチェックを実行して、両方のサーバーからシステム操作をモニターでき、起動およびフェイルオーバーアクションを制御できることを確認します。
準備の手順:
scinstall
を実行する前に、インストールされたクラスタユーティリティーへのパスを含む root
用の環境を構築しておくと便利です。/root/.profile
ファイルを編集します。/usr/cluster/bin
が含まれるようにパス文を変更します。
export PATH=/usr/cluster/bin:/usr/bin:/usr/sbin
この変更は、必ず各ノード上で行なってください。新しいパスを継承させるには、ログアウトして再度ログインするか、または単に su -
を実行します。
rpc/bind
の config/local_only
プロパティーが「false」に設定されていることを確認します。
# svccfg -s network/rpc/bind listprop config/local_only
このプロパティーで「true」が返される場合は、「false」に設定する必要があります。
# svccfg -s network/rpc/bind setprop config/local_only=false
もう一度、確認します。
# svccfg -s network/rpc/bind listprop config/local_only
Cluster ソフトウェアのための重要なハードウェア設定要件は、2 つのノード間でのクラスタ操作のための中断なしの通信を確保するために予約されている 2 つのプライベートネットワーク接続が存在することです。
図2-1 各サーバーノード上の 2 つの Ethernet ポートに接続されている単一の HBCr ライブラリインタフェースカードでは、これらの物理的な接続が (2) というラベルで示されています。単一障害点で Cluster の内部通信が中断される可能性がないように、各接続は別々のネットワークアダプタから始まっています。scinstall
ルーチンは、2 つの接続をそれぞれチェックして、ほかのネットワークトラフィックが流れていないことを確認します。最後に、scinstall
は、2 つのライン間の通信が機能していることを確認します。物理的な接続が確認されたら、このルーチンは各インタフェースを 172.16 で始まる内部のプライベートアドレスに割り当てます。
scinstall
を実行する前に、このプライベート接続用に設定された各サーバー上で、2 つのネットワークポートに割り当てられているネットワークデバイス ID を確認するようにしてください。dladm show-phys
を実行して、インタフェースの割り当てを表示します。
# dladm show-phys
どちらか一方のノードからクラスタを表示するには、論理ホスト名と IP アドレスを確立する必要があります。この論理ホストは、アクティブなホストが node1 と node2 のどちらから実行されているのかに関係なく、確実にネットワーク通信に応答します。
論理ホスト名と論理 IP アドレスが含まれるように、両方のノード上で /etc/hosts
ファイルを更新します。ACSLS HA (ACSLS HA の構成) を起動すると、このホストがアクティブになります。
Cluster を正常にインストールするには、Solaris Common Agent Container を有効にします。エージェントコンテナが有効になっていることを確認します。
# cacaoadm status
システム起動時に、ステータスの応答でエージェントコンテナが「DISABLED」であることが示された場合は、次のように有効にします。
# cacaoadm enable
scinstall
の実行2 台のノードのどちらか一方で、scinstall
コマンドを実行してから、この手順に従います。
メインメニューから「Create a new cluster」を選択します。
サブメニューから「Create a new cluster」を選択します。
初期のデフォルト値を受け入れます。
「Typical」インストールを選択します。
クラスタに名前 (acsls_cluster
など) を割り当てます。
クラスタノードのプロンプトで、隣接するノードのホスト名を入力します。ノードリストが正しい場合は、それを受け入れます。
この目的のために特定された 2 台のプライベートノードの相互接続を定義します。TCP リンクを物理的な接続に割り当てることをインストールルーチンに許可します。
プロンプトに従って、クラスタを作成します。定足数デバイスとして機能する特定のデバイスを特定した場合を除いて、定足数デバイスを選択することを scinstall
ルーチンに許可します。
クラスタチェックが両方のノードで失敗したことがユーティリティーでレポートされても心配しないでください。マイナーな警告でも失敗はレポートされます。各ノードのレポートを確認し、重大なエラーや違反が返されていないか探してください。このルーチンでは、操作中に発生したエラーや警告に関する詳細がレポートされているログファイルへのパスが表示されます。ログファイルを確認し、特定された重大な問題または中程度の重大な問題を修正します。
scinstall
ルーチンは 1 つのノードから実行され、Solaris Cluster を両方のノード上にインストールします。ルーチンが 1 つのノードを構成し、そのノードをリブートし、次に 2 番目のノードを構成し、その 2 番目のノードをリブートすることを確認します。
クラスタ内に両方のノードが含まれていることを確認します。
# clnode list -v Node Type ---- ---- node1 cluster node2 cluster
Solaris Cluster で使用可能なデバイスのリストを表示します。
# cldevice list -v DID Device Full Device Path d1 node1:/dev/rdsk/c0t600A0B800049EDD600000C9952CAA03Ed0 d1 node2:/dev/rdsk/c0t600A0B800049EDD600000C9952CAA03Ed0 d2 node1:/dev/rdsk/c0t600A0B800049EE1A0000832652CAA899d0 d2 node2:/dev/rdsk/c0t600A0B800049EE1A0000832652CAA899d0 d3 node1:/dev/rdsk/c1t0d0 d4 node1:/dev/rdsk/c1t1d0 d5 node2:/dev/rdsk/c1t0d0 d6 node2:/dev/rdsk/c1t1d0
この例では、共有ディスクデバイスは d1 および d2 です。一方、d3 および d4 は node1 のブートデバイス、d5 および d6 は node2 のブートデバイスです。d1 および d2 には、どちらか一方のノードからアクセスできます。
定足数は、3 つ以上のデバイスで構成されます。これはアクティブなノードになるノードを特定するために、起動イベント時に使用されます。
完全な定足数が構成されたことを確認します。
# clquorum list -v Quorum Type ------ ---- d1 shared_disk node1 node node2 node
オプションで、2 番目の shared_disk を定足数デバイスのリストに追加できます。
# clquorum add d2 # clquorum list -v Quorum Type ------ ---- d1 shared_disk d2 shared_disk node1 node node2 node
共有ディスクデバイスがリストに表示されない場合は、それらのデバイス ID を確認してからそれを定足数に追加します。
共有ディスクごとのデバイス ID を特定します。
# cldevice list -v
clsetup
を実行して、定足数デバイスを追加します。
# clsetup Select '1' for quorum. Select '1' to dd a quorum device. Select 'yes' to continue. Select 'Directly attached shared disk' Select 'yes' to continue. Enter the device id (d<n>) for the first shared drive. Answer 'yes' to add another quorum device. Enter the device id for the second shared drive.
clquorum
show
を実行して、定足数メンバーシップを確認します。
# clquorum show
クラスタ構成全体を確認します。
# cluster check -v | egrep -v "not applicable|passed"
違反しているインスタンスがリスト内にないか探します。
登録されているリソースタイプのリストを確認します。
# clrt list SUNW.LogicalHostname:4 SUNW.SharedAddress:2 SUNW.gds:6
SUNW.gds
がリストに表示されていない場合は、登録します。
# clrt register SUNW.gds
clrt list
を実行して、確認します。