12 Oracle Database Applianceベア・メタルおよびKVMデプロイメントでのCPUプールの管理
CPUプールを使用して、Oracle Database Applianceベア・メタルおよびKVMデプロイメントでCPUリソースを管理します。
- CPUプールについて
CPUプールを使用すると、ベア・メタルおよびKVMデプロイメントの両方で、Oracle Database Appliance上のCPUリソースを管理できます。 CPUプールには、BM、VMおよびdbsystemの3つのタイプがあります。 - ベア・メタルまたはKVMデプロイメントでのCPUプールの作成
ベアメタル・デプロイメントまたはKVMデプロイメントでCPUプールを作成するには、ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用します。 - ベア・メタルまたはKVMデプロイメントでのCPUプールの再マップ
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタルまたはKVMデプロイメントでCPUプールを再マップします。 - ベア・メタルまたはKVMデプロイメントでのCPUプールの表示
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、すべてのCPUプールまたはベア・メタルまたはKVMデプロイメント内のCPUプールに関する詳細を表示します。 - ベアメタルまたはKVMデプロイメントでのCPUプールの変更
ベアメタル・デプロイメントまたはKVMデプロイメントでCPUプールを変更するには、ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用します。 - ベア・メタルまたはKVMデプロイメントでのCPUプールの削除
ベアメタル・デプロイメントまたはKVMデプロイメントでCPUプールを削除するには、ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用します。 - ベア・メタルまたはKVMデプロイメントでのCPUプール監査レコードの表示
ベアメタル・デプロイメントまたはKVMデプロイメントでCPUプールを削除するには、ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用します。 - オーバー・サブスクライブされたCPUプールについて
CPUプールで使用可能なリソースより多くのCPUリソースをサブスクライブしないように、仮想マシンを構成します。
CPUプールについて
CPUプールを使用すると、ベア・メタルおよびKVMデプロイメントの両方で、Oracle Database Appliance上のCPUリソースを管理できます。 CPUプールには、BM、VMおよびdbsystemの3つのタイプがあります。
BM CPUプールを使用して、ベア・メタル・ホスト上のデータベースがCPUプールで指定されたCPUリストのみで確実に実行されるようにします。 すべてのOracleプロセスは、このCPUプール内のCPUにバインドされ、これらのCPU上でのみ実行されます。 ベア・メタルCPUプールは、init.ora
パラメータprocessor_group_name
を更新することでデータベースに割り当てられます。
VM CPUプールを使用して、仮想マシンのワークロードへのCPUリソース割当てをケージおよび管理します。 ワークロードは、CPUプールを作成し、仮想マシンを特定のCPUプールに割り当てるか固定することで分離されます。 CPUプールに仮想マシンをピン留めすると、仮想マシンがそのCPUプールのCPUのみを使用するようになります。
dbsystem CPUプールはVM CPUプールと似ていますが、dbsystemにのみ適用されます。
CPUプール内のリソースはオー・バー・ラップできません。つまり、CPUプールはCPUを共有できません。 ただし、1つのCPUプールを複数のデータベース(BM CPUプール)またはVM (VM CPUプール)に割り当てることができます。
Oracle Database Applianceには、CPUプールを作成、更新、変更、および削除するためのODACLIコマンドが用意されています。
ベア・メタルCPUプールについて
新しいデータベースの場合は、create-database
コマンドを使用して新しいCPUプールをアタッチできます。 既存のデータベースの場合は、modify-database
コマンドを使用してCPUプールをデータベースにアタッチします。 変更を有効にするには、データベースを手動で再起動します。 ソース・データベースでCPUプールが使用されている場合、クローン、ストア、およびリカバリのデータベース操作でも同じCPUプールの使用が試行されます。 新しいcpupoolを使用するための--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プールについて
dbsystemを作成すると、このdbsystemに関連付けられた内部dbsystem CPUプールが自動的に作成されます。 内部dbsystem CPUプールは、内部的に作成および管理されます。 手動で作成、変更または削除することはできません。 Oracle Database Applianceリリース19.11以降、dbsystem間で共有できる新しいタイプの共有dbsystem 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
コマンドを使用して、使用可能なONLINE CPUを使用するようにCPUプールを更新できます。 - データベースでCPUプールを使用していて、一部のCPUがオフラインになった場合は、
odacli modify-cpupool
コマンドを使用してCPUプールを更新します。 更新されたCPUプールを使用するには、データベースを再起動します。
ベア・メタルまたはKVMデプロイメントでのCPUプールの作成
ベアメタル・デプロイメントまたはKVMデプロイメントでCPUプールを作成するには、ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用します。
ODACLIを使用したCPUプールの作成
コマンドodacli create-cpupool
を使用して、CPUプールを作成します。
cpupool1
という名前のVM CPUプールを作成します。# odacli create-cpupool -n cpupool1 -c 6 -vm
ブラウザ・ユーザー・インタフェースを使用したCPUプールの作成
- ブラウザ・ユーザー・インタフェースにログインします:
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPUプール」をクリックすると、「CPUプール」ページが表示されます。
- 「CPUプールの作成」をクリックします。
- 「CPUプールの作成」ページで、次を指定します:
- CPUプール名: CPUプールの名前
- CPUプール・タイプ: CPUプールがベア・メタルまたは仮想システムのいずれであるかを指定します。
- CPUコアの数: プールに割り当てられているCPUコアの数
- 使用するソケット: CPUプールに使用するソケットを指定します。
- 構成: 高可用性デプロイメントの場合は、CPUプールを構成するノードを選択します。
- 「Create」をクリックします。
- ジョブをサブミットすると、ジョブIDとそのジョブへのリンクが表示されます。 リンクをクリックすると、ジョブのステータスと詳細が表示されます。
- ジョブが完了したことを確認します。 ブラウザ・ユーザー・インタフェースの「アクティビティ」タブでジョブを追跡するか、ジョブIDを指定してコマンド
odacli describe-job
を実行できます。
ベア・メタルまたはKVMデプロイメントでのCPUプールの再マップ
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、ベア・メタルまたはKVMデプロイメントでCPUプールを再マップします。
ODACLIを使用したCPUプールの再マップ
ベア・メタル・システムにパッチを適用した後、コマンドodacli remap-cpupools
を使用してCPUプールを変更します。
詳細は、「Oracle Database ApplianceでのNUMAの有効化について」のトピックを参照してください。
ブラウザ・ユーザー・インタフェースを使用したCPUプールの変更
- ブラウザ・ユーザー・インタフェースにログインします:
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPUプール」をクリックすると、「CPUプール」ページが表示されます。
- ページの「CPUプールの再マップ」をクリックします。 これにより、NUMA割り当てのすべてのCPUプールが再マップされます。
- 「はい」をクリックしてアクションを確認します。
- ジョブをサブミットすると、ジョブIDとそのジョブへのリンクが表示されます。 リンクをクリックすると、ジョブのステータスと詳細が表示されます。
- ジョブが完了したことを確認します。 ブラウザ・ユーザー・インタフェースの「アクティビティ」タブでジョブを追跡するか、ジョブIDを指定してコマンド
odacli describe-job
を実行できます。
ベア・メタルまたはKVMデプロイメントでのCPUプールの表示
ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用して、すべてのCPUプールまたはベア・メタルまたはKVMデプロイメント内のCPUプールに関する詳細を表示します。
ODACLIを使用したCPUプールの表示
odacli describe-cpupool
はCPUプールに関する詳細を表示します。 コマンドodacli list-cpupools
を使用して、デプロイメント内のすべてのCPUプールを表示します。 # odacli list-cpupools
# odacli describe-cpupool -n cpupool1
ブラウザ・ユーザー・インタフェースを使用したCPUプールの表示
- ブラウザ・ユーザー・インタフェースにログインします:
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPUプール」をクリックすると、「CPUプール」ページが表示されます。
- 構成されているすべてのCPUプールのリストを表示できます。
- CPUプールの詳細を表示するには、CPUプールをクリックするか、アクション・ドロップ・ダウンをクリックして詳細の表示を選択します。
ベアメタルまたはKVMデプロイメントでのCPUプールの変更
ベアメタル・デプロイメントまたはKVMデプロイメントでCPUプールを変更するには、ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用します。
ODACLIを使用したCPUプールの変更
コマンドodacli modify-cpupool
を使用して、CPUプールを変更します。
# odacli modify-cpupool -n cpupool1 -c 10
更新されたCPUプールを使用するために、関連付けられたデータベースを再起動します。
ブラウザ・ユーザー・インタフェースを使用したCPUプールの変更
- ブラウザ・ユーザー・インタフェースにログインします:
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPUプール」をクリックすると、「CPUプール」ページが表示されます。
- 変更するCPUプールのアクション・ドロップ・ダウン・リストから、「変更」を選択します。
- 「CPUプールの変更」ページで、CPUコア数の変更を指定し、実行中のVMに変更を適用するか、変更操作を強制するかを選択します。 次に、「変更」をクリックします。
- ジョブをサブミットすると、ジョブIDとそのジョブへのリンクが表示されます。 リンクをクリックすると、ジョブのステータスと詳細が表示されます。
- ジョブが完了したことを確認します。 ブラウザ・ユーザー・インタフェースの「アクティビティ」タブでジョブを追跡するか、ジョブIDを指定してコマンド
odacli describe-job
を実行できます。
ベア・メタルまたはKVMデプロイメントでのCPUプールの削除
ベアメタル・デプロイメントまたはKVMデプロイメントでCPUプールを削除するには、ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用します。
ODACLIを使用したCPUプールの削除
コマンドodacli delete-cpupool
を使用して、CPUプールを削除します。
cpupool1
という名前のCPUプールを削除します。# odacli delete-cpupool -n cpupool1
ブラウザ・ユーザー・インタフェースを使用したCPUプールの削除
- ブラウザ・ユーザー・インタフェースにログインします:
https://host-ip-address:7093/mgmt/index.html
- 「Appliance」タブをクリックします。
- 「CPUプール」をクリックすると、「CPUプール」ページが表示されます。
- 削除するCPUプールのアクション・ドロップ・ダウン・リストから、「削除」を選択します。
- はいをクリックして選択を確認します。
- ジョブをサブミットすると、ジョブIDとそのジョブへのリンクが表示されます。 リンクをクリックすると、ジョブのステータスと詳細が表示されます。
- ジョブが完了したことを確認します。 ブラウザ・ユーザー・インタフェースの「アクティビティ」タブでジョブを追跡するか、ジョブIDを指定してコマンド
odacli describe-job
を実行できます。
ベア・メタルまたはKVMデプロイメントでのCPUプール監査レコードの表示
ベアメタル・デプロイメントまたはKVMデプロイメントでCPUプールを削除するには、ODACLIコマンドまたはブラウザ・ユーザー・インタフェースを使用します。
ODACLIを使用したCPUプールの監査レコード詳細の表示
odacli list-auditrecords
コマンドを使用して、CPUプールの監査レコードをリストします:
# odacli list-auditrecords
odacli describe-auditrecord
コマンドを使用して、CPUプールの監査レコードを記述します。
# odacli describe-auditrecord
ブラウザ・ユーザー・インタフェースを使用したCPUプールの監査レコード詳細の表示
- ブラウザ・ユーザー・インタフェースにログインします:
https://host-ip-address:7093/mgmt/index.html
- 「セキュリティ」タブをクリックします。
- 「拡張検索の表示」を選択し、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プールに再度割り当てます。