インスタンス内には2種類のメタデータが格納されます。1つは、インスタンスの作成中に明示的に定義できるユーザー定義のインスタンス属性、もう1つは、すべてのインスタンスにデフォルトで格納されている事前定義のインスタンス・メタデータ・フィールドです。
インスタンスで実行中のスクリプトとアプリケーションは、利用可能なメタデータを使用して、特定のタスクを実行できます。 たとえば、インスタンスの作成中に指定されるSSH公開キーは、インスタンスのメタデータとして格納されます。 インスタンスで実行中のスクリプトは、これらのキーを取得して、指定したユーザーのauthorized_keysファイルに付加できるため、sshを使用したインスタンスへのキー・ベースのログインが可能になります。
- インスタンスにログインします。
- 次のコマンドを実行して、利用可能なメタデータ・バージョンのリストを取得します。
- 表示されたバージョンのリストから、使用するバージョンを選択します。
- 最上位メタデータ・フィールドのリストを取得します。
curl http://192.0.0.192/{version}/meta-data
このコマンドでは、{version}を、前述のステップで特定したバージョンに置き換えます。
例:
curl http://192.0.0.192/2007-08-29/meta-data
- 次のコマンド例のいずれかを実行して、必要な特定のメタデータを取得します。
ノート:
これらのコマンドを実行する場合、2007-08-29を、使用するメタデータ・バージョンに置き換えます。
-
インスタンスのプライベートIPアドレスを取得するには:curl http://192.0.0.192/2007-08-29/meta-data/local-ipv4
10.106.15.70
-
インスタンスのホスト名を取得するには:curl http://192.0.0.192/2007-08-29/meta-data/local-hostname
bd6032.acme.oraclecloud.com
-
インスタンスのメモリーとCPUリソースに関する情報を取得するには:curl http://192.0.0.192/2007-08-29/meta-data/instance-type
7680 ram, 2.0 cpus
-
インスタンス名を取得するには:curl http://192.0.0.192/2007-08-29/meta-data/instance-id
/Compute-acme/joe.jonathan@example.com/4c318760-444b-4b48-83e1-e1b112c201f2
-
インスタンスに格納されるSSH公開キーの数を確認するには:curl http://192.0.0.192/2007-08-29/meta-data/public-keys
0
1
2
この例では、3つのSSH公開キーがメタデータとして格納され、索引番号0、1および2が付けられます。
-
特定のSSH公開キーの値を取得するには:curl http://192.0.0.192/2007-08-29/meta-data/public-keys/0/openssh-key
ssh-rsa AAAAB3NzaC1yc2EAAAABI... == joe.jonathan@acme.com