Oracle Analytics Cloud：コマンドラインで一時停止・再開してみる

# Oracle Analytics Cloud (OAC) について
OACとは、Oracle Cloudで提供される包括的なアナリティクス・ソリューションです。

- エンタープライズ分析
- セルフサービス分析
- 拡張分析

という機能の柱があります。
利用に際してブラウザでOracle Cloud Infrastructure（OCI）の管理コンソールにアクセスし、OACのインスタンスを作成します。

:::note
OACのインスタンスは一時停止、再開が可能です。
一時停止中は、通常の15%の課金となります。
:::

# OCI CLIとは
Oracle Cloud Infrasturacture (OCI) 上の様々なサービスを操作するためのコマンドライン・インターフェースです。

# やりたいこと
Oracle Linux上にOCI CLIをインストールして、OACインスタンスの一時停止と再開をコマンドラインで実行したい。

# OCI CLIのインストール
OCI上にCompute VMを用意しました。
OSはOracle Linux 7.9です。
早速ログインして、OCI CLIをインストールしてみます。

```
$ sudo yum install python36-oci-cli
```
インストールできたかどうか確認します。

```
$ oci --version
3.6.2
$
```

oci setup configコマンドを実行します。


参考：[ドキュメント（CLIインストール）](https://docs.oracle.com/ja-jp/iaas/Content/API/SDKDocs/cliinstall.htm)

# OACを一時停止
既に起動しているOACインスタンスを一時停止してみます。

### OACインスタンスのOCIDを取得
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/4cb38822-6c6c-061a-77d6-feb30c8210fc.png)
OCIDをメモしておきます。

### OACインスタンスを一時停止

```
$ export analytics_instance_id=<OACインスタンスのOCID>
$ oci analytics analytics-instance stop --analytics-instance-id $analytics_instance_id
{
  "etag": "bc9cbf6dfa7fc9f8248b43bd755791e5a66d",
  "opc-work-request-id": "ocid1.coreservicesworkrequest.oc1.ap-tokyo-1.aaaaaaaa"
}
```

opc-work-request-idの値をメモしておきます。

管理コンソールでも確認してみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/0fdfb0fd-6f0c-6b03-dfe1-233865c64dc3.png)
状態が更新中になっています。

### ステータスを確認
メモしておいたopc-work-request-idの値を使用して、ステータスを確認します。
statusの値を確認してください。

```
$ oci analytics work-request get --work-request-id ocid1.coreservicesworkrequest.oc1.ap-tokyo-1.aaaaaaaa
{
  "data": {
// ... 略
    "operation-type": "STOP_ANALYTICS_INSTANCE",
    "percent-complete": 0.0,
// ... 略
      }
    ],
    "status": "IN_PROGRESS",
    "time-accepted": "2022-04-04T05:15:07.921000+00:00",
    "time-finished": null,
    "time-started": "2022-04-04T05:15:11.536000+00:00"
  },
  "etag": "446ecdd72b0daf05a9738e9527c02b11b5153400--gzip"
}
```
値が「SUCCEEDED」になったら完了です。


# OACインスタンスを再開
今度は、一時停止中のOACインスタンスを再開しようと思います。

```
$ export analytics_instance_id=<OACインスタンスのOCID>
$ oci analytics analytics-instance start --analytics-instance-id $analytics_instance_id
{
  "etag": "3f7b925f05e99fbd9af7a5d575b3c50a00cee3d13dd",
  "opc-work-request-id": "ocid1.coreservicesworkrequest.oc1.ap-tokyo-1.aaaaaaaa"
}
```

再開できたかどうか確認します。

```
$ oci analytics work-request get --work-request-id ocid1.coreservicesworkrequest.oc1.ap-tokyo-1.aaaaaaaa
{
  "data": {
// ... 略
    "operation-type": "START_ANALYTICS_INSTANCE",
    "percent-complete": 100.0,
// ... 略
      }
    ],
    "status": "SUCCEEDED",
    "time-accepted": "2022-04-04T05:25:43.290000+00:00",
    "time-finished": "2022-04-04T05:28:05.244000+00:00",
    "time-started": "2022-04-04T05:26:06.560000+00:00"
  },
  "etag": "6c2cceca82aa4067c22150950bdaeec9c4747fd4--gzip"
}
```

ちょっと試すだけなら、Cloud Shellを使用するのが便利です。
OCI CLIがインストール済みなので、すぐにコマンドを実行できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/4fe3ebe1-145e-59a6-2773-c4504a22e4eb.png)

# 参考情報
- [コマンドラインを使用した一時停止と再開](https://docs.oracle.com/ja-jp/iaas/analytics-cloud/doc/administer-services.html#GUID-65CA3397-3DCD-418A-AA4C-433582E46321)
- [Cloud Shellについて](https://docs.oracle.com/ja-jp/iaas/Content/API/Concepts/cloudshellintro.htm)
- [Oracle Analytics Cloud：OCI CLIでスケーリングしてみる](https://qiita.com/tyo38/items/a64fd98f301ef1d21528)