TR-4997:『Oracle RAC Deployment and Protection in VCF with VVols』
ネットアップ、Niyaz Mohamed、Allen Cao氏
このソリューションでは、vSphere Virtual Volumes(VVol)をプライマリデータベースストレージとして使用し、Real Application Clusters(RAC)構成のOracleデータベースを使用したVMware Cloud Foundation(VCF)へのOracleの導入と保護の概要と詳細について説明します。
目的
VMware vSphere Virtual Volumes(VVOL)は、SAN / NASの管理および統合フレームワークです。仮想ディスクをネイティブストレージオブジェクトとして公開し、仮想ディスクレベルでアレイベースの処理を可能にします。言い換えれば、VVOLはSAN / NASデバイスをVM対応にし、単一の仮想ディスクの単位でVM主体のアプローチでアレイベースのデータサービスを活用できるようにします。 VVOLを使用すると、お客様は、現在のストレージへの投資と移行に固有の機能を、システムを停止することなく活用できます。すべてのストレージタイプに対応する仮想環境に最適化された、シンプルで効率的な運用モデルに移行できます。
では、"TR-4996"VVOLを使用したVCFで、単一インスタンスのOracleデータベースを導入して保護するデモを実施しました。このドキュメントでは、VVOLをNetApp ONTAPストレージクラスタのプライマリデータベースストレージとして使用するVMware Cloud Foundation環境にOracle RACデータベースを導入して保護する方法について説明します。Oracle RACデータベースは、ローカルストレージシステム上のローカルファイルシステムに導入されているかのように設定されます。このテクニカルレポートでは、Oracle RAC環境用のVCFでVVOLを作成する手順について説明します。また、VVOL上のVCFにNetApp自動化ツールキットを使用してOracle RACデータベースを導入し、NetApp SnapCenter UIツールを使用してRACデータベースを保護するデモも行います。
この解決策 は、次のユースケースに対応します。
-
VCFにOracle RACデータベースを導入し、NetApp ONTAP AFF上のvVolデータストアをプライマリデータベースストレージとして使用
-
NetApp SnapCenter UIツールを使用したvVolデータストアを備えたVCFでのOracleデータベースのバックアップとリストア
対象者
この解決策 は、次のユーザーを対象としています。
-
NetApp ONTAP AFF上のvVolデータストアをプライマリデータベースストレージとして使用するVCFにOracle RACを導入するDBA
-
NetApp ONTAP AFFストレージ上のvVolデータストアを使用してVCFでOracle RACワークロードをテストしたいデータベースソリューションアーキテクト
-
NetApp ONTAP AFFストレージ上のvVolデータストアを使用してVCFに導入されたOracle RACデータベースの導入と管理を希望するストレージ管理者
-
VCFでVVOLデータストアを使用してOracle RACデータベースを立ち上げるアプリケーション所有者
解決策 のテストおよび検証環境
このソリューションのテストと検証は、NetApp ONTAP AFFストレージ上のVVOLデータストアを使用するVCFのラボ環境で実行しましたが、最終的な導入環境とは一致しない可能性があります。詳細については、を参照してください 導入にあたって考慮すべき主な要因。
アーキテクチャ
![このイメージは、iSCSIとASMを使用したAWSパブリッククラウドでのOracle導入構成の詳細な図を示しています。](./../media/vcf_orarac_vvol_architecture.png)
ハードウェアおよびソフトウェアコンポーネント
* ハードウェア * |
||
NetApp ONTAP AFF A300 |
バージョン9.14.1P4 |
NVMeディスクを24本搭載したDS224シェルフ、合計容量35.2TiB |
VMware vSphereクラスタ |
バージョン8.02 |
CPU×12 x Intel(R)Xeon(R)Gold 5218 CPU(2.30GHz)、8ノード(管理ドメイン×4、ワークロードドメイン×4) |
ソフトウェア |
||
Red Hat Linux |
RHEL-8.6、4.18.0-372.9.1.el8.x86_64カーネル |
Oracle DBサーバをホストし、テスト用にRedHatサブスクリプションを導入 |
Windows Serverの場合 |
2022 Standard、10.0.20348ビルド20348 |
SnapCenterサアハノホスト |
CentOS Linuxの場合 |
CentOS Linuxリリース8.5.2111 |
Ansibleコントローラのホスト |
Oracle Grid Infrastructureの略 |
バージョン19.18 |
RUパッチp34762026_190000_Linux-x86-64.zipを適用しました |
Oracle データベース |
バージョン19.18 |
RUパッチp34765931_190000_Linux-x86-64.zipを適用しました |
Oracle OPatchの略 |
バージョン12.2.0.1.36 |
最新のパッチp6880880_190000_Linux-x86-64.zip |
SnapCenter サーバ |
バージョン6.0 |
ワークグループの導入 |
SnapCenter Plug-in for VMware vSphere |
バージョン6.0 |
vSphereクラスタにOVA VMとして導入 |
VMware vSphere向けONTAPツール |
バージョン9.13 |
vSphereクラスタにOVA VMとして導入 |
JDKを開く |
バージョンjava-11-openjdk-11.0.23.0.9-3.el8.x86_64 |
DB VMでのSnapCenterプラグインの要件 |
VCFでのOracle RACデータベース構成
* RACノード* |
* データベース * |
* DBストレージ* |
ora01 |
NTAP(NTAP_pdb1、NTAP_pdb2、NTAP_pdb3) |
NetApp ONTAP AFF A300上のvVolデータストア(VCF_ORA_bins、VCF_ORA_CRS、VCF_ORA_DAT1、VCF_ORA_DAT2、VCF_ORA_LOGS) |
ora02 |
NTAP(NTAP_pdb1、NTAP_pdb2、NTAP_pdb3) |
NetApp ONTAP AFF A300上のvVolデータストア(VCF_ORA_bins、VCF_ORA_CRS、VCF_ORA_DAT1、VCF_ORA_DAT2、VCF_ORA_LOGS) |
導入にあたって考慮すべき主な要因
-
* VVOLからONTAPクラスタへの接続に使用するプロトコル。*NFSまたはiSCSIを選択することをお勧めします。パフォーマンスレベルは同等です。このソリューションデモでは、VVOLから下線のONTAPストレージクラスタへの接続に使用するストレージプロトコルとしてiSCSIを使用しました。VCFインフラでがサポートされている場合は、NetApp ONTAP上のVVOLデータストアでFC / FCoE、NVMe/FCプロトコルもサポートされます。
-
* VVOLデータストア上のOracleストレージレイアウト*テストと検証では、Oracleバイナリ、Oracleクラスタレジストリ/投票、Oracleデータ、Oracleログファイル用のvVolデータストアを5つ導入しました。データベースのバックアップ、リカバリ、クローニングを簡単に管理および実行できるように、さまざまなタイプのOracleファイルをそれぞれ専用のデータストアに分割することを推奨します。大規模データベース専用のvVolを作成し、QoSプロファイルが類似している小規模データベースやデータベースでvVolを共有します。
-
* Oracleストレージの冗長性* `Normal Redundancy`3つのASMディスク障害グループ上の3つの投票ファイルが最適なクラスタ保護を提供し、クラスタレジストリがASMディスク障害グループ間でミラーリングされるように、重要なOracle RACクラスタレジストリ/投票ファイルに使用します。 `External Redundancy`Oracleのバイナリ、データ、ログファイルに使用して、ストレージ利用率を最適化します。下線のONTAP RAID-DPは、 `External Redundancy`を使用している場合にデータ保護を提供します。
-
* ONTAPストレージ認証用のクレデンシャル*ONTAPストレージクラスタへのSnapCenter接続やONTAPツールからONTAPストレージクラスタへの接続など、ONTAPストレージクラスタの認証にはONTAPクラスタレベルのクレデンシャルのみを使用してください。
-
* vVolデータストアからデータベースVMにストレージをプロビジョニングします。*vVolデータストアからデータベースVMに一度に追加するディスクは1つだけです。現時点では、vVolデータストアから複数のディスクを同時に追加することはサポートされていません。
-
*データベース保護*NetAppには、データベースのバックアップとリストアを実行するためのSnapCenterソフトウェアスイートが用意されており、使いやすいUIインターフェイスが用意されています。NetAppでは、Snapshotの高速バックアップ、データベースの迅速なリストアとリカバリを実現するために、このような管理ツールを実装することを推奨しています。
解決策 の導入
以降のセクションでは、Oracle RAC構成のNetApp ONTAPストレージ上のvVolデータストアを使用するVCFにOracle 19Cデータベースを導入する手順を詳しく説明します。
導入の前提条件
Details
導入には、次の前提条件が必要です。
-
VMware VCFがセットアップされました。VCFの作成方法については、VMwareのドキュメントを参照してください "VMware Cloud Foundationのドキュメント"。
-
VCFワークロードドメイン内で、3台のLinux VM(Oracle RACデータベースクラスタ用に2台、Ansibleコントローラ用に1台)をプロビジョニングします。NetApp SnapCenterサーバを実行するためのWindowsサーバVMを1つプロビジョニングします。Oracleデータベースを自動導入するためのAnsibleコントローラのセットアップについては、次の資料を参照して "NetApp解決策 自動化の導入"ください。
-
Oracle RACデータベースVMには、少なくとも2つのネットワークインターフェイスをプロビジョニングしておく必要があります。1つはOracle RACプライベートインターコネクト用、もう1つはアプリケーションまたはパブリックデータトラフィック用です。
-
VCFには、SnapCenterプラグインバージョン6.0 for VMware vSphereが導入されています。プラグインの配置については、次のリソースを参照してください。 "SnapCenter Plug-in for VMware vSphere のドキュメント"
-
VMware vSphere向けのONTAPツールがVCFに導入されている。VMware vSphere導入のためのONTAPツールについては、次のリソースを参照してください。 "ONTAP Tools for VMware vSphereのドキュメント"
|
Oracleインストールファイルをステージングするための十分なスペースを確保するために、Oracle VMのルートボリュームに少なくとも50Gが割り当てられていることを確認してください。 |
ストレージ機能プロファイルの作成
Details
最初に、VVOLデータストアをホストする下線のONTAPストレージ用のカスタムストレージ機能プロファイルを作成します。
-
vSphere Clientのショートカットから、NetApp ONTAPツールを開きます。ONTAPツールの導入時にONTAPストレージクラスタがに追加されていることを確認します
Storage Systems
。 -
をクリックし
Storage capability profile
て、Oracleのカスタムプロファイルを追加します。プロファイルに名前を付け、簡単な説明を追加します。 -
ストレージコントローラのカテゴリ(パフォーマンス、容量、ハイブリッド)を選択します。
-
プロトコルを選択します。
-
必要に応じてQoSポリシーを定義
-
プロファイルの追加のストレージ属性。暗号化機能を使用する場合は、NetAppコントローラで暗号化が有効になっていることを確認してください。有効になっていないと、プロファイルの適用時に問題が発生する可能性があります。
-
概要を確認し、ストレージ機能プロファイルの作成を完了します。
vVolデータストアの作成と設定
Details
前提条件が完了したら、vSphere Clientから管理者ユーザとしてVCFにログインし、ワークロードドメインに移動します。VVOLの作成には、組み込みのVMwareストレージオプションを使用しないでください。代わりに、NetApp ONTAPツールを使用してVVOLを作成してください。次に、VVOLを作成および設定する手順を示します。
-
vVolの作成ワークフローは、ONTAPツールインターフェイスまたはVCFワークロードのドメインクラスタからトリガーできます。
-
プロビジョニングのデスティネーション、タイプ、名前、プロトコルなど、データストアの一般的な情報を入力します。
-
前の手順で作成したカスタムのストレージ機能プロファイル、および(vVolを作成する場所)を選択します
Storage system
Storage VM
。 -
を選択し
Create new volumes
、ボリュームの名前とサイズを入力し、をクリックしてADD
NEXT
概要ページに移動します。 -
をクリックし
Finish
てOracleバイナリ用のVVOLデータストアを作成します。 -
OracleクラスタレジストリまたはCRS用のデータストアを作成します。
パフォーマンスや冗長性を確保するために、vVolデータストアに複数のボリュームを追加したり、vVolデータストアボリュームを複数のONTAPコントローラノードにまたがることができます。 -
Oracleデータ用のデータストアを作成します。理想的には、ONTAPコントローラノードごとに別 々 のデータストアを作成し、Oracle ASMを使用してコントローラノード間でデータをストライピングし、ONTAPストレージクラスタ容量の利用率を最大限に高めることです。
-
Oracleログ用のデータストアを作成します。Oracleのログ書き込みはシーケンシャルであるため、単一のONTAPコントローラノードにのみ配置することを推奨します。
-
導入後にOracleデータストアを検証します。
ストレージ機能プロファイルに基づいてVMストレージポリシーを作成する
Details
vVolデータストアからデータベースVMにストレージをプロビジョニングする前に、前の手順で作成したストレージ機能プロファイルに基づいてVMストレージポリシーを追加してください。手順は次のとおりです。
-
vSphere Clientのメニューでを開き、を
Policies and Profiles
ハイライトしますVM Storage Policies
。クリックしCreate
てワークフローを開きますVM Storage Policies
。 -
VMストレージポリシーに名前を付けます。
-
で
Datastore specific rules
、Enable rules for "NetAPP.clustered.Data.ONTAP.VP.vvol" storage
-
NetApp.clustered.Data.ONTAP.VP.vVolルールの場合は
Placement
、前の手順で作成したカスタムのストレージ容量プロファイルを選択します。 -
NetApp.clustered.Data.ONTAP.VP.vVolルールの場合は
Replication
、vVolがレプリケートされないかどうかを選択しますDisabled
。 -
[ストレージ互換性]ページには、VCF環境内の互換性があるVVOLデータストアが表示されます。
-
確認して完了し、VMストレージポリシーを作成します。
-
作成したVMストレージポリシーを検証します。
vVolデータストアからRAC VMへのディスクの割り当てとDBストレージの設定
Details
vSphere Clientで、VMの設定を編集して、vVolデータストアの必要なディスクをデータベースVMに追加します。次に、VMにログインしてフォーマットし、バイナリディスクをマウントポイント/u01にマウントします。具体的な手順とタスクを以下に示します。
-
データストアからデータベースVMにディスクを割り当てる前に、VMware ESXiホストにログインして、ESXiレベルでマルチライターが有効になっていること(GBLallowMWの値が1に設定されていること)を確認します。
[root@vcf-wkld-esx01:~] which esxcli /bin/esxcli [root@vcf-wkld-esx01:~] esxcli system settings advanced list -o /VMFS3/GBLAllowMW Path: /VMFS3/GBLAllowMW Type: integer Int Value: 1 Default Int Value: 1 Min Value: 0 Max Value: 1 String Value: Default String Value: Valid Characters: Description: Allow multi-writer GBLs. Host Specific: false Impact: none [root@vcf-wkld-esx01:~]
-
Oracle RACディスク専用の新しいSCSIコントローラを追加します。SCSIバス共有を無効にします。
-
RACノード1-ora01から、共有せずにOracleバイナリストレージ用のディスクをVMに追加します。
-
RACノード1から、Oracle RAC CRSストレージ用に3本のディスクをVMに追加し、マルチライター共有を有効にします。
-
RACノード1から、データ用の各データストアから共有Oracleデータストレージ用のVMにディスクを2本ずつ追加します。
-
RACノード1から、共有Oracleログファイルストレージ用のVM from logsデータストアに2本のディスクを追加します。
-
RACノード2から、共有せずにOracleバイナリストレージ用のディスクをVMに追加します。
-
RACノード2から、 `Existing Hard Disks`オプションを選択して他の共有ディスクを追加し、各共有ディスクに対してマルチライター共有を有効にします。
-
VMから
Edit Settings
、Advanced Parameters
[Attribute with value]を追加しますdisk.enableuuid
TRUE
。詳細パラメータを追加するには、VMを停止する必要があります。このオプションを設定すると、環境内のVVOLをSnapCenterで正確に識別できるようになります。この手順はすべてのRACノードで実行する必要があります。 -
次に、VMを再起動します。sshを使用して管理者ユーザとしてVMにログインし、新しく追加したディスクドライブを確認します。
[admin@ora01 ~]$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk ├─sda1 8:1 0 600M 0 part /boot/efi ├─sda2 8:2 0 1G 0 part /boot └─sda3 8:3 0 48.4G 0 part ├─rhel-root 253:0 0 43.4G 0 lvm / └─rhel-swap 253:1 0 5G 0 lvm [SWAP] sdb 8:16 0 50G 0 disk sdc 8:32 0 10G 0 disk sdd 8:48 0 10G 0 disk sde 8:64 0 10G 0 disk sdf 8:80 0 40G 0 disk sdg 8:96 0 40G 0 disk sdh 8:112 0 40G 0 disk sdi 8:128 0 40G 0 disk sdj 8:144 0 80G 0 disk sdk 8:160 0 80G 0 disk sr0 11:0 1 1024M 0 rom [admin@ora01 ~]$ [admin@ora02 ~]$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk ├─sda1 8:1 0 600M 0 part /boot/efi ├─sda2 8:2 0 1G 0 part /boot └─sda3 8:3 0 48.4G 0 part ├─rhel-root 253:0 0 43.4G 0 lvm / └─rhel-swap 253:1 0 5G 0 lvm [SWAP] sdb 8:16 0 50G 0 disk sdc 8:32 0 10G 0 disk sdd 8:48 0 10G 0 disk sde 8:64 0 10G 0 disk sdf 8:80 0 40G 0 disk sdg 8:96 0 40G 0 disk sdh 8:112 0 40G 0 disk sdi 8:128 0 40G 0 disk sdj 8:144 0 80G 0 disk sdk 8:160 0 80G 0 disk sr0 11:0 1 1024M 0 rom [admin@ora02 ~]$
-
各RACノードから、デフォルトの選択肢を受け入れるだけで、Oracleバイナリディスク(/dev/sdb)をプライマリパーティションおよび単一パーティションとしてパーティショニングします。
sudo fdisk /dev/sdb
-
パーティショニングされたディスクをxfsファイルシステムとしてフォーマットします。
sudo mkfs.xfs /dev/sdb1
-
ディスクをマウントポイント/u01にマウントします。
[admin@ora01 ~]$ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 7.7G 36K 7.7G 1% /dev tmpfs 7.8G 1.4G 6.4G 18% /dev/shm tmpfs 7.8G 34M 7.7G 1% /run tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup /dev/mapper/rhel-root 44G 29G 16G 66% / /dev/sda2 1014M 249M 766M 25% /boot /dev/sda1 599M 5.9M 593M 1% /boot/efi /dev/sdb1 50G 24G 27G 47% /u01 tmpfs 1.6G 12K 1.6G 1% /run/user/42 tmpfs 1.6G 0 1.6G 0% /run/user/54331 tmpfs 1.6G 4.0K 1.6G 1% /run/user/1000
-
仮想マシンのリブート時にディスクドライブがマウントされるように、/etc/fstabにマウントポイントを追加します。
sudo vi /etc/fstab
[oracle@ora_01 ~]$ cat /etc/fstab # # /etc/fstab # Created by anaconda on Wed Oct 18 19:43:31 2023 # # Accessible filesystems, by reference, are maintained under '/dev/disk/'. # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info. # # After editing this file, run 'systemctl daemon-reload' to update systemd # units generated from this file. # /dev/mapper/rhel-root / xfs defaults 0 0 UUID=aff942c4-b224-4b62-807d-6a5c22f7b623 /boot xfs defaults 0 0 /dev/mapper/rhel-swap none swap defaults 0 0 /root/swapfile swap swap defaults 0 0 /dev/sdb1 /u01 xfs defaults 0 0
VCFでのOracle RACの導入
Details
VVOLを使用するVCFにOracle RACを導入するには、NetApp自動化ツールキットを活用することを推奨します。付属の指示(readme)をよく読み、ツールキットの指示に従って、展開ターゲットファイルホスト、グローバル変数ファイル-vars/vars.yml、ローカルDB VM変数ファイル-host_vars/host_name .ymlなどの展開パラメータファイルを構成します。次に、ステップバイステップの手順を示します。
-
sshを使用してAnsibleコントローラVMに管理者ユーザとしてログインし、VVOLを使用するVCFへのOracle RAC導入向け自動化ツールキットのコピーをクローニングします。
git clone https://bitbucket.ngage.netapp.com/scm/ns-bb/na_oracle_deploy_rac.git
-
RACノード1データベースVMの/tmp/archiveフォルダに次のOracleインストールファイルをステージングします。フォルダには、777の権限を持つすべてのユーザアクセスが許可されている必要があります。
LINUX.X64_193000_grid_home.zip p34762026_190000_Linux-x86-64.zip LINUX.X64_193000_db_home.zip p34765931_190000_Linux-x86-64.zip p6880880_190000_Linux-x86-64.zip
-
AnsibleコントローラとデータベースVMの間にSSHキーレス認証をセットアップします。SSHキーペアを生成し、公開鍵をデータベースVMのadminユーザrootディレクトリ.sshフォルダauthorized_keysファイルにコピーする必要があります。
ssh-keygen
-
ユーザー定義のターゲットホストパラメータファイルを構成します。次に、ターゲットホストのファイルホストの一般的な設定例を示します。
#Oracle hosts [oracle] ora01 ansible_host=10.61.180.21 ansible_ssh_private_key_file=ora01.pem ora02 ansible_host=10.61.180.22 ansible_ssh_private_key_file=ora02.pem
-
ユーザ定義のローカルホスト固有のパラメータファイルを設定します。次に、ローカルhost_name .ymlファイル-ora01.ymlの一般的な設定例を示します。
# Binary lun ora_bin: /dev/sdb # Host DB configuration ins_sid: "{{ oracle_sid }}1" asm_sid: +ASM1
-
ユーザ定義のグローバルパラメータファイルを設定します。グローバルパラメータfile-vars.ymlの一般的な設定例を次に示します。
####################################################################### ### ONTAP env specific config variables ### ####################################################################### # ONTAP storage platform: on-prem, vmware-vvols ontap_platform: vmware-vvols # Prerequisite to create five vVolss in VMware vCenter # VCF_ORA_BINS - Oracle binary # VCF_ORA_CRS - Oracle cluster registry and vote # VCF_ORA_DAT1 - Oracle data on node1 # VCF_ORA_DAT2 - Oracle data on node2 # VCF_ORA_LOGS - Oracle logs on node1 or node2 # Oracle disks are added to VM from vVols: 1 binary disk, 3 CRS disks, 4 data disks, and 2 log disks. ###################################################################### ### Linux env specific config variables ### ###################################################################### redhat_sub_username: XXXXXXXX redhat_sub_password: "XXXXXXXX" # Networking configuration cluster_pub_ip: - {ip: 10.61.180.21, hostname: ora01} - {ip: 10.61.180.22, hostname: ora02} cluster_pri_ip: - {ip: 172.21.166.22, hostname: ora01-pri} - {ip: 172.21.166.24, hostname: ora02-pri} cluster_vip_ip: - {ip: 10.61.180.93, hostname: ora01-vip} - {ip: 10.61.180.94, hostname: ora02-vip} cluster_scan_name: ntap-scan cluster_scan_ip: - {ip: 10.61.180.90, hostname: ntap-scan} - {ip: 10.61.180.91, hostname: ntap-scan} - {ip: 10.61.180.92, hostname: ntap-scan} ##################################################################### ### DB env specific install and config variables ### ##################################################################### # Shared Oracle RAC storage ora_crs: - { device: /dev/sdc, name: ora_crs_01 } - { device: /dev/sdd, name: ora_crs_02 } - { device: /dev/sde, name: ora_crs_03 } ora_data: - { device: /dev/sdf, name: ora_data_01 } - { device: /dev/sdg, name: ora_data_02 } - { device: /dev/sdh, name: ora_data_03 } - { device: /dev/sdi, name: ora_data_04 } ora_logs: - { device: /dev/sdj, name: ora_logs_01 } - { device: /dev/sdk, name: ora_logs_02 } # Oracle RAC configuration oracle_sid: NTAP cluster_name: ntap-rac cluster_nodes: ora01,ora02 cluster_domain: solutions.netapp.com grid_cluster_nodes: ora01:ora01-vip:HUB,ora02:ora02-vip:HUB network_interface_list: ens33:10.61.180.0:1,ens34:172.21.166.0:5 memory_limit: 10240 # Set initial password for all required Oracle passwords. Change them after installation. initial_pwd_all: "XXXXXXXX"
-
Ansibleコントローラまたはクローニングされた自動化ツールキットのホームディレクトリ/home/admin/na_oracle_deploy_racから、前提条件のPlaybookを実行してAnsibleの前提条件を設定します。
ansible-playbook -i hosts 1-ansible_requirements.yml
-
Linux構成プレイブックの実行
ansible-playbook -i hosts 2-linux_config.yml -u admin -e @vars/vars.yml
-
Oracleの導入プレイブックを実行します。
ansible-playbook -i hosts 4-oracle_config.yml -u admin -e @vars/vars.yml
-
必要に応じて、上記のすべてのプレイブックを1回のプレイブック実行から実行することもできます。
ansible-playbook -i hosts 0-all_playbook.yml -u admin -e @vars/vars.yml
VCFでのOracle RAC導入の検証
Details
このセクションでは、すべてのOracle RACリソースが完全に導入され、設定され、期待どおりに機能していることを確認するための、VCFでのOracle RAC導入の検証について詳しく説明します。
-
RAC VMにadminユーザとしてログインし、Oracleグリッドインフラを検証します。
[admin@ora01 ~]$ sudo su [root@ora01 admin]# su - grid [grid@ora01 ~]$ crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.LISTENER.lsnr ONLINE ONLINE ora01 STABLE ONLINE ONLINE ora02 STABLE ora.chad ONLINE ONLINE ora01 STABLE ONLINE ONLINE ora02 STABLE ora.net1.network ONLINE ONLINE ora01 STABLE ONLINE ONLINE ora02 STABLE ora.ons ONLINE ONLINE ora01 STABLE ONLINE ONLINE ora02 STABLE ora.proxy_advm OFFLINE OFFLINE ora01 STABLE OFFLINE OFFLINE ora02 STABLE -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup) 1 ONLINE ONLINE ora01 STABLE 2 ONLINE ONLINE ora02 STABLE ora.DATA.dg(ora.asmgroup) 1 ONLINE ONLINE ora01 STABLE 2 ONLINE ONLINE ora02 STABLE ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE ora01 STABLE ora.LISTENER_SCAN2.lsnr 1 ONLINE ONLINE ora02 STABLE ora.LISTENER_SCAN3.lsnr 1 ONLINE ONLINE ora02 STABLE ora.RECO.dg(ora.asmgroup) 1 ONLINE ONLINE ora01 STABLE 2 ONLINE ONLINE ora02 STABLE ora.VOTE.dg(ora.asmgroup) 1 ONLINE ONLINE ora01 STABLE 2 ONLINE ONLINE ora02 STABLE ora.asm(ora.asmgroup) 1 ONLINE ONLINE ora01 Started,STABLE 2 ONLINE ONLINE ora02 Started,STABLE ora.asmnet1.asmnetwork(ora.asmgroup) 1 ONLINE ONLINE ora01 STABLE 2 ONLINE ONLINE ora02 STABLE ora.cvu 1 ONLINE ONLINE ora02 STABLE ora.ntap.db 1 ONLINE ONLINE ora01 Open,HOME=/u01/app/o racle2/product/19.0. 0/NTAP,STABLE 2 ONLINE ONLINE ora02 Open,HOME=/u01/app/o racle2/product/19.0. 0/NTAP,STABLE ora.ora01.vip 1 ONLINE ONLINE ora01 STABLE ora.ora02.vip 1 ONLINE ONLINE ora02 STABLE ora.qosmserver 1 ONLINE ONLINE ora02 STABLE ora.scan1.vip 1 ONLINE ONLINE ora01 STABLE ora.scan2.vip 1 ONLINE ONLINE ora02 STABLE ora.scan3.vip 1 ONLINE ONLINE ora02 STABLE -------------------------------------------------------------------------------- [grid@ora01 ~]$
-
Oracle ASMを検証
[grid@ora01 ~]$ asmcmd ASMCMD> lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 1048576 163840 163723 0 163723 0 N DATA/ MOUNTED EXTERN N 512 512 4096 1048576 163840 163729 0 163729 0 N RECO/ MOUNTED NORMAL N 512 512 4096 4194304 30720 29732 10240 9746 0 Y VOTE/ ASMCMD> lsdsk Path AFD:ORA_CRS_01 AFD:ORA_CRS_02 AFD:ORA_CRS_03 AFD:ORA_DATA_01 AFD:ORA_DATA_02 AFD:ORA_DATA_03 AFD:ORA_DATA_04 AFD:ORA_LOGS_01 AFD:ORA_LOGS_02 ASMCMD> afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'ENABLED' on host 'ora01' ASMCMD>
-
クラスタノードをリストします。
[grid@ora01 ~]$ olsnodes ora01 ora02
-
OCR /投票を検証します。
[grid@ora01 ~]$ ocrcheck Status of Oracle Cluster Registry is as follows : Version : 4 Total space (kbytes) : 901284 Used space (kbytes) : 84536 Available space (kbytes) : 816748 ID : 118267044 Device/File Name : +VOTE Device/File integrity check succeeded Device/File not configured Device/File not configured Device/File not configured Device/File not configured Cluster registry integrity check succeeded Logical corruption check bypassed due to non-privileged user [grid@ora01 ~]$ crsctl query css votedisk ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE 1ca3fcb0bd354f8ebf00ac97d70e0824 (AFD:ORA_CRS_01) [VOTE] 2. ONLINE 708f84d505a54f58bf41124e09a5115a (AFD:ORA_CRS_02) [VOTE] 3. ONLINE 133ecfcedb684fe6bfdc1899b90f91c7 (AFD:ORA_CRS_03) [VOTE] Located 3 voting disk(s). [grid@ora01 ~]$
-
Oracleリスナーを検証します。
[grid@ora01 ~]$ lsnrctl status listener LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 16-AUG-2024 10:21:38 Copyright (c) 1991, 2022, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 14-AUG-2024 16:24:48 Uptime 1 days 17 hr. 56 min. 49 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/app/grid/19.0.0/network/admin/listener.ora Listener Log File /u01/app/oracle/diag/tnslsnr/ora01/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.61.180.21)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.61.180.93)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=ora01.solutions.netapp.com)(PORT=5500))(Security=(my_wallet_directory=/u01/app/oracle2/product/19.0.0/NTAP/admin/NTAP/xdb_wallet))(Presentation=HTTP)(Session=RAW)) Services Summary... Service "+ASM" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_DATA" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_RECO" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "+ASM_VOTE" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... Service "1fbf0aaa1d13cb5ae06315b43d0ab734.solutions.netapp.com" has 1 instance(s). Instance "NTAP1", status READY, has 1 handler(s) for this service... Service "1fbf142e7db2d090e06315b43d0a6894.solutions.netapp.com" has 1 instance(s). Instance "NTAP1", status READY, has 1 handler(s) for this service... Service "1fbf203c3a46d7bae06315b43d0ae055.solutions.netapp.com" has 1 instance(s). Instance "NTAP1", status READY, has 1 handler(s) for this service... Service "NTAP.solutions.netapp.com" has 1 instance(s). Instance "NTAP1", status READY, has 1 handler(s) for this service... Service "NTAPXDB.solutions.netapp.com" has 1 instance(s). Instance "NTAP1", status READY, has 1 handler(s) for this service... Service "ntap_pdb1.solutions.netapp.com" has 1 instance(s). Instance "NTAP1", status READY, has 1 handler(s) for this service... Service "ntap_pdb2.solutions.netapp.com" has 1 instance(s). Instance "NTAP1", status READY, has 1 handler(s) for this service... Service "ntap_pdb3.solutions.netapp.com" has 1 instance(s). Instance "NTAP1", status READY, has 1 handler(s) for this service... The command completed successfully [grid@ora01 ~]$ [grid@ora01 ~]$ tnsping ntap-scan TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 16-AUG-2024 12:07:58 Copyright (c) 1997, 2022, Oracle. All rights reserved. Used parameter files: /u01/app/grid/19.0.0/network/admin/sqlnet.ora Used EZCONNECT adapter to resolve the alias Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=tcp)(HOST=10.61.180.90)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=10.61.180.91)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=10.61.180.92)(PORT=1521))) OK (10 msec)
-
クラスタ化されたデータベースを検証するには、Oracleユーザに変更してください。
[oracle@ora02 ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Fri Aug 16 11:32:23 2024 Version 19.18.0.0.0 Copyright (c) 1982, 2022, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.18.0.0.0 SQL> select name, open_mode, log_mode from v$database; NAME OPEN_MODE LOG_MODE --------- -------------------- ------------ NTAP READ WRITE ARCHIVELOG SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 NTAP_PDB1 READ WRITE NO 4 NTAP_PDB2 READ WRITE NO 5 NTAP_PDB3 READ WRITE NO SQL> select name from v$datafile 2 union 3 select name from v$controlfile 4 union 5 select member from v$logfile; NAME -------------------------------------------------------------------------------- +DATA/NTAP/1FBF0AAA1D13CB5AE06315B43D0AB734/DATAFILE/sysaux.275.1177083797 +DATA/NTAP/1FBF0AAA1D13CB5AE06315B43D0AB734/DATAFILE/system.274.1177083797 +DATA/NTAP/1FBF0AAA1D13CB5AE06315B43D0AB734/DATAFILE/undo_2.277.1177083853 +DATA/NTAP/1FBF0AAA1D13CB5AE06315B43D0AB734/DATAFILE/undotbs1.273.1177083797 +DATA/NTAP/1FBF0AAA1D13CB5AE06315B43D0AB734/DATAFILE/users.278.1177083901 +DATA/NTAP/1FBF142E7DB2D090E06315B43D0A6894/DATAFILE/sysaux.281.1177083903 +DATA/NTAP/1FBF142E7DB2D090E06315B43D0A6894/DATAFILE/system.280.1177083903 +DATA/NTAP/1FBF142E7DB2D090E06315B43D0A6894/DATAFILE/undo_2.283.1177084061 +DATA/NTAP/1FBF142E7DB2D090E06315B43D0A6894/DATAFILE/undotbs1.279.1177083903 +DATA/NTAP/1FBF142E7DB2D090E06315B43D0A6894/DATAFILE/users.284.1177084103 +DATA/NTAP/1FBF203C3A46D7BAE06315B43D0AE055/DATAFILE/sysaux.287.1177084105 NAME -------------------------------------------------------------------------------- +DATA/NTAP/1FBF203C3A46D7BAE06315B43D0AE055/DATAFILE/system.286.1177084105 +DATA/NTAP/1FBF203C3A46D7BAE06315B43D0AE055/DATAFILE/undo_2.289.1177084123 +DATA/NTAP/1FBF203C3A46D7BAE06315B43D0AE055/DATAFILE/undotbs1.285.1177084105 +DATA/NTAP/1FBF203C3A46D7BAE06315B43D0AE055/DATAFILE/users.290.1177084125 +DATA/NTAP/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.266.1177081837 +DATA/NTAP/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.265.1177081837 +DATA/NTAP/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.267.1177081837 +DATA/NTAP/CONTROLFILE/current.261.1177080403 +DATA/NTAP/DATAFILE/sysaux.258.1177080245 +DATA/NTAP/DATAFILE/system.257.1177080129 +DATA/NTAP/DATAFILE/undotbs1.259.1177080311 NAME -------------------------------------------------------------------------------- +DATA/NTAP/DATAFILE/undotbs2.269.1177082203 +DATA/NTAP/DATAFILE/users.260.1177080311 +DATA/NTAP/ONLINELOG/group_1.262.1177080427 +DATA/NTAP/ONLINELOG/group_2.263.1177080427 +DATA/NTAP/ONLINELOG/group_3.270.1177083297 +DATA/NTAP/ONLINELOG/group_4.271.1177083313 +RECO/NTAP/CONTROLFILE/current.256.1177080403 +RECO/NTAP/ONLINELOG/group_1.257.1177080427 +RECO/NTAP/ONLINELOG/group_2.258.1177080427 +RECO/NTAP/ONLINELOG/group_3.259.1177083313 +RECO/NTAP/ONLINELOG/group_4.260.1177083315 33 rows selected.
-
または、プレイブックの実行後にEM ExpressにログインしてRACデータベースを検証することもできます。
SnapCenterを使用したVCFでのOracle RACデータベースのバックアップとリカバリ
SnapCenterセットアップ
Details
SnapCenterバージョン6では、VMware vVolデータストアのサポートなど、バージョン5よりも多くの機能拡張が行われています。SnapCenterは、データベースVM上のホスト側プラグインを使用して、アプリケーション対応のデータ保護管理アクティビティを実行します。Oracle向けNetApp SnapCenterプラグインの詳細については、このドキュメントを参照して "Plug-in for Oracle Database の機能"ください。次に、VCFでOracle RACデータベースのバックアップとリカバリ用にSnapCenterバージョン6をセットアップする手順の概要を示します。
-
NetAppサポートサイトからSnapCenterソフトウェアのバージョン6をダウンロードします "ネットアップサポートのダウンロードページ"。
-
Windows VMをホストしているSnapCenterに管理者としてログインします。SnapCenter 6.0のインストールの前提条件
-
管理者として、から最新のJava JDKをインストールします "デスクトップアプリケーション用Javaの取得"。
Windowsサーバがドメイン環境に導入されている場合は、ドメインユーザをSnapCenterサーバのローカル管理者グループに追加し、ドメインユーザを指定してSnapCenterのインストールを実行します。 -
インストールユーザとしてHTTPSポート8846を使用してSnapCenter UIにログインし、SnapCenter for Oracleを設定します。
-
新規ユーザーの場合は、レビュー
Get Started
メニューを使用してSnapCenterの情報を取得します。 -
更新
Hypervisor Settings
をクリックします。 -
クラスタ管理IPを使用してONTAPストレージクラスタをに追加し
Storage Systems
、クラスタ管理者ユーザIDで認証します。 -
Oracle RACデータベースVMとvSphere `Credential`プラグインVMを追加して、SnapCenterからDB VMおよびvSphereプラグインVMにアクセスします。このクレデンシャルにはLinux VMに対するsudo権限が必要です。VMの管理ユーザIDごとに異なるクレデンシャルを作成できます。vShpereプラグインVM管理ユーザIDは、プラグインVMがvCenterに導入されるときに定義されます。
-
VCF内のOracle RACデータベースVMを、 `Hosts`前の手順で作成したDB VMクレデンシャルを使用してに追加します。
-
同様に、前の手順で作成したvSphereプラグインVMのクレデンシャルを使用して、NetApp VMwareプラグインVMをに追加します
Hosts
。 -
最後に、DB VMでOracleデータベースが検出されたら、に戻って
Settings
-Policies
Oracleデータベースバックアップポリシーを作成します。障害発生時のデータ損失を最小限に抑えるために、別のアーカイブログバックアップポリシーを作成してバックアップ間隔を長くすることを推奨します。
|
SnapCenterサーバ名をDB VMおよびvSphereプラグインVMからIPアドレスに解決できることを確認します。同様に、DB VM名とvSphereプラグインVM名は、SnapCenterサーバからIPアドレスに解決できます。 |
データベースバックアップ
Details
SnapCenterは、ONTAPボリュームスナップショットを活用して、従来のRMANベースの方法と比較して、データベースのバックアップ、リストア、クローン作成にかかる時間を大幅に短縮します。Snapshotの作成前にデータベースがOracleバックアップモードになるため、Snapshotはアプリケーションと整合性があります。
-
から
Resources
タブをクリックします。VMがSnapCenterに追加されると、VM上のすべてのデータベースが自動検出されます。初期状態では、データベースのステータスはNot protected
。 -
[database]をクリックしてワークフローを開始し、データベースの保護を有効にします。
-
バックアップポリシーを適用し、必要に応じてスケジュールを設定
-
必要に応じてバックアップジョブの通知を設定します。
-
概要を確認して終了し、データベース保護を有効にします。
-
オンデマンドバックアップジョブは、をクリックすると開始できます
Back up Now
。 -
バックアップジョブは、
Monitor
タブをクリックして実行中のジョブをクリックします。 -
[database]をクリックして、RACデータベースに対して完了したバックアップセットを確認します。
データベースのリストア/リカバリ
Details
SnapCenterには、SnapshotバックアップからのOracle RACデータベースのリストアとリカバリのオプションが多数用意されています。この例では、古いSnapshotバックアップからリストアし、使用可能な最後のログにデータベースをロールフォワードします。
-
まず、スナップショットバックアップを実行します。次に、テストテーブルを作成してテーブルに行を挿入し、Snapshotイメージからリカバリされたデータベースを検証してから、テストテーブルを作成してテストテーブルに戻します。
[oracle@ora01 ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Mon Aug 19 10:31:12 2024 Version 19.18.0.0.0 Copyright (c) 1982, 2022, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.18.0.0.0 SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 NTAP_PDB1 READ WRITE NO 4 NTAP_PDB2 READ WRITE NO 5 NTAP_PDB3 READ WRITE NO SQL> alter session set container=ntap_pdb1; Session altered. SQL> create table test (id integer, dt timestamp, event varchar(100)); Table created. SQL> insert into test values (1, sysdate, 'validate SnapCenter rac database restore on VMware vVols storage'); 1 row created. SQL> commit; Commit complete. SQL> select * from test; ID ---------- DT --------------------------------------------------------------------------- EVENT -------------------------------------------------------------------------------- 1 19-AUG-24 10.36.04.000000 AM validate SnapCenter rac database restore on VMware vVols storage SQL>
-
SnapCenter
Resources
タブで、database NTAP1 backup topologyページを開きます。3日前に作成されたSnapshotデータバックアップセットを選択します。をクリックしRestore
てrestore-recoverワークフローを起動します。 -
リストア対象を選択します。
-
リカバリ範囲を選択します
All Logs
。 -
実行する任意のプリスクリプトを指定します。
-
実行するオプションのafter-scriptを指定します。
-
必要に応じてジョブレポートを送信します。
-
概要を確認し、
Finish
リストアとリカバリを開始します。 -
RAC DB VM ora01で、データベースの正常なリストア/リカバリが最新の状態にロールフォワードされ、3日後に作成されたテストテーブルがリカバリされたことを確認します。
[root@ora01 ~]# su - oracle [oracle@ora01 ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Mon Aug 19 11:51:15 2024 Version 19.18.0.0.0 Copyright (c) 1982, 2022, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.18.0.0.0 SQL> select name, open_mode from v$database; NAME OPEN_MODE --------- -------------------- NTAP READ WRITE SQL> sho pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 NTAP_PDB1 READ WRITE NO 4 NTAP_PDB2 READ WRITE NO 5 NTAP_PDB3 READ WRITE NO SQL> alter session set container=ntap_pdb1; Session altered. SQL> select * from test; ID ---------- DT --------------------------------------------------------------------------- EVENT -------------------------------------------------------------------------------- 1 19-AUG-24 10.36.04.000000 AM validate SnapCenter rac database restore on VMware vVols storage SQL> select current_timestamp from dual; CURRENT_TIMESTAMP --------------------------------------------------------------------------- 19-AUG-24 11.55.20.079686 AM -04:00 SQL> exit Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.18.0.0.0
これで、VVOLを使用するVCFでのSnapCenter RACデータベースのバックアップ、リストア、リカバリのデモは終了です。
追加情報の参照先
このドキュメントに記載されている情報の詳細については、以下のドキュメントや Web サイトを参照してください。
-
VMware Cloud Foundationの場合
-
ネットアップのエンタープライズデータベースソリューション
-
SnapCenterソフトウェア6.0
-
ONTAP Tools for VMware vSphereのドキュメント