TR-4974:『Oracle 19C in Standalone Restart on AWS FSX/EC2 with NFS/ASM』
ネットアップ、Niyaz Mohamed、Allen Cao氏
この解決策では、NFSプロトコルを使用したAWS FSx ONTAPストレージおよびEC2コンピューティングインスタンスへのOracleデータベースの導入と保護、およびボリュームマネージャとしてASMを使用したスタンドアロン再起動で設定されたOracleデータベースの概要と詳細について説明します。
目的
ASM(Automatic Storage Management)は、多くのOracle環境で採用されている、一般的なOracleストレージボリュームマネージャです。また、Oracleが推奨するストレージ管理解決策 でもあります。これは'従来のボリューム・マネージャやファイル・システムに代わるものですOracleバージョン11g以降、ASMはデータベースではなくグリッドインフラストラクチャにパッケージ化されています。そのため、RACを使用しないストレージ管理にOracle ASMを使用するには、Oracleグリッドインフラをスタンドアロンサーバにインストールする必要があります(Oracle Restartとも呼ばれます)。そうすることで、Oracleデータベースの導入がさらに簡単になり、さらに複雑になります。ただし、その名前が示すように、Oracleが再起動モードで展開されている場合、障害が発生したOracleサービスは、ホストのリブート後にユーザの介入なしで再開されます。これにより、ある程度の高可用性またはHA機能が提供されます。
Oracle ASMは、通常、FC、iSCSIストレージプロトコル、およびLUNにrawストレージデバイスとして導入されます。ただし、Oracleでは、NFSプロトコル上のASMとNFSファイルシステムもサポートされています。このドキュメントでは、EC2コンピューティングインスタンスを使用するAmazon FSx ONTAPストレージ環境にNFSプロトコルとOracle ASMを使用してOracle 19Cデータベースを導入する方法を説明します。また、NetApp BlueXPコンソールを通じてNetApp SnapCenter サービスを使用してOracleデータベースをバックアップ、リストア、クローニングし、開発とテストに使用する方法や、AWSパブリッククラウドでストレージ効率に優れたデータベース運用を実現するその他のユースケースについて説明します。
この解決策 は、次のユースケースに対応します。
-
NFS / ASMを使用したAmazon FSx ONTAPストレージおよびEC2コンピューティングインスタンスへのOracleデータベース導入
-
NFS / ASMを使用して、パブリックAWSクラウドでOracleワークロードをテストおよび検証します
-
AWSに導入されたOracleデータベースの再起動機能のテストと検証
対象者
この解決策 は、次のユーザーを対象としています。
-
NFS / ASMを使用してAWSパブリッククラウドにOracleを導入したいと考えているDBA。
-
AWSパブリッククラウドでOracleワークロードをテストしたいと考えているデータベース解決策 アーキテクト。
-
AWS FSxストレージに導入されたOracleデータベースの導入と管理を希望するストレージ管理者。
-
AWS FSX/EC2でOracleデータベースを立ち上げるアプリケーション所有者。
解決策 のテストおよび検証環境
この解決策 のテストと検証は、最終的な導入環境と一致しないAWS FSXおよびEC2環境で実行しました。詳細については、を参照してください 導入にあたって考慮すべき主な要因。
アーキテクチャ
ハードウェアおよびソフトウェアコンポーネント
* ハードウェア * |
||
FSX ONTAP ストレージ |
AWSで提供されている最新バージョン |
同じVPCとアベイラビリティゾーンに1つのFSx HAクラスタを配置します |
コンピューティングのEC2インスタンス |
t2.xlarge / 4vCPU / 16G |
2つのEC2 T2 xlarge EC2インスタンス(1つはプライマリDBサーバ、もう1つはクローンDBサーバ) |
ソフトウェア |
||
Red Hat Linux |
RHEL-8.6.0_HVM-20220503-x86_64-2- Hourly2-gp2の場合 |
テスト用にRedHatサブスクリプションを導入 |
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 サービス |
バージョン |
V2.3.1.2324 |
導入にあたって考慮すべき主な要因
-
* EC2コンピューティングインスタンス。*これらのテストと検証では、OracleデータベースコンピューティングインスタンスにAWS EC2 T2.xlargeインスタンスタイプを使用しました。本番環境では、データベースワークロード向けに最適化されているため、OracleのコンピューティングインスタンスとしてM5タイプのEC2インスタンスを使用することを推奨します。実際のワークロード要件に基づいて、vCPUの数とRAMの容量に合わせてEC2インスタンスのサイズを適切に設定する必要があります。
-
* FSXストレージHAクラスタのシングルゾーンまたはマルチゾーン展開。*このテストと検証では、FSX HAクラスタを単一のAWSアベイラビリティゾーンに導入しました。本番環境では、FSX HAペアを2つの異なるアベイラビリティゾーンに導入することを推奨します。FSX HAクラスタは、アクティブ/パッシブファイルシステムのペアで同期ミラーされるHAペアで、ストレージレベルの冗長性を提供するために割り当てられます。マルチゾーン導入により、単一のAWSゾーンで障害が発生した場合の高可用性がさらに向上します。
-
* FSxストレージクラスタのサイジング*Amazon FSx ONTAPストレージファイルシステムは、SSDの最大16万IOPS、最大4GBpsのスループット、最大192TiBの容量を提供します。ただし、プロビジョニングされたIOPS、スループット、およびストレージ制限(最小1、024GiB)については、導入時の実際の要件に基づいてクラスタのサイジングを行うことができます。アプリケーションの可用性に影響を与えることなく、容量をオンザフライで動的に調整できます。
-
* Oracleデータとログのレイアウト。*テストと検証では、データ用とログ用にそれぞれ2つのASMディスクグループを導入しました。+data ASMディスクグループ内で、データNFSファイルシステムのマウントポイントに4本のディスクをプロビジョニングしました。+logs ASMディスクグループ内で、logs NFSファイルシステムマウントポイントに2本のディスクをプロビジョニングしました。大規模なデータベース環境では、ASMディスクグループを複数のFSxファイルシステムにまたがって構築し、FSxファイルシステムにアンカーされた複数のNFSマウントポイントを介してASM NFSディスクを分散させることができます。このセットアップは、4GBpsを超えるスループットと160,000のSSD物理IOPSの要件を満たすように設計されています。
-
* dNFS構成。* dNFSはOracleカーネルに組み込まれており、OracleをNFSストレージに導入すると、Oracleデータベースのパフォーマンスが大幅に向上することが知られています。DNFSはOracleバイナリにパッケージ化されていますが、デフォルトではオンになっていません。NFS上にOracleデータベースを導入する場合は、このオプションをオンにする必要があります。大規模なデータベースに複数のFSxファイルシステムを導入する場合は、dNFSマルチパスを適切に設定する必要があります。
-
作成したOracle ASMディスクグループごとに使用するOracle ASM冗長性レベル。 FSxはすでにFSxクラスタレベルでストレージをミラーリングしているため、必要です
ONLY
Use External Redundancy(外部冗長性を使用)。つまり、このオプションではOracle ASMはディスクグループの内容をミラーリングできません。Oracleデータベースのデータストレージ用NFSにはハードNFSマウントオプションが必要であるため、これはASMコンテンツをOracleレベルでミラーリングする場合には望ましくないため、特に重要です。 -
*データベースのバックアップ。*ネットアップでは、NetApp BlueXPコンソールのUIから利用できる、クラウドでのデータベースのバックアップ、リストア、クローニングを行うためのSnapCenter ソフトウェアサービスのSaaSバージョンを提供しています。このようなサービスを実装して、高速(1分未満)のスナップショットバックアップ、高速(数分)のデータベースリストア、データベースクローニングを実現することを推奨します。
解決策 の導入
次のセクションでは、導入手順を段階的に説明します。
導入の前提条件
Details
導入には、次の前提条件が必要です。
-
AWSアカウントが設定され、必要なVPCとネットワークセグメントがAWSアカウント内に作成されている。
-
AWS EC2コンソールから、2つのEC2 Linuxインスタンスを導入する必要があります。1つはプライマリOracle DBサーバとして、もう1つはオプションのクローンターゲットDBサーバとして使用します。環境セットアップの詳細については、前のセクションのアーキテクチャ図を参照してください。また、も参照してください "Linuxインスタンスのユーザーガイド" を参照してください。
-
AWS EC2コンソールから、Amazon FSx ONTAPストレージHAクラスタを導入してOracleデータベースボリュームをホストします。FSxストレージの導入に慣れていない場合は、ステップバイステップの手順についてドキュメントを参照してください"FSx ONTAPファイルシステムの作成"。
-
手順2と3は、次のTerraform自動化ツールキットを使用して実行できます。このツールキットでは、という名前のEC2インスタンスが作成されます
ora_01
という名前のFSxファイルシステムがありますfsx_01
。実行する前に、指示をよく確認し、環境に合わせて変数を変更してください。git clone https://github.com/NetApp-Automation/na_aws_fsx_ec2_deploy.git
Oracleインストールファイルをステージングするための十分なスペースを確保するために、EC2インスタンスのルートボリュームに少なくとも50Gが割り当てられていることを確認してください。 |
EC2インスタンスのカーネル設定
Details
前提条件をプロビジョニングした状態で、ec2-userとしてec2インスタンスにログインし、rootユーザにsudoを実行して、Oracleインストール用のLinuxカーネルを設定します。
-
ステージングディレクトリを作成します
/tmp/archive
フォルダに移動し、を設定します777
許可。mkdir /tmp/archive chmod 777 /tmp/archive
-
Oracleバイナリインストールファイルおよびその他の必要なrpmファイルをにダウンロードしてステージングします
/tmp/archive
ディレクトリ。に記載されているインストールファイルのリストを参照してください
/tmp/archive
EC2インスタンス。[ec2-user@ip-172-30-15-58 ~]$ ls -l /tmp/archive total 10537316 -rw-rw-r--. 1 ec2-user ec2-user 19112 Mar 21 15:57 compat-libcap1-1.10-7.el7.x86_64.rpm -rw-rw-r-- 1 ec2-user ec2-user 3059705302 Mar 21 22:01 LINUX.X64_193000_db_home.zip -rw-rw-r-- 1 ec2-user ec2-user 2889184573 Mar 21 21:09 LINUX.X64_193000_grid_home.zip -rw-rw-r--. 1 ec2-user ec2-user 589145 Mar 21 15:56 netapp_linux_unified_host_utilities-7-1.x86_64.rpm -rw-rw-r--. 1 ec2-user ec2-user 31828 Mar 21 15:55 oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm -rw-rw-r-- 1 ec2-user ec2-user 2872741741 Mar 21 22:31 p34762026_190000_Linux-x86-64.zip -rw-rw-r-- 1 ec2-user ec2-user 1843577895 Mar 21 22:32 p34765931_190000_Linux-x86-64.zip -rw-rw-r-- 1 ec2-user ec2-user 124347218 Mar 21 22:33 p6880880_190000_Linux-x86-64.zip -rw-r--r-- 1 ec2-user ec2-user 257136 Mar 22 16:25 policycoreutils-python-utils-2.9-9.el8.noarch.rpm
-
Oracle 19CプレインストールRPMをインストールします。これにより、ほとんどのカーネル設定要件を満たすことができます。
yum install /tmp/archive/oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm
-
不足しているをダウンロードしてインストールします
compat-libcap1
Linux 8の場合。yum install /tmp/archive/compat-libcap1-1.10-7.el7.x86_64.rpm
-
ネットアップから、NetApp Host Utilitiesをダウンロードしてインストールします。
yum install /tmp/archive/netapp_linux_unified_host_utilities-7-1.x86_64.rpm
-
をインストールします `policycoreutils-python-utils`EC2インスタンスでは使用できません。
yum install /tmp/archive/policycoreutils-python-utils-2.9-9.el8.noarch.rpm
-
Open JDKバージョン1.8をインストールします。
yum install java-1.8.0-openjdk.x86_64
-
nfs-utilsをインストールします。
yum install nfs-utils
-
現在のシステムで透過的なHugepageを無効にします。
echo never > /sys/kernel/mm/transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/defrag
に次の行を追加します
/etc/rc.local
無効にしますtransparent_hugepage
再起動後:# Disable transparent hugepages if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi if test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi
-
を変更してSELinuxを無効にします
SELINUX=enforcing
終了:SELINUX=disabled
。変更を有効にするには、ホストをリブートする必要があります。vi /etc/sysconfig/selinux
-
に次の行を追加します
limit.conf
引用符を使用せずにファイル記述子の制限とスタックサイズを設定します" "
。vi /etc/security/limits.conf "* hard nofile 65536" "* soft stack 10240"
-
次の手順に従って、EC2インスタンスにスワップスペースを追加します。 "スワップファイルを使用して、Amazon EC2インスタンスのスワップスペースとして機能するようにメモリを割り当てるにはどうすればよいですか。" 追加するスペースの正確な量は、最大16GのRAMのサイズによって異なります。
-
ASM SYSASMグループに使用するASMグループを追加します
groupadd asm
-
ASMをセカンダリグループとして追加するようにOracleユーザを変更します(Oracleユーザは、OracleプリインストールRPMインストール後に作成されている必要があります)。
usermod -a -G asm oracle
-
EC2インスタンスをリブートします。
EC2インスタンスホストにマウントするNFSボリュームをプロビジョニングおよびエクスポートします
Details
コマンドラインから3つのボリュームをプロビジョニングします。fsxadminユーザとしてssh経由でFSxクラスタにログインし、FSxクラスタ管理IPを使用してOracleデータベースのバイナリファイル、データファイル、ログファイルをホストします。
-
SSHを使用してfsxadminユーザとしてFSxクラスタにログインします。
ssh fsxadmin@172.30.15.53
-
次のコマンドを実行して、Oracleバイナリ用のボリュームを作成します。
vol create -volume ora_01_biny -aggregate aggr1 -size 50G -state online -type RW -junction-path /ora_01_biny -snapshot-policy none -tiering-policy snapshot-only
-
次のコマンドを実行してOracleデータ用のボリュームを作成します。
vol create -volume ora_01_data -aggregate aggr1 -size 100G -state online -type RW -junction-path /ora_01_data -snapshot-policy none -tiering-policy snapshot-only
-
次のコマンドを実行して、Oracleログ用のボリュームを作成します。
vol create -volume ora_01_logs -aggregate aggr1 -size 100G -state online -type RW -junction-path /ora_01_logs -snapshot-policy none -tiering-policy snapshot-only
-
作成したDBボリュームを検証します。
vol show
次のような結果が返されます。
FsxId02ad7bf3476b741df::> vol show (vol show) FsxId06c3c8b2a7bd56458::> vol show Vserver Volume Aggregate State Type Size Available Used% --------- ------------ ------------ ---------- ---- ---------- ---------- ----- svm_ora ora_01_biny aggr1 online RW 50GB 47.50GB 0% svm_ora ora_01_data aggr1 online RW 100GB 95.00GB 0% svm_ora ora_01_logs aggr1 online RW 100GB 95.00GB 0% svm_ora svm_ora_root aggr1 online RW 1GB 972.1MB 0% 4 entries were displayed.
データベースストレージの構成
Details
次に、Oracleグリッドインフラ用のFSxストレージとEC2インスタンスホストへのデータベースインストールをインポートしてセットアップします。
-
SSHキーとEC2インスタンスのIPアドレスを使用して、EC2-userとしてSSH経由でEC2インスタンスにログインします。
ssh -i ora_01.pem ec2-user@172.30.15.58
-
Oracleバイナリファイルシステムをマウントする/u01ディレクトリを作成します
sudo mkdir /u01
-
バイナリボリュームをにマウントします `/u01`がFSx NFS LIFのIPアドレスに変更されました。ネットアップの自動化ツールキットを使用してFSxクラスタを導入した場合、FSx仮想ストレージサーバのNFS LIFのIPアドレスがリソースプロビジョニングの実行時に出力に表示されます。それ以外の場合は、AWS FSxコンソールUIから取得できます。
sudo mount -t nfs 172.30.15.19:/ora_01_biny /u01 -o rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536
-
変更
/u01
Oracleユーザーおよび関連づけられているプライマリグループに対するマウントポイントの所有権sudo chown oracle:oinstall /u01
-
Oracleデータファイルシステムをマウントするための/oradataディレクトリを作成します
sudo mkdir /oradata
-
データボリュームをにマウントします `/oradata`がFSx NFS LIFのIPアドレスに変更されました
sudo mount -t nfs 172.30.15.19:/ora_01_data /oradata -o rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536
-
変更
/oradata
Oracleユーザーおよび関連づけられているプライマリグループに対するマウントポイントの所有権sudo chown oracle:oinstall /oradata
-
Oracleログファイルシステムをマウントするための/oralogsディレクトリを作成します
sudo mkdir /oralogs
-
ログボリュームをにマウントします `/oralogs`がFSx NFS LIFのIPアドレスに変更されました
sudo mount -t nfs 172.30.15.19:/ora_01_logs /oralogs -o rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536
-
変更
/oralogs
Oracleユーザーおよび関連づけられているプライマリグループに対するマウントポイントの所有権sudo chown oracle:oinstall /oralogs
-
にマウントポイントを追加します
/etc/fstab
。sudo vi /etc/fstab
次の行を追加します。
172.30.15.19:/ora_01_biny /u01 nfs rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536 0 0 172.30.15.19:/ora_01_data /oradata nfs rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536 0 0 172.30.15.19:/ora_01_logs /oralogs nfs rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536 0 0
-
Oracleユーザにsudoを実行し、ASMディスクファイルを格納するASMフォルダを作成します
sudo su su - oracle mkdir /oradata/asm mkdir /oralogs/asm
-
OracleユーザとしてASMデータディスクファイルを作成し、ディスクサイズとブロックサイズに合わせて数を変更します。
dd if=/dev/zero of=/oradata/asm/nfs_data_disk01 bs=1M count=20480 oflag=direct dd if=/dev/zero of=/oradata/asm/nfs_data_disk02 bs=1M count=20480 oflag=direct dd if=/dev/zero of=/oradata/asm/nfs_data_disk03 bs=1M count=20480 oflag=direct dd if=/dev/zero of=/oradata/asm/nfs_data_disk04 bs=1M count=20480 oflag=direct
-
rootユーザとして、データディスクファイルの権限を640に変更します
chmod 640 /oradata/asm/*
-
Oracleユーザとして、ASMログディスクファイルを作成し、ブロックサイズを含むディスクサイズに合わせてcountを変更します。
dd if=/dev/zero of=/oralogs/asm/nfs_logs_disk01 bs=1M count=40960 oflag=direct dd if=/dev/zero of=/oralogs/asm/nfs_logs_disk02 bs=1M count=40960 oflag=direct
-
rootユーザとして、ログディスクファイルの権限を640に変更します
chmod 640 /oralogs/asm/*
-
EC2インスタンスホストをリブートします。
Oracleグリッドインフラのインストール
Details
-
SSH経由でEC2インスタンスにEC2-userとしてログインし、コメントを解除してパスワード認証を有効にします
PasswordAuthentication yes
コメントすることができますPasswordAuthentication no
。sudo vi /etc/ssh/sshd_config
-
sshdサービスを再起動します。
sudo systemctl restart sshd
-
Oracleユーザパスワードをリセットします。
sudo passwd oracle
-
Oracle Restartソフトウェア所有者ユーザー(Oracle)としてログインします。Oracleディレクトリを次のように作成します。
mkdir -p /u01/app/oracle mkdir -p /u01/app/oraInventory
-
ディレクトリの権限設定を変更します。
chmod -R 775 /u01/app
-
グリッドのホームディレクトリを作成して変更します。
mkdir -p /u01/app/oracle/product/19.0.0/grid cd /u01/app/oracle/product/19.0.0/grid
-
グリッドインストールファイルを解凍します。
unzip -q /tmp/archive/LINUX.X64_193000_grid_home.zip
-
グリッドホームからを削除します
OPatch
ディレクトリ。rm -rf OPatch
-
グリッドホームからコピー
p6880880_190000_Linux-x86-64.zip
をgrid_homeに移動し、解凍します。cp /tmp/archive/p6880880_190000_Linux-x86-64.zip . unzip p6880880_190000_Linux-x86-64.zip
-
グリッドホームから、修正してください
cv/admin/cvu_config`をクリックし、コメントを解除して置換します `CV_ASSUME_DISTID=OEL5
を使用CV_ASSUME_DISTID=OL7
。vi cv/admin/cvu_config
-
を準備します
gridsetup.rsp
サイレントインストール用のファイルを作成し、にRSPファイルを配置します/tmp/archive
ディレクトリ。RSPファイルは、セクションA、B、およびGを次の情報でカバーする必要があります。INVENTORY_LOCATION=/u01/app/oraInventory oracle.install.option=HA_CONFIG ORACLE_BASE=/u01/app/oracle oracle.install.asm.OSDBA=dba oracle.install.asm.OSOPER=oper oracle.install.asm.OSASM=asm oracle.install.asm.SYSASMPassword="SetPWD" oracle.install.asm.diskGroup.name=DATA oracle.install.asm.diskGroup.redundancy=EXTERNAL oracle.install.asm.diskGroup.AUSize=4 oracle.install.asm.diskGroup.disks=/oradata/asm/*,/oralogs/asm/* oracle.install.asm.diskGroup.diskDiscoveryString=/oradata/asm/nfs_data_disk01,/oradata/asm/nfs_data_disk02,/oradata/asm/nfs_data_disk03,/oradata/asm/nfs_data_disk04 oracle.install.asm.monitorPassword="SetPWD" oracle.install.asm.configureAFD=false
-
EC2インスタンスにrootユーザとしてログインします。
-
をインストールします
cvuqdisk-1.0.10-1.rpm
。rpm -ivh /u01/app/oracle/product/19.0.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm
-
EC2インスタンスにOracleユーザとしてログインし、でパッチを展開します
/tmp/archive
フォルダ。unzip p34762026_190000_Linux-x86-64.zip
-
grid home/u01/app/oracle/product/19.0.0/gridからOracleユーザーとしてを起動します
gridSetup.sh
グリッドインフラのインストールに使用します。./gridSetup.sh -applyRU /tmp/archive/34762026/ -silent -responseFile /tmp/archive/gridsetup.rsp
グリッドインフラのグループが間違っているという警告は無視してください。Oracle Restartの管理には単一のOracleユーザを使用しているため、これは想定されています。
-
rootユーザとして、次のスクリプトを実行します。
/u01/app/oraInventory/orainstRoot.sh /u01/app/oracle/product/19.0.0/grid/root.sh
-
Oracleユーザとして、次のコマンドを実行して設定を完了します。
/u01/app/oracle/product/19.0.0/grid/gridSetup.sh -executeConfigTools -responseFile /tmp/archive/gridsetup.rsp -silent
-
Oracleユーザとして、logsディスクグループを作成します。
bin/asmca -silent -sysAsmPassword 'yourPWD' -asmsnmpPassword 'yourPWD' -createDiskGroup -diskGroupName LOGS -disk '/oralogs/asm/nfs_logs_disk*' -redundancy EXTERNAL -au_size 4
-
Oracleユーザとして、インストールの設定後にグリッドサービスを検証します。
bin/crsctl stat res -t + Name Target State Server State details Local Resources ora.DATA.dg ONLINE ONLINE ip-172-30-15-58 STABLE ora.LISTENER.lsnr ONLINE ONLINE ip-172-30-15-58 STABLE ora.LOGS.dg ONLINE ONLINE ip-172-30-15-58 STABLE ora.asm ONLINE ONLINE ip-172-30-15-58 Started,STABLE ora.ons OFFLINE OFFLINE ip-172-30-15-58 STABLE Cluster Resources ora.cssd ONLINE ONLINE ip-172-30-15-58 STABLE ora.diskmon OFFLINE OFFLINE STABLE ora.driver.afd ONLINE ONLINE ip-172-30-15-58 STABLE ora.evmd ONLINE ONLINE ip-172-30-15-58 STABLE
Oracleデータベースのインストール
Details
-
Oracleユーザとしてログインし、設定を解除します
$ORACLE_HOME
および$ORACLE_SID
設定されている場合。unset ORACLE_HOME unset ORACLE_SID
-
Oracle DBのホームディレクトリを作成し、ディレクトリに変更します。
mkdir /u01/app/oracle/product/19.0.0/db1 cd /u01/app/oracle/product/19.0.0/db1
-
Oracle DBインストールファイルを解凍します。
unzip -q /tmp/archive/LINUX.X64_193000_db_home.zip
-
DBホームからを削除します
OPatch
ディレクトリ。rm -rf OPatch
-
DBホームからコピーします
p6880880_190000_Linux-x86-64.zip
終了: `grid_home`をクリックして解凍します。cp /tmp/archive/p6880880_190000_Linux-x86-64.zip . unzip p6880880_190000_Linux-x86-64.zip
-
DBホームから、を修正します
cv/admin/cvu_config`をクリックし、コメントを解除して置換します `CV_ASSUME_DISTID=OEL5
を使用CV_ASSUME_DISTID=OL7
。vi cv/admin/cvu_config
-
から
/tmp/archive
ディレクトリで、DB 19.18 RUパッチを解凍します。unzip p34765931_190000_Linux-x86-64.zip
-
でDBサイレントインストールRSPファイルを準備します
/tmp/archive/dbinstall.rsp
次の値を持つディレクトリ:oracle.install.option=INSTALL_DB_SWONLY UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/u01/app/oraInventory ORACLE_HOME=/u01/app/oracle/product/19.0.0/db1 ORACLE_BASE=/u01/app/oracle oracle.install.db.InstallEdition=EE oracle.install.db.OSDBA_GROUP=dba oracle.install.db.OSOPER_GROUP=oper oracle.install.db.OSBACKUPDBA_GROUP=oper oracle.install.db.OSDGDBA_GROUP=dba oracle.install.db.OSKMDBA_GROUP=dba oracle.install.db.OSRACDBA_GROUP=dba oracle.install.db.rootconfig.executeRootScript=false
-
db1 home/u01/app/oracle/product/19.0.0/db1から、サイレントソフトウェアのみのDBインストールを実行します。
./runInstaller -applyRU /tmp/archive/34765931/ -silent -ignorePrereqFailure -responseFile /tmp/archive/dbinstall.rsp
-
rootユーザとして、を実行します
root.sh
ソフトウェアのみのインストール後にスクリプトを作成します。/u01/app/oracle/product/19.0.0/db1/root.sh
-
Oracleユーザとして、を作成します
dbca.rsp
次のエントリを含むファイル:gdbName=db1.demo.netapp.com sid=db1 createAsContainerDatabase=true numberOfPDBs=3 pdbName=db1_pdb useLocalUndoForPDBs=true pdbAdminPassword="yourPWD" templateName=General_Purpose.dbc sysPassword="yourPWD" systemPassword="yourPWD" dbsnmpPassword="yourPWD" storageType=ASM diskGroupName=DATA characterSet=AL32UTF8 nationalCharacterSet=AL16UTF16 listeners=LISTENER databaseType=MULTIPURPOSE automaticMemoryManagement=false totalMemory=8192
EC2インスタンスホストで使用可能なメモリに基づいて合計メモリを設定します。Oracleはの75%を割り当てています totalMemory
DBインスタンスのSGAまたはバッファキャッシュへ。 -
Oracleユーザとして、dbcaを使用してDB作成を起動します。
bin/dbca -silent -createDatabase -responseFile /tmp/archive/dbca.rsp output: Prepare for db operation 7% complete Registering database with Oracle Restart 11% complete Copying database files 33% complete Creating and starting Oracle instance 35% complete 38% complete 42% complete 45% complete 48% complete Completing Database Creation 53% complete 55% complete 56% complete Creating Pluggable Databases 60% complete 64% complete 69% complete 78% complete Executing Post Configuration Actions 100% complete Database creation complete. For details check the logfiles at: /u01/app/oracle/cfgtoollogs/dbca/db1. Database Information: Global Database Name:db1.demo.netapp.com System Identifier(SID):db1 Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/db1/db1.log" for further details.
-
Oracleユーザとして、Oracleデータベースの作成後にHAサービスを再起動することを検証します。
[oracle@ip-172-30-15-58 db1]$ ../grid/bin/crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA.dg ONLINE ONLINE ip-172-30-15-58 STABLE ora.LISTENER.lsnr ONLINE ONLINE ip-172-30-15-58 STABLE ora.LOGS.dg ONLINE ONLINE ip-172-30-15-58 STABLE ora.asm ONLINE ONLINE ip-172-30-15-58 Started,STABLE ora.ons OFFLINE OFFLINE ip-172-30-15-58 STABLE -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 ONLINE ONLINE ip-172-30-15-58 STABLE ora.db1.db 1 ONLINE ONLINE ip-172-30-15-58 Open,HOME=/u01/app/o racle/product/19.0.0 /db1,STABLE ora.diskmon 1 OFFLINE OFFLINE STABLE ora.evmd 1 ONLINE ONLINE ip-172-30-15-58 STABLE -------------------------------------------------------------------------------- [oracle@ip-172-30-15-58 db1]$
-
Oracleユーザを設定します
.bash_profile
。vi ~/.bash_profile
-
次のエントリを追加します。
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/db1 export ORACLE_SID=db1 export PATH=$PATH:$ORACLE_HOME/bin alias asm='export ORACLE_HOME=/u01/app/oracle/product/19.0.0/grid;export ORACLE_SID=+ASM;export PATH=$PATH:$ORACLE_HOME/bin'
-
作成したCDB/PDBを検証します。
. ~/.bash_profile sqlplus / as sysdba SQL> select name, open_mode from v$database; NAME OPEN_MODE DB1 READ WRITE SQL> select name from v$datafile; NAME +DATA/DB1/DATAFILE/system.256.1132176177 +DATA/DB1/DATAFILE/sysaux.257.1132176221 +DATA/DB1/DATAFILE/undotbs1.258.1132176247 +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.265.1132177009 +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.266.1132177009 +DATA/DB1/DATAFILE/users.259.1132176247 +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.267.1132177009 +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/system.271.1132177853 +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/sysaux.272.1132177853 +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/undotbs1.270.1132177853 +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/users.274.1132177871 NAME +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/system.276.1132177871 +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/sysaux.277.1132177871 +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/undotbs1.275.1132177871 +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/users.279.1132177889 +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/system.281.1132177889 +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/sysaux.282.1132177889 +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/undotbs1.280.1132177889 +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/users.284.1132177907 19 rows selected. SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED 2 PDB$SEED READ ONLY NO 3 DB1_PDB1 READ WRITE NO 4 DB1_PDB2 READ WRITE NO 5 DB1_PDB3 READ WRITE NO SQL>
-
Oracleユーザとして、Oracleデータベースのホームディレクトリ/u01/app/oracle/product/19.0.0/db1に変更し、[Enable dNFS]を選択します
cd /u01/app/oracle/product/19.0.0/db1 mkdir rdbms/lib/odm cp lib/libnfsodm19.so rdbms/lib/odm/
-
ORACLE_HOMEにoranfstabファイルを設定します
vi $ORACLE_HOME/dbs/oranfstab add following entries: server: fsx_01 local: 172.30.15.58 path: 172.30.15.19 nfs_version: nfsv3 export: /ora_01_biny mount: /u01 export: /ora_01_data mount: /oradata export: /ora_01_logs mount: /oralogs
-
Oracleユーザとして、sqlplusからデータベースにログインし、DBリカバリのサイズと場所を+logsディスクグループに設定します。
. ~/.bash_profile sqlplus / as sysdba alter system set db_recovery_file_dest_size = 80G scope=both; alter system set db_recovery_file_dest = '+LOGS' scope=both;
-
アーカイブログモードを有効にし、Oracle DBインスタンスをリブートします
shutdown immediate; startup mount; alter database archivelog; alter database open; alter system switch logfile;
-
インスタンスのリブート後にDBログモードとdNFSを検証します
SQL> select name, log_mode from v$database; NAME LOG_MODE --------- ------------ DB1 ARCHIVELOG SQL> select svrname, dirname from v$dnfs_servers; SVRNAME -------------------------------------------------------------------------------- DIRNAME -------------------------------------------------------------------------------- fsx_01 /ora_01_data fsx_01 /ora_01_biny fsx_01 /ora_01_logs
-
Oracle ASMを検証
[oracle@ip-172-30-15-58 db1]$ asm [oracle@ip-172-30-15-58 db1]$ sqlplus / as sysasm SQL*Plus: Release 19.0.0.0.0 - Production on Tue May 9 20:39:39 2023 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> set lin 200 SQL> col path form a30 SQL> select name, path, header_status, mount_status, state from v$asm_disk; NAME PATH HEADER_STATU MOUNT_S STATE ------------------------------ ------------------------------ ------------ ------- -------- DATA_0002 /oradata/asm/nfs_data_disk01 MEMBER CACHED NORMAL DATA_0000 /oradata/asm/nfs_data_disk02 MEMBER CACHED NORMAL DATA_0001 /oradata/asm/nfs_data_disk03 MEMBER CACHED NORMAL DATA_0003 /oradata/asm/nfs_data_disk04 MEMBER CACHED NORMAL LOGS_0000 /oralogs/asm/nfs_logs_disk01 MEMBER CACHED NORMAL LOGS_0001 /oralogs/asm/nfs_logs_disk02 MEMBER CACHED NORMAL 6 rows selected. SQL> select name, state, ALLOCATION_UNIT_SIZE, TOTAL_MB, FREE_MB from v$asm_diskgroup; NAME STATE ALLOCATION_UNIT_SIZE TOTAL_MB FREE_MB ------------------------------ ----------- -------------------- ---------- ---------- DATA MOUNTED 4194304 81920 73536 LOGS MOUNTED 4194304 81920 81640 This completes Oracle 19c version 19.18 Restart deployment on an Amazon FSx ONTAP and EC2 compute instance with NFS/ASM. If desired, NetApp recommends relocating the Oracle control file and online log files to the +LOGS disk group.
自動導入オプション
ネットアップは、この解決策 の実装を容易にするために、Ansibleを搭載した完全自動化された解決策 導入ツールキットをリリースします。利用可能なツールキットについては、再度ご確認ください。リリース後、リンクがここに掲載されます。
SnapCenter サービスを使用したOracleデータベースのバックアップ、リストア、クローニング
現時点では、NFSおよびASMストレージオプションを使用するOracleデータベースは、従来のSnapCenter Server UIツールでのみサポートされています。を参照してください。 "SnapCenter を使用したハイブリッドクラウドデータベースソリューション" NetApp SnapCenter UIツールを使用したOracleデータベースのバックアップ、リストア、およびクローニングの詳細については、を参照してください。
追加情報の参照先
このドキュメントに記載されている情報の詳細については、以下のドキュメントや Web サイトを参照してください。
-
新規データベースをインストールしたスタンドアロンサーバー用のOracle Grid Infrastructureのインストール
-
応答ファイルを使用したOracleデータベースのインストールと設定
-
Amazon FSx ONTAP
-
Amazon EC2