Oracleデータベースの導入で考慮すべき要素
パブリッククラウドには、コンピューティングとストレージに多数の選択肢があり、適切なタイプのコンピューティングインスタンスとストレージエンジンを使用することで、データベースの導入を開始できます。また、Oracleデータベース用に最適化されたコンピューティングとストレージの構成も選択する必要があります。
以降のセクションでは、OracleデータベースをFSXストレージを搭載したEC2インスタンス上のAWSパブリッククラウドに導入する場合の主な考慮事項について説明します。
VM パフォーマンス
パブリッククラウドのリレーショナルデータベースのパフォーマンスを最適化するには、適切な VM サイズを選択することが重要です。パフォーマンスを高めるために、Oracle環境にはEC2 M5シリーズインスタンスを使用することを推奨します。このインスタンスはデータベースワークロードに最適化されています。AWSでOracleのRDSインスタンスを提供する際にも、同じインスタンスタイプが使用される。
-
ワークロードの特性に基づいて、正しいvCPUとRAMの組み合わせを選択してください。
-
VMにスワップスペースを追加する。デフォルトのEC2インスタンス配置ではスワップスペースは作成されませんが、これはデータベースには最適な方法ではありません。
ストレージのレイアウトと設定
次のストレージレイアウトを推奨します。
-
NFSストレージの場合、推奨されるボリュームレイアウトは3つのボリュームです。1つはOracleバイナリ用、1つはOracleデータ用、もう1つは重複する制御ファイル用、もう1つはOracleアクティブログ、アーカイブログ、および制御ファイル用です。
-
iSCSIストレージの場合、推奨されるボリュームレイアウトは、Oracleバイナリ用のボリューム、Oracleデータ用のボリューム、重複する制御ファイル用のボリューム、Oracleアクティブログ、アーカイブログ、および制御ファイル用のボリュームの3つです。ただし、データボリュームとログボリュームにはそれぞれ4つのLUNを含めるのが理想的です。LUNの負荷はHAクラスタノード上に分散して配置するのが理想的です。
-
ストレージIOPSとスループットについては、FSXストレージクラスタのプロビジョニングされたIOPSとスループットのしきい値を選択できます。これらのパラメータは、ワークロードが変更されるたびにオンザフライで調整できます。
-
自動IOPS設定は、割り当てられているストレージ容量のGiBあたり3 IOPS、またはユーザ定義のストレージあたり最大80、000 IOPSです。
-
スループットレベルは、128、256、512、1024、2045 Mbpsのように増分されます。
-
スループットとIOPSのサイジングについては、ドキュメントを参照して"Amazon FSx ONTAPのパフォーマンス"ください。
NFS の設定
最も一般的なオペレーティングシステムであるLinuxには、ネイティブのNFS機能が含まれています。Oracleは、Oracleにネイティブに統合されたDirect NFS(dNFS)クライアントを提供しています。Oracleは20年以上にわたってNFSv3をサポートしています。DNFSは、OracleのすべてのバージョンでNFSv3でサポートされています。NFSv4は、NFSv4標準に準拠するすべてのOSでサポートされます。NFSv4のDNFSサポートには、Oracle 12.1.0.2以降が必要です。NFSv4.1では、特定のOSサポートが必要です。サポート対象のOSについては、NetApp Interoperability Matrix Tool(IMT )を参照してください。NFSv4.1のDNFSサポートには、Oracleバージョン19.3.0.0以降が必要です。
NetApp Automation Toolkitを使用したOracleの自動導入で、NFSv3ではdNFSが自動的に設定されます。
その他の考慮事項:
-
TCPスロットテーブルは、ホストバスアダプタ(HBA)キュー深度に相当するNFS環境の機能で、一度に未処理となることのできるNFS処理の数を制御します。デフォルト値は通常16ですが、最適なパフォーマンスを得るには小さすぎます。逆に、新しいLinuxカーネルでTCPスロットテーブルの上限をNFSサーバが要求でいっぱいになるレベルに自動的に引き上げることができるため、問題が発生します。
パフォーマンスを最適化し、パフォーマンスの問題を回避するには、TCPスロットテーブルを制御するカーネルパラメータを128に調整します。
sysctl -a | grep tcp.*.slot_table
-
次の表に、Linux NFSv3 -シングルインスタンスに対する推奨されるNFSマウントオプションを示します。
dNFSを使用する前に、Oracleドキュメント1495104.1に記載されているパッチがインストールされていることを確認してください。NFSv3とNFSv4のネットアップサポートマトリックスには、特定のオペレーティングシステムは含まれていません。RFCに準拠するすべてのOSがサポートされます。オンラインのIMT でNFSv3またはNFSv4のサポートを検索する場合は、一致するOSが表示されないため、特定のOSを選択しないでください。すべてのOSは、一般ポリシーで暗黙的にサポートされています。 |
高可用性
解決策 アーキテクチャに示されているように、HAはストレージレベルのレプリケーションを基盤としています。そのためOracleのスタートアップと可用性は、コンピューティングとストレージをどれだけ迅速に起動してリカバリできるかにかかっています。主な要因は次のとおりです。
-
スタンバイコンピューティングインスタンスを準備し、両方のホストにAnsibleパラレル更新を使用してプライマリと同期します。
-
スタンバイ目的でプライマリからバイナリボリュームをレプリケートするため、最後の1分間にOracleをインストールする必要がなく、インストールしてパッチを適用する必要があることを特定できます。
-
レプリケーションの頻度は、Oracleデータベースをリカバリしてサービスを利用できるようにするまでの時間を示します。レプリケーションの頻度とストレージ消費量のバランスが考慮されます。
-
自動化を活用してリカバリを行い、スタンバイ状態にすばやく、人的ミスがないように切り替えます。ネットアップは、この目的のための自動化ツールキットを提供しています