OCIユーティリティ

Oracle Linuxプラットフォーム・イメージを使用するインスタンスには、インスタンスがインフラストラクチャ・リソースに関する情報にアクセスできるようにする一連のユーティリティ(oci-utils)が含まれます。これらのユーティリティは、リソースの自動検出またはプロビジョニングに役立つサービス・コンポーネントおよびコマンドライン・ツールで構成されます。

OCIユーティリティのインストール

Oracle Linux 7以降で起動されたインスタンスには、インストールされたOracle Cloud Infrastructure (OCI)ユーティリティ(oci-utils)パッケージが自動的に含まれます。ユーティリティは、他のディストリビューションでは使用できません。

OCIユーティリティを使用するには、次の前提条件を満たす必要があります。

  • oci_includedリポジトリが有効になっていることを確認します。このリポジトリは、Oracle Linuxプラットフォーム・イメージではデフォルトで有効になっています。このリポジトリには、必要なOCI SDKおよびPythonパッケージを含む、すべてのパッケージ依存関係が含まれています。必要なすべてのパッケージは、oci-utilsパッケージとともにインストールされます。
  • 次のいずれかを実行して、OCIユーティリティにOracle Cloud Infrastructureへのアクセスに十分な権限があることを確認します。
    • ホストのSDK構成ファイルを作成します。詳細は、SDKおよびCLIの構成ファイルを参照してください。
      ノート

      oci setup configコマンドを実行してSDK構成ファイルを作成する前に、ご使用の環境にCLIをインストールする必要がある場合があります。詳細は、Installing the CLIを参照してください。
    • Oracle Cloud Infrastructureサービスへのアクセスが許可された動的グループにインスタンスを追加して、インスタンス・プリンシパルを使用します。詳細は、動的グループの管理を参照してください。
    • rootが非特権ユーザーのOracle Cloud Infrastructure構成ファイルを使用できるように、oci-utilsを構成します。詳細は、インスタンスの/etc/oci-utils.conf.dディレクトリにある構成ファイルを参照してください。
  • ユーティリティにアクセスする方法を選択し、必要に応じてその方法の設定手順を実行します。

OCIユーティリティをインストールおよび設定する方法に関するビデオについては、Oracle Linuxトレーニング・ステーションのOracle Cloud InfrastructureインスタンスでのOracle LinuxのOCIユーティリティの有効化を参照してください。

OCIユーティリティの更新

最新バージョンのoci-utilsに更新するには:

sudo yum update oci-utils

ocidデーモンの使用

ocidデーモンは、oci-utilsのサービス・コンポーネントです。これは、インスタンスのVNICおよびiSCSI構成内の変化をモニターし、デバイスの出現や消失(Oracle Cloud Infrastructure Console、CLIまたはAPIを使用したデバイスの作成または削除など)に合せてデバイスの自動アタッチまたはデタッチを試みます。

systemdを使用してocidデーモンを起動し、システム・ブート中にocidサービスが自動的に開始されるように設定するには:

sudo systemctl enable --now ocid.service

サービスがアクティブ(実行中)であることを確認するには:

sudo service ocid status

例:

