2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

OCIリソースの使用状況を Autonomous Database のビュー(OCI_USAGE_DATAなど)で確認する。(Oracle Cloud Infrastructure)

Posted at

OCIリソースの使用状況は OCIコンソール の Limits, Quotas and Usage などから確認できますが、追加設定を行うと Autonomous Database のビューでも参照できるようになります。本記事は Autonomous Database のビューで OCIリソースの使用状況を確認しますやで。
彡(゚)(゚)

1. 参考マニュアル

下記マニュアルの記載に従って操作していきます。

Autonomous Databaseビューを使用したOracle Cloud Infrastructureリソース、コストおよび使用状況レポートの追跡
https://docs.oracle.com/ja-jp/iaas/autonomous-database-shared/doc/oci-resources-cost-usage-views.html#ADBSA-GUID-7ABD40B3-A9CC-491E-8FBA-E6F37F722E7D

2. Autonomous Database の作成

OCIコンソールから Autonomous Database を作成します。特に難しいところは無いのでポチポチと。

image.png

3. 動的グループ(Dynamic Group)の作成

動的グループ(Dynamic Group)を作成します。動的グループのマッチングルールは今回はコンパートメントの OCID を設定しました。

All {resource.compartment.id = 'ocid1.compartment.oc1..aaaaaaaaxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'}

image.png

4. 動的グループへのポリシー(権限)付与

上記3. で作成した動的グループに以下のポリシー(権限)を付与します。マニュアルにも記載がありますが tenancy の OCID はユーザーテナントの OCID ではなくマニュアルに記載された固定のOCIDをそのまま記述します。

このポリシーのOCIDを別のOCIDに置き換えないでください。このusage-report OCIDは、テナンシのOracle Cloud Infrastructure使用状況データを提供します。

Define tenancy usage-report as ocid1.tenancy.oc1..aaaaaaaaned4fkpkisbwjlr56u7cj63lf3wffbilvqknstgtvzub7vhqkggq
Endorse dynamic-group ayu-dynamic-group01 to read objects in tenancy usage-report
Allow dynamic-group ayu-dynamic-group01 to read buckets in tenancy
Allow dynamic-group ayu-dynamic-group01 to read autonomous-database in tenancy
Allow dynamic-group ayu-dynamic-group01 to read usage-budgets in tenancy

5. Autonomous Database のリソース・プリンシパルの有効化

DBMS_CLOUDパッケージを実行して Autonomous Database のリソース・プリンシパルを有効化します。

COLUMN OWNER FORMAT A30;
COLUMN CREDENTIAL_NAME FORMAT A50;

EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL();

SELECT owner, credential_name FROM dba_credentials 
   WHERE credential_name = 'OCI$RESOURCE_PRINCIPAL' AND owner = 'ADMIN';

OWNER                          CREDENTIAL_NAME
------------------------------ --------------------------------------------------
ADMIN                          OCI$RESOURCE_PRINCIPAL

Autonomous Database のリソース・プリンシパル変更は2時間のインターバルを必要とするケースがあるため、認識の上で操作して下さい。

Autonomous Databaseでリソース・プリンシパルを使用するための前提条件の実行
https://docs.oracle.com/cd//E83857_01/paas/autonomous-database/adbsa/resource-principal-prereq.html#GUID-3CF59CED-F7DF-46AF-B3CF-E703ED0BB3EE
リソース・プリンシパル・トークンは2時間キャッシュされます。 したがって、ポリシーまたは動的グループを変更した場合、変更の影響を確認するには、2時間待つ必要があります。

6. Autonomous Database のビュー(OCI_USAGE_DATAなど)経由でリソース使用状況を確認

Autonomous Database に接続してビューを SELECT します。

