こんにちはアトミテックのid:a-oonoです。 前回の記事では、Oracle Cloud Infrastructure CLI(以下、CLIと省略)の導入を解説しました。
今回の記事ではCLI導入後の環境設定について解説していきます。
前提
- 前回の記事で
oci cli
が動作するものとします。 - 当手順ではCLIの実行確認を目的とするユーザの作成、設定を行います。実運用を考慮しておりませんのでご注意ください。
環境設定
OCIユーザ設定
OCIのユーザ設定にあたり、記事の最後に幾つか参考文献を紹介しますので事前に目を通していただくと良いでしょう。
oci cli
が実行できるようOCIのコンソール上でユーザの設定を確認していきます。
- ユーザー
cli-user
を作成します。※ユーザ名は任意で構いません。OCI-Classicのユーザでない事に注意してください。Menu -> Identity -> Users
にcli-user
が存在する事。存在しない場合は作成します。
- Group
Administrators
にcli-user
を所属させます。Menu -> Identity -> Groups -> Administrators
にcli-user
が所属している事。所属していない場合は所属させます。
- Tenantの管理Policyの存在を確認し、Group
Administrators
に管理Policyを割り当てます。Menu -> Identity -> Policies
にTenant Admin Policy
が存在する事。※ポリシー名は任意で構いません。Tenant Admin Policy
のStatementsにALLOW GROUP Administrators to manage all-resources IN TENANCY
が設定されている事。
CLI設定
次にoci setup config
を実行します。
この手順では3つのOCID(リソース識別子)が必要になります。OCIDの詳細は公式の資料をご確認ください。
- user OCID (ユーザーOCID)
- tenancy OCID (テナントOCID)
- compartment OCID (コンパートメントOCID)
各OCIDの確認方法は以下の通りとなります。
- user OCID (ユーザーOCID):
Menu -> Identity -> Users -> cli-user
- tenancy OCID (テナントOCID):
OCI コンソールのヘッダ -> TENANCY
- compartment OCID (コンパートメントOCID):
Menu -> Identity ->Compartments
でRCの文字があるコンパートメントのOCIDを取得
oci setup config
を実行します。
$ oci setup config
対話式により以下の質問があるので、任意に回答してください。
- Enter a location for your config [/home/oci_user/.oci/config]:<空入力としてエンター>
- File: /home/oci_user/.oci/config already exists. Do you want to overwrite? [y/N]:y
- Enter a user OCID:<事前に調べたユーザーOCID>
- Enter a tenancy OCID:<事前に調べたテナントOCID>
- Enter a region (e.g. eu-frankfurt-1, uk-london-1, us-ashburn-1, us-phoenix-1):<任意のリージョンを入力>
- Do you want to generate a new RSA key pair? (If you decline you will be asked to supply the path to an existing key.) [Y/n]:y
- Enter a directory for your keys to be created [/home/oci_user/.oci]:<空入力としてエンター>
- Enter a name for your key [oci_api_key]: <空入力としてエンター>
- File /home/oci_user/.oci/oci_api_key_public.pem already exists, do you want to overwrite? [y/N]: y
- Enter a passphrase for your private key (empty for no passphrase): <任意のパスフレーズを入力>
oci setup config
の実行が終わると~/.oci/
に以下ファイルが作成されます。
- config:上記で質問された内容が記載されます。
- oci_api_key.pem:API秘密鍵
- oci_api_key_public.pem:API公開鍵
OCIのコンソール Menu -> Identity -> Users -> cli-user
からAPI Keyとしてoci setup config
で作成したAPI公開鍵を設定します。
API公開鍵~/.oci/oci_api_key_public.pem
をcatした内容を貼り付けます。
動作確認
Computeサービスでコンピュート・シェイプを取得するコマンドを実行してみます。JSON形式でコマンド結果が返って来るはずです。
$ oci compute shape list -c <事前に調べたコンパートメントOCID> { "data": [ { "base-image-id": null, "compartment-id": null, "create-image-allowed": true, "defined-tags": {}, "display-name": "Windows-Server-2016-Standard-Edition-VM-Gen2-2018.07.19-0", "freeform-tags": {}, "id": "ocid1.image.oc1.iad.aaaaaaaabisho7loxvv6ks4z6y764rzejep7fu2vpiz2wc33fmxaqlhqhpcq", "launch-mode": "NATIVE", "launch-options": { "boot-volume-type": "ISCSI", "firmware": "UEFI_64", "network-type": "VFIO", "remote-data-volume-type": "PARAVIRTUALIZED" }, "lifecycle-state": "AVAILABLE", "operating-system": "Windows", "operating-system-version": "Server 2016 Standard", "size-in-mbs": 262144, "time-created": "2018-07-19T19:41:28.559000+00:00" }, 以下省略
これで、CLIが動作することが確認できました。