2021年8月17日火曜日

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

前回までにOS環境の設定を行いました。
これからは、Oracleをインストールする準備作業を行います。


11.hostsとDNSの設定

構成した2台のサーバーとSCAN用のIPをDNSに登録します。
また、2台のホスト名はそれぞれのサーバーのhostsファイルにも記載しておきます。

DNSに登録するIPアドレスとホスト名

ホスト名IPアドレス対象
ora19cseha01192.168.32.191Hosts
ora19cseha02192.168.32.192Hosts
ora19cseha01-vip192.168.32.193Hosts
ora19cseha02-vip192.168.32.194Hosts
ora19cseha01.toriten.oita192.168.32.191DNS/Hosts
ora19cseha02.toriten.oita192.168.32.192DNS/Hosts
ora19cseha01-vip.toriten.oita192.168.32.193DNS/Hosts
ora19cseha02-vip.toriten.oita192.168.32.194DNS/Hosts
ora19cseha-scan.toriten.oita
192.168.32.195DNS/Hosts
192.168.32.196DNS/Hosts
192.168.32.197DNS/Hosts

2台のサーバーそれぞれで、hostsファイルを設定します。

管理者権限で「c:\windows\system32\drivers\etc\hosts」をメモ帳等で開きます。

上記のホスト名とIPアドレスを記入します。


続いてDNSサーバーにも同様にレコード登録を行います。



12.ドメインアカウントのローカル管理者の設定

ドメインアカウントで作成した、「oracle」をローカルマシンのAdministratorsに属させます。
この作業は、2台のサーバーそれぞれで同じ設定を行います。

スタートボタンを右クリックし、「コンピューターの管理」をクリックします。



「ローカルユーザーとグループ」の「グループ」で「Administrators」をダブルクリックします。


追加ボタンをクリックします。

「選択するオブジェクト名を入力して下さい」に「oracle」と入力し、「名前の確認」をクリックします。



ドメインの認証ダイアログが表示されますので、Administrators権限を持ったユーザーで認証を行います。その後、ドメインアカウントの一覧が表示されますので、「oracle」ユーザーを選択し、OKをクリックします。



Administratorsのプロパティに「TORITEN\oracle」が追加されたことを確認し、OKをクリックし、コンピューターの管理を閉じます。

同じ作業を2号機でも行います。


13.レジストリの設定

続いてレジストリエディタを行います。この作業も2台のサーバーそれぞれ両方とも行ってください。
レジストリエディタを開き、
「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System」を開き、DWORD値で「LocalAccountTokenFilterPolicy」を作成し、値に「1」を入力します。



レジストリの設定が終わったら、OSを再起動し、ドメインユーザーのoracleユーザーでログインします。



14.Oracleソフトウェアの配置

今回利用するバイナリは以下の通りです。

  • Oracle Grid Infrastructure 19.3 for Windows (V982656-01)
  • Oracle Database 19.3 for Windows (V982662-01)
  • Oracle 19.11 Bundle Patch (19.11.0.0.210420-p32409154_190000_MSWIN-x86-64)
  • OPatch 12.2.0.1.25 for DB 12.x, 18.x, 19.x, 20.x and 21.x releases (May 2021) (p6880880_122010_MSWIN-x86-64.zip)
Oracle Grid Infrastructure及びDatabaseは、E-Deliveryより、パッチやOpatchは、MyOracleSupport(MOS)から取得します。

では、Oracleのバイナリを展開します。

