2021年8月18日水曜日

(その4)Nutanix上にWindows+Oracle SEHA環境を構築する

前回までにGrid Infrastructureのインストールを終えました。今回は、Grid Infrastructureのパッチ適用とOracle Databaseのインストール、パッチ適用を行います。


17.Grid Infrastructureのパッチ適用

まず、現行のサービスの稼動状態を確認します。
こちらは、2台のサーバーそれぞれ両方で作業を行ってください。

コマンドプロンプトを起動し、「d:\app\19.0.0\grid\bin」ディレクトリに移動し、以下のコマンドを実行します。

crsctl stat res -t

各サービスがサーバー2台で動作していることを確認します。


パッチを適用するため、以下のコマンドを入力しサービスを停止します。

crsctl stop crs -f


全てのサービスが終了したことを確認します。


Windowsのサービスで起動している2つのサービスを手動で停止します。

まずこの作業までを2台のサーバーそれぞれで予め行ってください。

まず、完全にプロセスが終了しているかを確認します。

crsctl stat res -t -init

実行後、

CRS-4639: Oracle高可用性サービスと通信できませんでした
CRS-4000: コマンドstatusは失敗したか、またはエラーのある状態で完了しました。

が出力されればOKです。

これからパッチの適用を行います。
パッチの適用は、パッチと共に提供されるReadmeを参考にパッチを適用してください。


以下のコマンドを入力します。

SET ORACLE_HOME=d:\app\19.0.0\grid
%ORACLE_HOME%\crs\install\roothas.bat -prepatch

続いて1号機のサーバーに以下の手順でパッチを適用します。

cd d:\app\bu\32409153\32409154
SET ORACLE_HOME=d:\app\19.0.0\grid
d:\app\19.0.0\grid\opatch apply -local

画面の指示に従い、パッチを適用します。


続いて、FenceDriverを更新します。

%ORACLE_HOME%\bin\crssetup.exe deinstallfence
%ORACLE_HOME%\bin\crssetup.exe installfence


パッチの適用が終わったら、以下のコマンドでパッチが適用されたかを確認します。

d:\app\19.0.0\grid\opatch\opatch lsinventory

パッチ「32409154」が適用されていることを確認します。


パッチ適用が完了したら、以下のコマンドを実行します。

%ORACLE_HOME%\crs\instal\rootcrs -postpatch


2号機のサーバーは、Oracleのパッチファイルが展開されていませんので、手順12のOracleのソフトウェアバイナリ部分に記載されているOracleのパッチを展開する部分の作業を行ってください。

パッチ配置後、Opacheを使ってパッチを適用します。


なお、OPatch適用における注意点をお伝えします。

まず1つは、「OPatch faild with error code = 73」です。こちらは、なにかしOPatchでアップデートが必要なファイルが開かれている状態の時に表示されます。


Windowsの場合、OSの様々なシステムプロセスとの依存があり、Oracle系のサービスを全て停止した上でもこのエラーコード73が出てパッチが適用できないケースがあります。
この場合、Oracleに関連するサービスを自動起動から手動にした上で、OSを再起動して再度試してみてください。
大半は、サービス停止でこのエラーは出なくなりますが、それでも状況が改善しない場合、MSConfigツールから、セーフブートでOSを起動し、OPatchを適用してください。


もう1つの課題は、パッチ適用後、「CRS-6706: Oracle Clusterwareリリース・パッチ・レベル('1389892003')はソフトウェア・パッチ・レベル('0')と一致しません。Oracle Clusterwareを起動できません。」や「CRS-4000: コマンドStartは失敗したか、またはエラーのある状態で完了しました。 」が表示され、Clusterwareが起動しないケースです。


こちらの場合は、以下のコマンドを実行します。

%GI_HOME%\bin\clscfg -localpatch

(参考)Oracle Clusterwareの起動に失敗した場合のパッチの適用

今回、GI_HOMEは、「d:\app\19.0.0\grid」になります。


このコマンドを実行後、「d:\app\19.0.0\grid\bin\crsctl start crs -wait」でクラスターサービスを実行します。


これで2台のGrid Infrastructureの起動が完了しました。



18.Oracle Databaseのインストール

では、1号機のサーバーにOracle Databaseのインストールを行います。
引き続き、ユーザーは、ドメインユーザーの「oracle」にて操作を行います。

ORACLE_HOMEである、「d:\app\oracle\product\19.0.0\dbhome_1」の「setup.exe」を実行します。


ウィザードがスタートします。ここでは、ソフトウェアのみをインストールします。


Grid Indrastructureがインストールされているため自動で、RAC構成が選択されますが、SEHAは、RACではありませんので、「単一インスタンス・データーベースのインストール」を選択します。


