15 Oracle Database Applianceのベア・メタル・デプロイメントおよびKVMデプロイメントでのCPUプールの管理
CPUプールを使用して、Oracle Database Applianceのベア・メタル・デプロイメントおよびKVMデプロイメントのCPUリソースを管理します。
- CPUプールについて
CPUプールを使用すると、ベア・メタルおよびKVMデプロイメントの両方で、Oracle Database Appliance上のCPUリソースを管理できます。 3タイプのCPUプール(BM、VMおよびDBシステム)があります。 - ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの作成
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントにCPUプールを作成します。 - ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの再マッピング
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントでCPUプールを再マップします。 - ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの表示
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントのすべてのCPUプール、またはCPUプールに関する詳細を表示します。 - ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの変更
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントのCPUプールを変更します。 - ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの削除
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントのCPUプールを削除します。 - ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの監査レコードの表示
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントのCPUプールを削除します。 - オーバーサブスクライブされたCPUプールについて
CPUプールで利用できるリソースよりも多くのCPUリソースをサブスクライブしないように仮想マシンを構成します。
CPUプールについて
CPUプールを使用すると、ベア・メタルおよびKVMデプロイメントの両方で、Oracle Database Appliance上のCPUリソースを管理できます。 3タイプのCPUプール(BM、VMおよびDBシステム)があります。
ベア・メタル・ホストのデータベースが、CPUプールで指定されたCPUリストのみに基づいて実行されるようにするには、BM CPUプールを使用します。 すべてのOracleプロセスはこのCPUプール内のCPUにバインドされ、これらのCPUでのみ実行されます。 ベア・メタルCPUプールは、init.ora
パラメータprocessor_group_name
を更新してデータベースに割り当てられます。
仮想マシンのワークロードに対するCPUリソース割当てをケージングおよび管理するには、VM CPUプールを使用します。 ワークロードを分離するには、CPUプールを作成して特定のCPUプールに仮想マシンを割り当てるか、ピン留めします。 CPUプールに仮想マシンをピン留めすると、仮想マシンがそのCPUプールのCPUのみを使用するようになります。
DBシステムのCPUプールはVM CPUプールと似ていますが、DBシステムにのみ適用されます。
CPUプール内のリソースはオー・バー・ラップできません。つまり、CPUプールはCPUを共有できません。 ただし、1つのCPUプールを複数のデータベース(BM CPUプール)、VM (VM CPUプール)、またはDBシステム(共有DBシステムのCPUプール)に割り当てることができます。
Oracle Database Applianceには、CPUプールを作成、更新、変更および削除するためのODACLIコマンドが用意されています。
デフォルトでは、最適なパフォーマンスを実現するために、ソケットの最初のコアは予約されており、VMおよびDBシステムのCPUプールでは使用できません。 この動作は、リリース19.12以降にNUMAが有効になっている場合に利用可能です。 CPUプールでソケットの最初のコアを使用する場合は、--use-reserved-cores
オプションを使用して、VMおよびDBシステムのCPUプールにソケットの最初のコアを使用できるようにします。
ベア・メタルCPUプールについて
新しいデータベースの場合は、create-database
コマンドを使用して新しいCPUプールをアタッチできます。 既存のデータベースの場合は、modify-database
コマンドを使用してCPUプールをデータベースにアタッチします。 変更を有効にするには、データベースを手動で再起動します。 ソース・データベースでCPUプールが使用されている場合、クローン、ストア、およびリカバリのデータベース操作でも同じCPUプールの使用が試行されます。 新しいCPUプールを使用するには、--cpupool
オプションを指定します。 スタンバイ・データベースは、プライマリ・データベースに構成されたCPUプールを使用します。 スタンバイ・サイトで個別のCPUプールを使用する場合は、バックアップをスタンバイ・サイトにリストアする際にirestore-database
コマンドで--cpupool
オプションを指定します。 コマンド構文の詳細は、このガイドの「Oracle Database Applianceコマンドライン・インタフェース」の章を参照してください。
VM CPUプールについて
新しいVMの場合、create-vm
コマンドを使用して新しいCPUプールをアタッチできます。 既存のVMの場合は、modify-vm
コマンドを使用してCPUプールをアタッチまたは更新します。 --live
オプションを使用して、実行中のVMに変更を適用し、--config
パラメータを使用して変更を永続化します。 コマンド構文の詳細は、このガイドのOracle Database Applianceコマンドライン・インタフェースの章を参照してください。
DBシステムCPUプールについて
DBシステムを作成すると、このDBシステムに関連付けられた内部DBシステムのCPUプールが自動的に作成されます。 内部DBシステムCPUプールは、内部で作成および管理されます。 手動で作成、変更または削除することはできません。 Oracle Database Applianceリリース19.11以降、DBシステム間で共有できる新しいタイプの共有DBシステムCPUプールを作成できます。 詳細は、このガイドのトピック「KVMデプロイメントでのデータベース・システムでの共有CPUプールの管理」を参照してください。
CPUプールの監査レコードについて
CPUプールの操作履歴は、監査目的で監査レコードのメタデータおよびシステム・ログに記録されます。 CPUプールの変更には、作成操作、変更操作、削除操作、VMおよびデータベースからのアタッチ操作およびデタッチ操作が含まれます。 CPUプールの監査レコードは、odacli list-auditrecords
およびodacli describe-auditrecord
コマンドを使用して問い合せることができますが、変更することも削除することもできません。 コマンド構文の詳細は、このガイドのOracle Database Applianceコマンドライン・インタフェースの章を参照してください。
CPUプールの割当てに対するCPUコアの変更の影響について
odacli update-cpucore
コマンドを使用して、Oracle Database ApplianceのCPUコア数を変更した可能性があります。 2つの倍数のコア(少なくとも2つのコア)を割り当てる必要があります。 CPUコア数を変更した場合、それ以降、CPUコア数を増やすことのみ可能です。
odacli create-cpupool
およびodacli modify-cpupool
で、常にオンラインのCPUが選択されます。 したがって、ベア・メタル・デプロイメントとKVMデプロイメントの両方で、odacli update-cpucore
コマンドの実行後に作成されるCPUプールでは、使用可能なオンラインのCPUが選択されます。- ベア・メタル・デプロイメントおよびKVMデプロイメントの既存のCPUプールについては、
odacli update-cpucore
コマンドを実行すると、一部のCPUがオフラインになることがあります。odacli describe-cpupool
コマンドを使用して、CPUプールでCPUがオフラインになっているかどうかを確認します。 その後、odacli modify-cpupool
コマンドを使用して、使用可能なオンラインのCPUを使用するようにCPUプールを更新できます。 - データベースでCPUプールが使用され、一部のCPUがオフラインになる場合は、
odacli modify-cpupool
コマンドを使用してCPUプールを更新します。 更新されたCPUプールが使用されるように、データベースを再起動します。
ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの作成
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントにCPUプールを作成します。
CPUプールを作成するためのODACLIの使用方法
CPUプールを作成するには、コマンドodacli create-cpupool
を使用します。
cpupool1
という名前のVM CPUプールを作成します。# odacli create-cpupool -n cpupool1 -c 6 -vm
CPUプールを作成するためのブラウザ・ユーザー・インタフェースの使用方法
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPU Pool」をクリックして、「CPU Pool」ページを表示します。
- 「Create CPU Pool」をクリックします。
- 「Create CPU Pool」ページで、次を指定します。
- CPUプール名: CPUプールの名前
- CPUプール・タイプ: CPUプールがベア・メタルまたは仮想システムのいずれであるかを指定します。
- CPUコアの数: プールに割り当てられているCPUコアの数
- 使用するソケット: CPUプールに使用するソケットを指定します。
- 構成: 高可用性デプロイメントの場合は、CPUプールを構成するノードを選択します。
- 予約済CPUコアの使用: 予約済CPUコアを使用する場合は、このオプションを選択します。
- 「Create」をクリックします。
- ジョブを発行すると、ジョブIDとジョブへのリンクが表示されます。 リンクをクリックすると、ジョブのステータスと詳細が表示されます。
- ジョブが完了したことを検証します。 ブラウザ・ユーザー・インタフェースの「Activity」タブでジョブを追跡することも、ジョブIDを指定してコマンド
odacli describe-job
を実行することもできます。
ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの再マッピング
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントでCPUプールを再マップします。
CPUプールを再マップするためのODACLIの使用方法
ベア・メタル・システムにOracle Database Applianceリリース19.12以降にパッチを適用すると、パッチ適用後にNUMAが有効になります。 次に、コマンドodacli remap-cpupools
を使用してCPUプールを再マップします。
詳細は、Oracle Database ApplianceでのNUMAの有効化についてのトピックを参照してください。
CPUプールを再マップするためのブラウザ・ユーザー・インタフェースの使用方法
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPU Pool」をクリックして、「CPU Pools」ページを表示します。
- ページの「Remap CPU Pool」をクリックします。 これにより、NUMA割当てのすべてのCPUプールが再マップされます。
- 再マップ操作を強制する場合は、確認ダイアログで「強制実行」を選択します。 予約済CPUコアを使用するには、「予約済CPUコアの使用」を選択します。
- 「Yes」をクリックして、アクションを確定します。
- ジョブを発行すると、ジョブIDとジョブへのリンクが表示されます。 リンクをクリックすると、ジョブのステータスと詳細が表示されます。
- ジョブが完了したことを検証します。 ブラウザ・ユーザー・インタフェースの「Activity」タブでジョブを追跡することも、ジョブIDを指定してコマンド
odacli describe-job
を実行することもできます。
ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの表示
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントのすべてのCPUプール、またはCPUプールに関する詳細を表示します。
CPUプールを表示するためのODACLIの使用方法
odacli describe-cpupool
を使用すると、CPUプールの詳細が表示されます。 デプロイメントのすべてのCPUプールを表示するには、コマンドodacli list-cpupools
を使用します。 # odacli list-cpupools
# odacli describe-cpupool -n cpupool1
CPUプールを表示するためのブラウザ・ユーザー・インタフェースの使用方法
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPU Pool」をクリックして、「CPU Pool」ページを表示します。
- 構成されているすべてのCPUプールのリストを表示できます。
- CPUプールの詳細を表示するには、CPUプールをクリックするか、「Actions」ドロップダウンをクリックして「View Details」を選択します。
ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの変更
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントのCPUプールを変更します。
CPUプールを変更するためのODACLIの使用方法
CPUプールを変更するには、コマンドodacli modify-cpupool
を使用します。
# odacli modify-cpupool -n cpupool1 -c 10
更新されたCPUプールが使用されるように、関連付けられたデータベースを再起動します。
CPUプールを変更するためのブラウザ・ユーザー・インタフェースの使用方法
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPU Pool」をクリックして、「CPU Pools」ページを表示します。
- 変更するCPUプールの「Actions」ドロップダウン・リストから、「Modify」を選択します。
- 「Modify CPU Pool」ページで、「Number of CPU Cores」に変更内容を指定し、実行中のVMに変更を適用するか、変更操作を強制するかを選択します。 その後で、「Modify」をクリックします。
- ジョブを発行すると、ジョブIDとジョブへのリンクが表示されます。 リンクをクリックすると、ジョブのステータスと詳細が表示されます。
- ジョブが完了したことを検証します。 ブラウザ・ユーザー・インタフェースの「Activity」タブでジョブを追跡することも、ジョブIDを指定してコマンド
odacli describe-job
を実行することもできます。
ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの削除
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントのCPUプールを削除します。
CPUプールを削除するためのODACLIの使用方法
CPUプールを削除するには、コマンドodacli delete-cpupool
を使用します。
cpupool1
という名前のCPUプールを削除します。# odacli delete-cpupool -n cpupool1
CPUプールを削除するためのブラウザ・ユーザー・インタフェースの使用方法
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPU Pool」をクリックして、「CPU Pool」ページを表示します。
- 削除するCPUプールの「Actions」ドロップダウン・リストから、「Delete」を選択します。
- 「Yes」をクリックして、選択内容を確定します。
- ジョブを発行すると、ジョブIDとジョブへのリンクが表示されます。 リンクをクリックすると、ジョブのステータスと詳細が表示されます。
- ジョブが完了したことを検証します。 ブラウザ・ユーザー・インタフェースの「Activity」タブでジョブを追跡することも、ジョブIDを指定してコマンド
odacli describe-job
を実行することもできます。
ベア・メタル・デプロイメントまたはKVMデプロイメントでのCPUプールの監査レコードの表示
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタル・デプロイメントまたはKVMデプロイメントのCPUプールを削除します。
CPUプールの監査レコード詳細を表示するためのODACLIの使用方法
odacli list-auditrecords
コマンドを使用して、CPUプールの監査レコードをリストします。
# odacli list-auditrecords
odacli describe-auditrecord
コマンドを使用して、CPUプールの監査レコードを詳細表示します。
# odacli describe-auditrecord
CPUプールの監査レコード詳細を表示するためのブラウザ・ユーザー・インタフェースの使用方法
- ブラウザ・ユーザー・インタフェースにログインします。
https://host-ip-address:7093/mgmt/index.html
- 「セキュリティ」タブをクリックします。
- 「Show Advanced Search」を選択し、CPU監査レコードの詳細のフィルタを指定します(開始日と終了日、リソース・タイプ、リソース名、DCSユーザー名、操作タイプ、CPUプールの詳細を表示するレコード数など)。
- 表示される監査レコードのリストから、ドリルダウンして詳細を確認する監査レコードIDをクリックします。
オーバーサブスクライブされたCPUプールについて
CPUプールで利用できるリソースよりも多くのCPUリソースをサブスクライブしないように仮想マシンを構成します。
CPUリソースを1つのCPUプールに割り当てることはできますが、1つのCPUプールにしか属せません。 複数の仮想マシンを、同じCPUプールに割り当てることができます。 CPUプールは、プール内のアクティブな仮想マシンがプールに構成された数を超えるCPUを必要とする場合、オーバーサブスクライブになります。 たとえば、CPUプールに4つのCPUがある場合、それぞれ4つのCPUを使用するように定義された2つの仮想マシンを起動できます。 この場合、4つのCPUそれぞれが2つの仮想マシンをサポートしているため、CPUプールはオーバーサブスクライブされます。
これらの仮想マシンのいずれかを停止したとしても、2つのCPUが必要な別の仮想マシンを起動する場合、CPUプールはオーバーサブスクライブされたままになります。 これは、CPUの2つが両方の仮想マシンをサポートしているためです。 CPUプールをオーバーサブスクライブした場合、そのプール内の仮想マシンのパフォーマンスを評価します。 オーバーサブスクライブされたプールの共有によって許容できないレベルまでパフォーマンスが低下している場合は、1つ以上の仮想マシンを異なるCPUプールに再度割り当てます。