$ sudo service ocid status
Redirecting to /bin/systemctl status ocid.service
  ocid.service - Oracle Cloud Infrastructure utilities daemon
   Loaded: loaded (/etc/systemd/system/ocid.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2021-02-04 18:01:25 GMT; 1min 42s ago
 Main PID: 16630 (python3)
   CGroup: /system.slice/ocid.service
           └─16630 /usr/bin/python3 /usr/lib/python3.6/site-packages/oci_util...

Feb 04 18:01:23 mor-demoinst-10 systemd[1]: Starting Oracle Cloud Infrastruc....
Feb 04 18:01:24 mor-demoinst-10 sudo[16705]:     root : TTY=unknown ; PWD=/ ...w
Feb 04 18:01:25 mor-demoinst-10 systemd[1]: Started Oracle Cloud Infrastruct....
Hint: Some lines were ellipsized, use -l to show in full.
        

OCIユーティリティ・サマリー

OCIユーティリティ・コンポーネントのサマリー。

名前 説明
ocid oci-utilsのサービス・コンポーネントで、systemdによって起動されたデーモンとして実行されます。このサービスは、iSCSIおよびVNICデバイス構成の変更をスキャンして、インスタンスのOCIメタデータとパブリックIPアドレスをキャッシュします。
oci-compartmentid インスタンスが実行されているコンパートメントのOracle Cloud Identifier(OCID)が表示されます。
oci-growfs インスタンスのルート・ファイル・システムを構成したサイズに拡張します。
oci-image-expand Oracle Linux Minimalインスタンスを変換して、標準のOracle Linuxプラットフォーム・イメージのサービスおよびパッケージを追加します。
oci-instanceid インスタンスのOCIDを表示します。
oci-iscsi-config コンピュート・インスタンスにアタッチされたiSCSIデバイスをリストまたは構成します。コマンドライン・オプションを指定しない場合、注意が必要なデバイスがリストされます。
oci-metadata コンピュート・インスタンスのメタデータを表示します。コマンドライン・オプションを指定しない場合、使用可能なすべてのメタデータがリストされます。メタデータには、インスタンスOCID、表示名、コンパートメント、シェイプ、リージョン、可用性ドメイン、作成日、状態、イメージ、および指定した任意のカスタム・メタデータ(SSH公開キーなど)が含まれます。
oci-network-config コンピュート・インスタンスにアタッチされた仮想ネットワーク・インタフェース・カード(VNIC)をリストまたは構成します。クラウド内でセカンダリVNICがプロビジョニングされるときは、このスクリプトまたは同様のコマンドを使用して、インスタンスでそれを明示的に構成する必要があります。
oci-network-inspector 指定されたコンパートメントまたはネットワークの詳細レポートを表示します。
oci-notify 通知サービス・トピックにメッセージを送信します。
oci-public-ip 現在のシステムのパブリックIPアドレスを、判読可能な形式またはJSON形式で表示します。
oci-volume-data インスタンスにアタッチされている特定のiSCSIボリュームに関するデータを表示します。

一般的なOCIユーティリティ・オプション

Oracle Cloud Infrastructure (OCI)ユーティリティの多くには、コマンドラインからユーティリティを実行するときに使用できる同じオプションまたは引数があります。これらのオプションおよび引数は、ユーティリティによって生成される情報のタイプ、またはユーティリティ・タスクの実行方法をさらに定義するのに役立ちます。

次の表に、OCIユーティリティ全体で共通のオプションとそのサポートされている値を示します。

オプション 説明
--help ユーティリティの使用状況、使用可能なオプション、各オプションでサポートされる値など、ユーティリティに関するヘルプ情報を表示します。たとえば、oci-metadataユーティリティのヘルプを表示するには:
$ sudo oci-metadata --help

usage: oci-metadata [-h] [-j] [-g KEY] [--value-only] [--export] [--trim]
                    [-u KEY=VALUE  [KEY=VALUE  ...]] [-i OCID] [--help]

Utility for displaying metadata for an instance running in the Oracle Cloud
Infrastructure.

optional arguments:
  -h, --human-readable  Display human readable output (default)
  -j, --json            Display json output
  ...
  --help                Display this help

--all

すべてのアイテムまたは値を出力に表示します。

--details

出力に詳細情報を表示します。

--output-mode

ユーティリティ出力の表示方法を定義できます。使用可能なOCIユーティリティ・モードは次のとおりです。

  • json: 出力をJSON形式で表示されます。
  • human-readable: 判読可能な形式で出力を表示します。
  • parsable: 出力を解析可能な形式で表示します。
  • table: 表に出力を表示します。
  • text: テキスト出力を表示します。

--no-truncate

表示された出力の値を短くしません。

--truncate

表示された出力の値を短くします。

-y| --yes

すべてのプロンプトで「yes」と回答します。

-n | --no

すべてのプロンプトで「いいえ」と答えます。

-q | --quiet

情報メッセージを抑制します。

ノート

コマンドラインでman oci-utilityと入力して、各OCIユーティリティのマニュアル・ページを表示することもできます。たとえば、oci-metadataユーティリティの組込みマニュアル・ページを表示するには:
man oci-metadata