SEHAは、Standard Edition 2に提供される機能ですので、「Standard Edition 2」を選択し、次に進みます。


Orackeホームユーザーの設定は、Grid Infrastructureの時と同じ、ドメインユーザーの「orahome」ユーザーを指定します。


続いてORACLE_BASEを設定します。ここでは「d:\app\oracle」を指定します。


サマリー場表示されますので、確認後「インストール」をクリックします


インストールが行われます。インストールが完了したら、ウィザードを終了させてください。



19.Oracle Databaseへのパッチ適用

Clusterwareを含め一度、Oracle関連のソフトウェアをすべて停止します。

d:\app\19.0.0\grid\bin\crsctl stop crs -f

サービスを含めOracle関連のプログラムが起動していないことを確認して下さい。


続いて以下のコマンドからOpatchでパッチ適用を行います。

set ORACLE_HOME=d:\app\oracle\product\19.0.0\dbhome_1
cd d:\app\bu\32409154\32409154
d:\app\oracle\product\19.0.0\dbhome_1\opatch\opatch apply


OPatch successfulとなったら、パッチ適用完了です。


20.Oracle Database インスタンスの作成

では、Databaseのインスタンスを作成します。

まずは、2台のノードでパッチ適用のためシャットダウンしたGrid Indrastructure関連のサービスを起動します。(2台のサーバーでそれぞれ実行してください)

d:\app\19.0.0\grid\bin\crsctl start crs -wait

各サービスが起動したことを確認します。


ASM構成アシスタントを起動します。

d:\app\19.0.0\grid\bin\asmca

ディスク・グループを選択し、「作成」をクリックします。


ディスクグループを「DATA」にし、冗長性を「外部」にします。
そして、スタンプ済みの「DATA」を選択します。
(もし、DATAというディスクが出てこない場合、LUNに対してラベルが設定されていないことが考えられます。「d:\app\19.0.0\bin\asmtoolg」を実行し、ボリュームのスタンプを行った後でもう一度、asmcaを実行し設定を行います)


作成した「DATA」のディスクグループが見えていることを確認し、終了します。


これでASMCAの設定は終わりです。


Database Configuration Assistantを以下のコマンドを実行し、起動します。

d:\app\oracle\product\19.0.0\bin\dbca

ウィザードが表示されます。「データーベースの作成」を選択し、次に進みます。


データーベースの作成は、拡張構成で行います。「拡張構成」を選択し、次に進みます。


データーベースは「Oracle単一インスタンス・データーベース」を選択し、「カスタム・データーベース」を選択し次に進みます。


ここでは、サービス名を「orcl.toriten.oita」SIDを「orcl」とし、コンテナデーターベースとして「pdb」を作成します。


データーベースの記憶域属性を「自動ストレージ管理(ASM)」を選択し、参照ボタン苦をクリックします。


先ほどASMCAで作成した「DATA」のディスクグループを選択し、「OK」をクリックします。


データーベース・ファイルの位置が「+DATA\{DB_UNIQUE_NAME}」になっていることを確認し、次に進みます。


今回は、高速リカバリ領域の指定を行います。(FRAを利用します)
高速リカバリ領域が「+MGMT」になっていますので、今回は、「+DATA」を選択します。

参照ボタンをクリックします。


DATAを選択します。


高速リカバリ領域が「+DATA」になったことを確認し、次に進みます。


LISTENERは、Grid Infrastructureで設定したLISTNERを選択し、次に進みます。


データーベースコンポーネントを選択します。今回はすべてのチェックを外して次に進みます。(画面が隠れて Oracle Database Extended for .NETが見えてないことがありますので、ウィンドウサイズを下に広げてください)


構成オプションは、画面のように設定しています。こちらも利用するデーターベースによって異なりますので、必要な要件通りに設定を行ってください。
(今回は、キャラクタ・セットに「JA16SJISTILDE」を指定しています)






今回は、Enetrprise Manager Database Expressの構成のチェックを外します。
(今回はEMは作成しません)


パスワードは「すべてのアカウントに同じパスワードを使用」を選択し、パスワードに「Nutanix4u-」を入力します。
Oracleホームのユーザー・パスワードは、Active Directoryで作成した「orahome」ユーザーのパスワードを指定し、次に進みます。


データーベースの作成にチェックを入れ、「次へ」をクリックします。


サマリーが表示されますので、終了ボタンをクリックします。


データーベースを作成が完了するまでしばらく時間がかかります。


データーベースの作成が完了したら、「閉じる」をクリックします。



これでインスタンスの作成も完了しました。次は、2号機のサーバーにOracle Databaseソフトウェアの展開と、SEHAのクラスター構成を行っています。










0 件のコメント:

コメントを投稿