この手順では、クラスタにノードを追加する方法について説明します。この手順では、次の項目を前提としています。
node1
およびnode2
という2つのノードを持つクラスタが存在する
DHCPおよびグリッド・ネーミング・サービス(GNS)を使用していない場合は、node3-vip
という仮想ノード名を使用して、IPアドレスに解決される、node3
という名前のノードを追加する
Oracle Clusterwareがnode1
およびnode2
のローカルの非共有ホームにインストールされており、Grid_home
は正常にインストールされたホームを表す
クラスタ環境内で1つ以上のノードにOracle Clusterwareを正常にインストールしていることを確認します。次の手順を実行するには、Grid_home
が、正常にインストールされたOracle Clusterwareホームを指している必要があります。
関連項目:
Oracle Clusterwareのインストール手順については、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。
クラスタおよびnode3
の整合性を検証します。
$ cluvfy stage -pre nodeadd -n node3 [-fixup] [-verbose]
検証が失敗した場合、クラスタまたはノードの修正を試行するための-fixup
オプションを指定できます。
Oracle Grid Infrastructureホームをnode3
に拡張するには、node1
のGrid_home
/addnode
ディレクトリに移動して、Oracle Clusterwareをインストールしたユーザーとしてaddnode.sh
スクリプトを実行します。
addnode.sh
を相互モードで実行するには、Grid_home
/addnode
からaddnode.sh
を実行します。
Oracle Clusterwareの標準クラスタおよびOracle Flex Clusterでは、サイレント・モードでaddnode.sh
を実行することもできます。
Oracle Clusterwareの標準クラスタの場合:
./addnode.sh -silent "CLUSTER_NEW_NODES={node3}" "CLUSTER_NEW_VIRTUAL_ HOSTNAMES={node3-vip}"
Oracle Flex Clusterにnode3
を追加する場合、コマンドラインで次のようにノード・ロールを指定できます。
./addnode.sh -silent "CLUSTER_NEW_NODES={node3}" "CLUSTER_NEW_VIRTUAL_ HOSTNAMES={node3-vip}" "CLUSTER_NEW_NODE_ROLES={hub}"
注意:
ハブ・ノードには常にVIPがありますが、リーフ・ノードにはない場合があります。前述の構文を使用して複数のノードをクラスタに追加する場合、node3
がハブ・ノードでnode4
がリーフ・ノードである次のような構文を使用できます。
./addnode.sh -silent "CLUSTER_NEW_NODES={node3,node4}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={node3-vip,}" "CLUSTER_NEW_NODE_ROLES={hub,leaf}"
プロンプトに従い、orainstRoot.sh
スクリプトをrootとして実行して、/etc/oraInst.loc
ファイルに中央インベントリの場所を移入します。次に例を示します。
# /opt/oracle/oraInventory/orainstRoot.sh
Oracle RACまたはOracle RAC One Nodeデータベースをクラスタで構成した場合で、ローカルのOracleホームを持つ場合は、次を実行してOracle Databaseホームをnode3
に拡張します。
node1
のOracle_home
/addnode
ディレクトリに移動し、次の構文を使用してOracle RACをインストールしたユーザーとしてaddnode.sh
スクリプトを実行します。
$ ./addnode.sh "CLUSTER_NEW_NODES={node3}"
root
としてnode3
でOracle_home
/root.sh
スクリプトを実行します。Oracle_home
はOracle RACホームです。
Oracle Automatic Storage Management Cluster File System (Oracle ACFS)を使用して共有されている共有Oracleホームを持つ場合は、次の手順を実行し、Oracle Databaseホームをnode3
に拡張します。
root
として、node3
に対しGrid_home
/root.sh
スクリプトを実行します。Grid_home
はOracle Grid Infrastructureホームです。
Oracle RACをインストールしたユーザーとして、追加したノードのOracle_home
/oui/bin
ディレクトリから次のコマンドを実行し、Oracle RACデータベース・ホームを追加します。
$ ./runInstaller -attachHome ORACLE_HOME="ORACLE_HOME" "CLUSTER_NODES={node3}"
LOCAL_NODE="node3" ORACLE_HOME_NAME="home_name" -cfs
node1
のOracle_home
/addnode
ディレクトリに移動し、次の構文を使用してOracle RACをインストールしたユーザーとしてaddnode.sh
スクリプトを実行します。
$ ./addnode.sh -noCopy "CLUSTER_NEW_NODES={node3}"
注意:
宛先ノードのOracleホームはすでにソフトウェアに完全に移入されているため、-noCopy
オプションを使用します。
Oracle ACFS以外の共有ファイル・システムで共有Oracleホームを持つ場合は、まずターゲット・ノードでOracle RACデータベース・ホームのマウント・ポイントを作成し、Oracle RACデータベース・ホームをマウントおよびアタッチし、次のようにOracle Inventoryを更新します。
クラスタ内の既存ノードでsrvctl config database -db
db_name
コマンドを実行して、マウント・ポイント情報を取得します。
次のコマンドをroot
としてnode3
で実行し、マウント・ポイントを作成します。
# mkdir -p mount_point_path
Oracle RACデータベース・ホームをホストするファイル・システムをマウントします。
Oracle RACをインストールしたユーザーとして、追加したノードのOracle_home
/oui/bin
ディレクトリから次のコマンドを実行し、Oracle RACデータベース・ホームを追加します。
$ ./runInstaller -attachHome ORACLE_HOME="ORACLE_HOME" "CLUSTER _NODES={local_node_name}" LOCAL_NODE="node_name" ORACLE_HOME_NAME="home_name" -cfs
node1
のOracle_home
/addnode
ディレクトリに移動し、次の構文を使用してOracle RACをインストールしたユーザーとしてaddnode.sh
スクリプトを実行します。
$ ./addnode.sh -noCopy "CLUSTER_NEW_NODES={node3}"
注意:
宛先ノードのOracleホームはすでにソフトウェアに完全に移入されているため、-noCopy
オプションを使用します。
注意:
addnode.sh
の実行後、Grid_home/network/admin/samples
ディレクトリの権限が750に設定されていることを確認します。 root
として、node3
でGrid_home
/root.sh
スクリプトを実行し、指示に従って後続のスクリプトを実行します。
注意:
手順5でroot.sh
スクリプトを実行した場合は、再度実行する必要はありません。
ポリシー管理データベースを使用している場合、必ずOracleホームを新しいノードにクローニングしてからroot.sh
スクリプトを実行してください。
root
としてGrid_home
/bin
ディレクトリから次のコマンドを実行して、新しいノードでOracle ACFSリソースを起動します。
# srvctl start filesystem -device volume_device_name -node node3
注意:
Oracleホームが格納されているOracle ACFSレジストリ・リソースおよびOracle ACFSファイル・システム・リソースを含むOracle ACFSリソースが、新しく追加されたノードでオンラインであることを確認します。
Oracle Clusterwareをインストールしたユーザーとして次のCVUコマンドを実行して、クラスタの整合性をチェックします。このコマンドで、指定した任意の数のノードがネットワーク、共有記憶域およびクラスタウェアの各レベルでクラスタに正常に追加されていることを確認します。
$ cluvfy stage -post nodeadd -n node3 [-verbose]
関連項目:
このCVUコマンドの詳細は、「cluvfy stage [-pre | -post] nodeadd」
を参照してください。
ポリシー管理Oracle RACデータベースまたは管理者管理Oracle RACデータベースのいずれかがnode3
(新しく追加されたノード)で実行されるように構成されているかどうかを確認します。管理者管理Oracle RACデータベースを構成した場合、DBCAを使用してデータベースにインスタンスを追加し、この新しく追加されたノードで実行します。
関連項目:
DBCAを使用した管理者管理Oracle RACデータベース・インスタンスの追加の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。
ポリシー管理Oracle RACデータベースを構成した場合のターゲット・ノードへのOracle RACデータベース・インスタンスの追加の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。