Forum Stats

  • 3,770,766 Users
  • 2,253,163 Discussions
  • 7,875,581 Comments

Discussions

ADB HOL #7-1 : OCICLIを利用したインスタンス操作

TakeshiNagakubo-Oracle
TakeshiNagakubo-Oracle Posts: 18 Employee
edited Feb 9, 2020 9:01PM in Social Groups

目次に戻る : チュートリアル : Oracle Cloud Infrastructure を使ってみよう

>ADBコンテンツ一覧に戻る

ここまでの章で、ADBインスタンスの作成やOCPU数の変更等、様々な操作を実施いただきましたが、これら一連の操作を自動化するにはどうしたら良いでしょうか?

ADBはOracle Cloud Infrastructure(OCI)の他のサービスと同様、REST APIを介した各種操作が可能であり、それらを呼び出すコマンド・ライン・インタフェース(OCI CLI)を利用した操作も可能です。

この章ではOCI CLIを利用してADBインスタンスの作成や起動・停止、およびスケールアップ、ダウンといった構成変更の方法について確認します。

これらコマンドを利用しスクリプトを組めば、例えば夜間はあまり使わないからOCPUをスケールダウンさせておき、朝になったらスケールアップしよう。といった自動化が可能となります。

尚、本ガイドではOCI CLIがインストールされたOCI Developer Image を利用することを前提に記載しています。

OCI CLIのインストール方法を含め、OCI CLIの詳細についてはを参照ください。

作業の流れ

  1. OCI CLIをセットアップしよう
  2. OCI CLIでインスタンスを操作しよう

所要時間 : 約30分

1. OCI CLIをセットアップしよう

まずはOCI CLIにクラウド環境の情報を登録します。

1. Tera Termを起動し、仮想マシンにログインします。

2. oracleユーザに切り替えます。

$ sudo su - oracle

3. OCI CLIがセットアップされていることを確認するために、バージョンを確認します。( 2.6.XXが出力されればOKです。)

$ oci -v

4. クラウド環境の情報(OCID)を確認します。後続のconfigファイルの作成で利用しますので、お手元のメモ帳に一旦保存します。

OCIDとは、Oracle Cloud識別子のことで、OCIの各リソースに付与されている一意のIDです。REST APIやOCI CLIを利用する際はこのIDを利用して、各リソースにアクセスします。

4-1. ユーザーのOCIDを確認するために、ユーザー設定をクリックします

pastedImage_18.png

コピーをクリックすると、OCIDがクリップボードに保存されますので、お手元のメモ帳にペーストしてください。

pastedImage_21.png

4-2. テナンシのOCIDを確認するために、管理からテナンシ詳細をクリックします

pastedImage_25.png

コピーをクリックすると、OCIDがクリップボードに保存されますので、お手元のメモ帳にペーストしてください。

pastedImage_28.png

5. configファイルを作成します。入力例を参考に各項目を入力ください。

$ oci setup config

