OCI拡張リソース問合わせ機能の活用例

OCI General

初めに

OCI (Oracle Cloud Infrastructure) では、拡張リソース問合わせ機能を利用することで、テナンシ全体に存在するリソースを横断的に検索・可視化できます。コンパートメント構成が複雑になりがちな環境でも、リソースの所在や利用状況を素早く把握できるため、日常運用やコスト管理の効率化に非常に有効です。

本記事では、この拡張リソース問合わせ機能を実務で活用するための具体例として、コンパートメント内のリソース検索DRG 使用量の確認夜間停止対象リソースの検出という3つのユースケースを取り上げます。各例について、OCI コンソールと OCI CLI の両方の操作方法を紹介し、運用現場ですぐに使える視点で解説します。

例-1. コンパートメント内のリソース検索

コンパートメント単位でエンドユーザーを分けるのは、SaaS提供者やISV(独立系ソフトウェアベンダー)にとって一般的な利用ケースです。特定のコンパートメント内のすべてのリソースを確認したい場合、「拡張リソース問合せ」を利用することで迅速に表示できます。

※ コンパートメントを削除する際、空の状態でないと削除できません。削除前に残っているリソースを確認したい場合、この機能が非常に役立ちます。

1-1. OCIコンソールを使う

OCIコンソールの上部にあるサーチボックスにマウスを置いて、「拡張リソース問合せ」をクリックします。
Advanced resource query

コンパートメント内のすべてのリソースの問合せ」を指定し、compartmentOcidを入れ替えて、「検索」をクリックします。
検索条件:query all resources where compartmentId = 'compartmentOcid'
Query for all resources in a compartment

数秒後、リソース検索結果が表示されます(画面を表略)。

1-2. OCI CLIを使う

コマンドの出力はJSONフォーマットで表示されるため、grepで出力を絞り込み、見やすくします。

コマンド例:

oci search resource structured-search --query-text "query all resources where compartmentId = 'compartmentOcid'" | grep "resource-type"
Query for all resources in a compartment with OCI CLI

例-2. DRG使用量の確認

DRG (Dynamic Routing Gateway)は、SaaS提供者向けのネットワーク アーキテクチャの設計において重要な役割を果たします。主な利用シナリオは以下の通りです。

  • SaaS提供者と各エンドユーザが、オンプレミスからIPSec VPNまたはFastConnectを使用してOCIに接続する。
  • SaaS提供者の管理用VCNから、DRGを経由してエンドユーザー用の各VCNに接続する。

詳細は、次の記事をご参照ください。
OCI シングル・テナンシで複数エンドユーザー共同利用のSaaSモデル -- ネットワーク設計編

通常のネットワークリソースであれば、次の画面で上限値と現在の使用量が確認できますが、DRGはこの画面では確認できません(VCN以外を指定しても表示されません)。

Limits, quotas and usage

「拡張問い合わせ機能」でDRGの使用量を確認する手順は、以下の通りです。

2-1. OCIコンソールを使う

「拡張リソース問い合わせ」の画面で以下の条件を入力し、「検索」をクリックします。
検索条件:query drg resources
Query DRG resources

DRGの使用量がすぐに表示されます。
Resource search results

2-2. OCI CLIを使う

コマンド例:

oci search resource structured-search --query-text "query drg resources" | grep "display-name"
Query DRG resources with OCI CLI

例-3. 夜間停止対象のリソースの検出

対象リソース(Compute、DB、ADBなどのインスタンス)を毎晩自動で停止させることは、一般的な要件です。これを実現する方法はいくつかありますが、フリーフォームタグとOCI CLIコマンドを組み合わせて利用するのも一つの方法です。

事前準備
停止対象のリソースに対して、フリーフォーム・タグを付けています。
参考例(自由に指定できる):

  • タグ・キー:daily_auto_stop
  • タグ値:Yes

3-1. OCIコンソールを使う

「拡張リソース問い合わせ」の画面で以下の条件を入力し、「検索」をクリックします。
Query freeform tags

3-2. OCI CLIを使う

コマンド例:

oci search resource structured-search --query-text "query all resources where (compartmentId = '<Your_Compartment_OCID>' && freeformTags.key = 'daily_auto_stop' && freeformTags.value = 'Yes' )"

対象のリソースを検出したら、インスタンス停止用のCLIコマンドと組み合わせてスクリプトを作成します。これをLinuxのcrontabまたはWindowsのタスク・スケジューラ)と連携させれば、リソースの定時自動停止が実現可能です。

以上

ドキュメント
検索言語の構文
サンプル問合せ
フリーフォーム・タグの理解

タイトルとURLをコピーしました