本ブログは、オラクル・クラウドの個人ブログの1つです。
初めに
OCI-CLIで、OCIの各インスタンスのライフサイクル状態を取得する方法を紹介します。バッチスクリプトでインスタンス起動・停止を実現する際の事前チェックとして使用できます。
- 1. Compute Instance
- 2. Autonomous DB
- 3. Oracle Base DB
- 4. Oracle Analytics Cloud (OAC)
- 5. OCI Data Integration (OCI DI)
1. Compute Instance
-
指定したインスタンスの状態を取得
oci compute instance get --instance-id <Compute_OCID> --query 'data."lifecycle-state"'
PowerShellの例:(RUNNING - 稼働中)
PS C:\Users\opc> oci compute instance get --instance-id ocid1.instance.oc1.ap-tokyo-1.<中略> --query 'data.\"lifecycle-state\"'
"RUNNING"
PS C:\Users\opc>
-
指定したコンパートメント内のすべてのインスタンスの状態の取得
oci compute instance list -c <Compartment_OCID> --query 'data[].{"Name":"display-name", "State":"lifecycle-state"}' --output table
PowerShellの例:
PS C:\Users\opc> oci compute instance list -c ocid1.compartment.oc1..<中略> --query 'data[].{"Name":\"display-name\", "State":\"lifecycle-state\"}' --output table
+----------------+---------+
| Name | State |
+----------------+---------+
| Oracle_Linux_8 | RUNNING |
| Windows2019 | STOPPED |
+----------------+---------+
PS C:\Users\opc>
2. Autonomous DB
-
指定したADBインスタンスの状態を取得
oci db autonomous-database get --autonomous-database-id <ADB_OCID> --query 'data."lifecycle-state"'
PowerShellの例:(AVAILABLE - 使用可能)
PS C:\Users\opc> oci db autonomous-database get --autonomous-database-id ocid1.autonomousdatabase.oc1.ap-tokyo-1.<中略> --query 'data.\"lifecycle-state\"'
"AVAILABLE"
PS C:\Users\opc>
-
指定したコンパートメント内のすべてのADBインスタンスの状態の取得
oci db autonomous-database list -c <Compartment_OCID> --query 'data[].{"Name":"display-name", "State":"lifecycle-state"}' --output table
PowerShellの例:
PS C:\Users\opc> oci db autonomous-database list -c ocid1.compartment.oc1..<中略> --query 'data[].{"Name":\"display-name\", "State":\"lifecycle-state\"}' --output table
+-------+-----------+
| Name | State |
+-------+-----------+
| ADW02 | STOPPED |
| ADW01 | AVAILABLE |
+-------+-----------+
PS C:\Users\opc>
3. Oracle Base DB
確認対象は、DBシステムではなくDBノードの状態です。
指定したDBノードの状態を取得
oci db node get --db-node-id <DBNode_OCID> --query 'data."lifecycle-state"'
Cloud Shellの例:
<username>@cloudshell:~ (ap-tokyo-1)$ oci db node get --db-node-id ocid1.dbnode.oc1.ap-tokyo-1.<中略> --query 'data."lifecycle-state"'
"STOPPED"
4. Oracle Analytics Cloud (OAC)
指定したインスタンスの状態を取得
oci analytics analytics-instance get --analytics-instance-id <OAC_OCID> --query 'data."lifecycle-state"'
Cloud Shellの例:
<username>@cloudshell:~ (ap-tokyo-1)$ oci analytics analytics-instance get --analytics-instance-id ocid1.analyticsinstance.oc1.ap-tokyo-1.<中略> --query 'data."lifecycle-state"'
"DELETED"
5. OCI Data Integration (OCI DI)
指定したワークスペースの状態を取得
oci data-integration workspace get --workspace-id <Workspace_OCID> --query 'data."lifecycle-state"'
Cloud Shellの例:
<username>@cloudshell:~ (ap-tokyo-1)$ oci data-integration workspace get --workspace-id ocid1.disworkspace.oc1.ap-tokyo-1.<中略> --query 'data."lifecycle-state"'
"STOPPED"
query引数の書き方
query引数の書き方は、実行環境の種類により違いがあります。
実行環境 | 書き方 |
---|---|
Linux (or Cloud Shell) | --query 'data."lifecycle-state"' |
Windows BAT | --query "data.\"lifecycle-state\"" |
Windows PowerShell | --query 'data.\"lifecycle-state\"' |
"display-name" や "lifecycle-state" のようにハイフンが含まれる項目には、ダブルクォーテーションを付ける必要があります。Windowsの場合、ダブルクォーテーションを付ける際に '\
'(バックスラッシュ) を忘れずに。
以上
関連記事
オラクル・クラウドの個人ブログ一覧
便利なOCI CLIコマンド例
OCIインスタンスの自動起動・停止
OCI-CLIについてのFAQ
ドキュメント
OCI-CLI コマンド
Docs » compute » instance
Docs » db » autonomous-database
Docs » db » node
Docs » analytics » analytics-instance
Docs » data-integration » workspace