Location for your config: (そのままでENTER

User OCID: <上記のステップで取得した値>

Tenancy OCID: <上記のステップで取得した値>

region: ap-tokyo-1

Generate a new RSA Key Pair: Y

directory for your keys to be created: (そのままでENTER

name for your key: (そのままでENTER

passphrase for your private key: (そのままでENTER

pastedImage_88.png

6. API公開キーを確認します。

cat ~/.oci/oci_api_key_public.pem

pastedImage_81.png

7. OCIユーザーのプロファイルに作成したAPI公開キーを追加します。

ユーザー設定をクリックします

pastedImage_76.png

APIキーから、公開キーの追加をクリックします。

pastedImage_78.png

先程取得したAPI公開キーを入力し、追加をクリックします。

pastedImage_83.png

APIキーを追加すると、ユーザー設定の画面上に新たにフィンガープリントが表示されます。

以下のファイルに記載されているfingerprintの値と一致していることを確認ください。一致していればOKです。

$ cat ~/.oci/config

8. デフォルトのコンパートメントを設定します。設定することで、毎回のコマンド発行時にコンパートメントを指定しないで済みます。

8-1. メニューからアイデンティティコンパートメントをクリックします。

pastedImage_111.png

8-2. コンパートメント(adb-hol-01)を選択し、コンパートメントのOCIDをコピーしてメモ帳に保存しておきます。

8-3. 仮想マシン上にて以下を実行し、~/.oci/oci_cli_rc というファイルを作成します。

$ oci setup oci-cli-rc

8-4. vi でoci_cli_rc ファイルを編集し、コンパートメントIDを追記します。

$ vi .oci/oci_cli_rc

[DEFAULT]

compartment-id = <コンパートメントのOCID>

ここでは以下のようにファイルの最後に追加すればOKです。

pastedImage_105.png

2. OCI CLIを使ってみよう

まずはOCI CLIの操作感をみてみましょう。

1. Autonomous Databaseに対してOCI CLIで操作できる内容を確認するために、一覧を表示します。

$ oci db autonomous-database --help

     インスタンスの作成から複製、削除、リストアの実行、インスタンスの停止、起動など、GUIツール(WEB画面)で出来ることは基本的にOCI CLIで実施可能です。

     尚、上記のようにociコマンドは各コマンドに続けて "--help" を入力することで、その都度オプションを確認することができます。($ oci --help 等)

2. 現在作成されているインスタンスの情報を確認するために、一覧を表示します。JSON形式で出力されます。

$ oci db autonomous-database list

3. OCI CLIでインスタンスを操作しよう

では実際に操作してみましょう。

ここでは、OCPU数の変更、インスタンスの停止、起動、およびインスタンスを新規に作成します。

1. インスタンスのスケールアップ・ダウン(OCPU数の変更)

     ここでは前の章でスケールアップしたインスタンスのOCPUを1に戻してみましょう。

     (OCI CLIであってもオンラインで実施可能です。アプリケーションの停止は不要です。)

1-1. 対象となるADBインスタンスのOCIDを確認するため、以下のlistコマンドを実行しOCIDを取得します。

$ oci db autonomous-database list

     id列の値がADBインスタンスのOCIDです。

1-2. 以下を実行し、OCPUを1に変更します。(赤字の箇所を1-1で取得したOCIDに置き換えてください)

$ oci db autonomous-database update --autonomous-database-id "<取得したADBインスタンスのOCID>" --cpu-core-count 1

     lifecycle-state 列が SCALE_IN_PROGRESS になっていればOKです。

     しばらく経ってから、GUIツール(WEB画面)、もしくはlistコマンドにてOCPU=1(cpu-core-count=1)にスケールダウンしたことをご確認ください。

2. 次にこのインスタンスを停止・起動してみましょう

2-1. 以下を実行し、対象のインスタンスを停止します。(赤字の箇所を1-1で取得したOCIDに置き換えてください)

oci db autonomous-database stop --autonomous-database-id "<取得したADBインスタンスのOCID>" 

     しばらく経ってから、GUIツール(WEB画面)、もしくはlistコマンドでインスタンスが停止したかご確認ください。

2-2. 以下を実行し、対象のインスタンスを起動します。(赤字の箇所を1-1で取得したOCIDに置き換えてください)

oci db autonomous-database start --autonomous-database-id "<取得したADBインスタンスのOCID>" 

     しばらく経ってから、GUIツール(WEB画面)、もしくはlistコマンドでインスタンスが停止したかご確認ください。

3. 新たにADBインスタンスを作成してみましょう。

3-1. 以下の記載例を参考にインスタンスを作成します。赤字が入力必須のパラメータです。

$ oci db autonomous-database create --display-name=atpXXb --db-name=atp01b --db-workload=OLTP --cpu-core-count=1 --data-storage-size-in-tbs=1 --admin-password="Welcome12345#" --license-model=LICENSE_INCLUDED

コマンドが問題なく通ると、インスタンス作成時に指定した情報がJSON形式で出力されます。

lifecycle-stateの値が "PROVISIONING" と表示されていればOKです。

その他、インスタンス作成時のオプションについてはマニュアルを参照ください。もしくは以下のコマンドでも確認できます。

$ oci db autonomous-database create --help

     しばらく経ってから、インスタンスが問題なく構成されたかをご確認ください。

     GUIツール(WEB画面)にてatp01bという名前のインスタンスが使用可能と表示されているか、もしくは上記2のlistコマンドを実行し、atp01bという名前のインスタンスのlifecycle-state の値がAvailableになっていればOKです。

以上で、この章の作業は終了です。

ADBコンテンツ一覧に戻る