SET LINESIZE 300;
COLUMN INTERVAL_USAGE_START FORMAT A30 TRUNC;
COLUMN INTERVAL_USAGE_END FORMAT A30 TRUNC;
COLUMN SERVICE_NAME FORMAT A30;
COLUMN RESOURCE_NAME FORMAT A50;
COLUMN CONSUMED_QUANTITY FORMAT A30;
COLUMN CONSUMED_QUANTITY_MEASURE FORMAT A30;
ALTER SESSION SET NLS_TIMESTAMP_FORMAT = 'YYYY/MM/DD HH24:MI:SS.FF';

SELECT DISTINCT SERVICE_NAME, RESOURCE_NAME, CONSUMED_QUANTITY, CONSUMED_QUANTITY_MEASURE, CONSUMED_QUANTITY_UNITS, INTERVAL_USAGE_START, INTERVAL_USAGE_END FROM OCI_USAGE_DATA WHERE SERVICE_NAME = 'DATABASE' AND RESOURCE_NAME = 'PIC_DATABASE_CLOUD_STANDARD_EDITION' ORDER BY 1, 2, 5, 6;

SERVICE_NAME                   RESOURCE_NAME                                      CONSUMED_QUANTITY              CONSUMED_QUANTITY_MEASURE      CONSUMED_QUANTITY_UNITS          INTERVAL_USAGE_START           INTERVAL_USAGE_END
------------------------------ -------------------------------------------------- ------------------------------ ------------------------------ -------------------------------- ------------------------------ ------------------------------
DATABASE                       PIC_DATABASE_CLOUD_STANDARD_EDITION                3419618.0                      OCPUS                          MS                               2020/11/30 18:00:00.000000     2020/11/30 19:00:00.000000
DATABASE                       PIC_DATABASE_CLOUD_STANDARD_EDITION                3600000.0                      OCPUS                          MS                               2020/11/30 19:00:00.000000     2020/11/30 20:00:00.000000
DATABASE                       PIC_DATABASE_CLOUD_STANDARD_EDITION                3600000.0                      OCPUS                          MS                               2020/11/30 20:00:00.000000     2020/11/30 21:00:00.000000
DATABASE                       PIC_DATABASE_CLOUD_STANDARD_EDITION                3600000.0                      OCPUS                          MS                               2020/11/30 21:00:00.000000     2020/11/30 22:00:00.000000
DATABASE                       PIC_DATABASE_CLOUD_STANDARD_EDITION                3600000.0                      OCPUS                          MS                               2020/11/30 22:00:00.000000     2020/11/30 23:00:00.000000
DATABASE                       PIC_DATABASE_CLOUD_STANDARD_EDITION                3600000.0                      OCPUS                          MS                               2020/11/30 23:00:00.000000     2020/12/01 00:00:00.000000
DATABASE                       PIC_DATABASE_CLOUD_STANDARD_EDITION                3600000.0                      OCPUS                          MS                               2020/12/01 00:00:00.000000     2020/12/01 01:00:00.000000
DATABASE                       PIC_DATABASE_CLOUD_STANDARD_EDITION                3600000.0                      OCPUS                          MS                               2020/12/01 01:00:00.000000     2020/12/01 02:00:00.000000

リソース使用状況をビュー経由で SELECT できました。ちなみにこれらのビューはとても遅かったので、Autonomous Database のユーザー表として CTAS(CREATE TABLE AS SELECT ...) してそちらを参照した方がストレス無く確認できます。
彡(^)(^)

CREATE TABLE OCI_USAGE_DATA_CTAS AS SELECT * FROM OCI_USAGE_DATA;

7. まとめ

OCIリソースの使用状況を Autonomous Database のビュー経由で参照できました。リソースの使用状況は OCI CLIコマンドでも採取可能なのですが、取得した情報を使用して色々と計算したいケースなどは RDBMS形式 で SQL を使えた方が便利なケースも多いので、どんどん活用して下さいね。
彡(^)(^)

Appendix.

OCI CLI の場合は下記記事の手順でリソースの使用状況は取得可能です。ただしとても面倒(゚ε゚ )

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?