まず、以下のフォルダを作成します。(環境変数名はわかりやすいように書いていますが、OPatchを適用するとき以外、Windows側に意図的に設定することはありません。

パス環境変数名
d:\app\gridGRID_BASE
d:\app\19.0.0\gridGRID_HOME
d:\app\oracleORACLE_BASE
d:\app\oracle\product\19.0.0\dbhome_1ORACLE_HOME


プログラムの配置は、1号機のサーバーのみで行います。


oracleユーザーでのログイン

まずは、1号機のサーバーで「toriten\oracle」ユーザーでログインします。



GridInfrastructureの展開

V982656-01.zipを、「d:\app\19.0.0\grid」配下に展開します。


Oracle Databaseの展開

V982662-01.zipを「d:\app\oracle\produc\19.0.0\dbhome_1」に展開します。



OPatchの展開

「p6880880_122010_MSWIN-x86-64.zip」を、GRID_HOME及びORACLE_HOMEの配下に展開します。(p6880880_122010_MSWIN-x86-64.zipは、上位フォルダにOPatchフォルダがありますので、HOMEディレレクトリに配置すればOpatchフォルダが上書きされる形となります)既にファイルが存在する旨の確認が出てきた際は、上書きを選択します。

▼OPatchバイナリをGRID_HOMEに展開





▼OPatchバイナリをORACLE_HOMEに展開


OPatchが更新されたかを確認します。

コマンドプロンプトを開き、GRID_HOMEフォルダに移動します。
コマンドで以下を入力します。
(GRID_HOMEディレクトリですが、ここではORACLE_HOMEで環境変数を設定します)

cd d:\app\19.0.0\grid
SET ORACLE_HOME=d:\app\19.0.0\grid
opatch version

すると、OPatch Versionが表示されます。ここではアップデートした「12.2.0.1.25」になっていることを確認します。

この作業は、同様にORACLE_HOMEのディレクトリでも行って下さい。

cd d:\app\oracle\product\19.0.0\dbhome_1
SET ORACLE_HOME=d:\app\oracle\product\19.0.0\dbhome_1
opatch version

▼実行結果



Oracle バンドルパッチの展開

この作業は、2台のサーバーそれぞれ2台とも行ってください。

「19.11.0.0.210420-p32409154_190000_MSWIN-x86-64.zip」を、「d:\app\bu\32409154」に展開します。



2号機のサーバーのみ、インストール用のプログラムをいれるフォルダだけ作成しておきます。

作成するフォルダ

  • d:\app\oracle\product\19.0.0\dbhome_1


15.ファイルの変更

GridInfrastructureの動作で、一部の名前解決で失敗するのを防ぐため、予めファイルに変更を加えておきます。これは、Grid Infrastructureインストール中に「PRVF-0002」が発生することを防ぐための物です。

この作業は、2台のサーバーそれぞれで両方とも行います。

変更するのは、以下のファイルです。

  • %GI_HOME%\bin\cluvfy.bat
  • %GI_HOME%\crs\sbs\cluvfy.sbs
  • %GI_HOME%\cv\cvutl\cluvfy.sbs.runcluvfy
  • %GI_HOME%\cv\remenv\cvuhelper.bat

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

    これらのファイルを開き、

    「JAVA_OPTS=-Dsun.net.spi.nameservice.provider.1=dns,sun」
    という記載項目を
    「JAVA_OPTS=」
    に置き換えます。


    なお今回適用予定の「32409154」パッチでは、この対応は既に完了しています。
    インストールする前にパッチの適用が出来ないので、今回は先に既存ファイルに変更を加えた後にパッチを適用します。



    16.Grid Infrastructureのインストール

    まずは、1号機に「Administrator」ユーザーでログインします。

    Grid Infrastructureのインストールを行います。
    GRID_HOME(d:\app\19.0.0\grid)にある「setup.exe」を実行します。


    ウィザードに従って進めていきます。

    新しいクラスタ用のOracle Grid Infrastructureの構成を選択し、次に進みます。


    Oracleスタンドアロン・クラスタの構成を選択し、次に進みます。


    クラスター名は、「ora19c-cluster」とし、SCAN名を「ora19cseha-scan.toriten.oita」とします。SCAN名は必ずDNSサーバーで名前解決が出来るようにしておいてください。


    現在インストール中のマシンが表示されます。ホスト名が正しいことを確認し、2号機のホストを追加します。「追加」ボタンをクリックします。


    単一ノードを選択肢、2台目のホスト名と、仮想ホスト名はFQDNを入力し、OKをクリックします。



    2台のサーバーがリスと表示されたことを確認し、次に進みます。
    この際に、2台目のホストがスキップしますか?と聞かれる場合、名前解決周りの問題にとなります。DNSで名前が引けるかやFQDNを正しく入れているかを確認してください。



    各NICの役割を選択します。iSCSIはOracleでは利用しませんので、「使用しない」を選択し、次に進みます。


    グリッド・インフラストラクチャー管理リポジトリの構成を「はい」を選択し、次に進みます。


    ASMディスクグループ作成を行うため、「はい」を選択し、次に進みます。


    ディスクグループ名を「ASM」に変更し、冗長性を「外部」を選択した上で、「ディスクをスタンプ」をクリックします。


    Windows版のGrid Infrastructure特有のASMスタンプツールが起動します。
    「Add or change label」をクリックします。


    50Gのディスクパーティションを選択し、Generate stamps with this prefixに「ASM」と入力し、次に進みます。



    選択したディスクが表示されますので、そのまま次へをクリックします。


    ウィザードを完了させます。


    先程作成したASMのディスクをチェックし、Oracle ASMフィルタードライバー構成のチェックを外し、次に進みます。


    続いてマネージメント領域を設定します。先程と同じ要領で、ディスクのスタンプをクリックし、MGMT領域を作成します。


    先程と同じ要領で、MGMT領域を設定します。



    先程スタンプしたディスクが表示されます。続いてOracleの表領域で利用するストレージ領域も合わせてここでスタンプしておきます。
    もう一度「ディスクのスタンプ」をクリックします。


    ストレージのスタンプされていない100Gのディスクを選択し、Generate stamps with this prefixに「DATA」と入力します。



    スタンプした2つのストレージが表示されますので、「MGMT0」を選択し、次に進みます。


    ASMパスワードを設定します。ここでは、「Nutanix4u-」とします。


    IPMIは使用しないを選択し、次に進みます。


    Enterprise Manager Cloud Controlへの登録のチェックを外し、次に進みます。


    Oracleホーム・ユーザーは、Active Direcotoryで作成した「orahome」ユーザーを指定します。そのまま次に進みます。



    Oracleベースは、「d:\app\grid」を入力します。あらかじめこのディレクトリの中が空であることを確認してください。


    前提条件のチェックが入りますので、しばらく待ちます。

    前提チェックでいくつかのチェック項目が出てきました。
    ここでは、Windows Firewallのステータスが出てきています。Windows Firewallはこの環境では無効化されているので無視して構いません。
    「すべて無視」をチェックして先に進めます。
    ここで、何らかのチェック項目が出てきた場合、詳細情報を確認し、ステータスが「警告」の場合は解消するようにしてください。


    確認メッセージが表示されますので、「はい」をクリックします。


    サマリーが表示されますので、設定内容に誤りがないかを確認し、「インストール」をクリックします。


    これでインストールがはじまります。インストールにはかなりの時間がかかります。とくに32%の進捗と35%からの進捗がなかなか進まないのですが、焦らずゆっくり待っておくとインストールが進みます。


    最後まで進と無事にインストールが完了します。



    続いて、Grid Infrastructureにパッチを適用します。







    1 件のコメント:

    1. こんにちわ。斎藤 淳と申します。
      いつも大変有益な情報を投稿いただきありがとうございます。
      当記事を参考にして現在、Windows Server2019の環境に19cのOracle Grid Infrastructureをインストールしているのですが、38%で失敗してしまいます。ログを見る限りでは、SCANリスナーの起動に失敗しているのが直接原因のようですが、インストーラが正しいlistner.oraを生成できていないようです。
      Oracle SupportにSRを投げているのですが、現在1週間を経過して回答がありません。
      OSを英語版にしたりGrid Infrastructureを21cや12cで試したりしましたが、現象は変わりません。もし同様の経験をお持ちであれば、何か情報をいただけると大変ありがたいです。

      返信削除