今日、私は既存のOracleRACクラスターに新しいノードを追加しようとしていました。グリッドインフラストラクチャは、OracleLinux5.11で実行されるバージョン12.1.0.2です。
通常のクラスター検証ユーティリティ(CVU)のチェックを実行し、すべてのチェックに合格しました。ノードを追加するために、$ GRID_HOME/addnodeディレクトリから次のコマンドを発行しました。
./addnode.sh -silent "CLUSTER_NEW_NODES={newnode}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={newnode-vip}"
操作は失敗します。ログファイルに次のエラーが表示されました:
INFO: ********************************************* INFO: Task resolv.conf Integrity: This task checks consistency of file /etc/resolv.conf file across nodes INFO: Severity:CRITICAL INFO: OverallStatus:OPERATION_FAILED
resolv.confに問題がないことは確かです。これは、2つの既存のノードで正常に機能しています。すべてがチェックアウトします。これは、長年にわたってresolv.confに関する私の最初の問題ではありませんでした。通常、OUIのチェックが間違っていることはわかっているので、条件を無視して続行します。
addnode.shを実行する前に、次の環境変数を設定するためのGoogle経由のヘルプを見つけました:
export IGNORE_PREADDNODE_CHECKS=Y
これは有望に聞こえた。しかし、違いはなく、同じエラーが発生しました。 addnode.shはサイレントモードでOUIを呼び出しているので、前提条件を無視するようにディレクティブを試してみることにしました。
./addnode.sh -silent "CLUSTER_NEW_NODES={drorp05}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={drorp05-vip}" -ignoreSysPrereqs
それでも同じエラーが発生しました。では、失敗したチェックを乗り越えるためにaddnode.shを取得するにはどうすればよいですか?解決策はあまりにも明白で、最初は見ることができませんでした。
addnode.shスクリプトは、OUIを呼び出すだけです。したがって、答えは次のように実行することです。
./addnode.sh
パラメータなしでスクリプトを実行します。これにより、GUIバージョンのOUIが起動します。次の画面では、以前はスクリプトのパラメータであった新しいホスト名とそのVIPを要求されます。チェックが実行され、もちろん、失敗が見られました。しかし今回は、チェックボックスをオンにして障害を無視し、インストールを続行することができました。