メタデータ・サービスの設定
メタデータサービスからIDアクセストークンを取得して、メタデータサービスを設定します。 オプションで、アカウント内の IAM 対応サービスにアクセスするための IAM アクセス・トークンをこのトークンから生成します。
メタデータ・サービスへのアクセスを有効または無効にする
メタデータサービスへのアクセスは、デフォルトでは無効になっています。 インスタンスからメタデータを取得するには、VPC UI、CLI、またはAPIを使用して、新規インスタンスまたは既存インスタンスでサービスへのアクセスを有効にします。
コンソールでメタデータ・サービスへのアクセスを可能にする
IBM Cloud® コンソールから、メタデータサービスへのアクセスを有効または無効にできます。
コンソールで既存のインスタンスのメタデータ・サービスへのアクセスを有効にする
UI を使用して、既存のインスタンス上のメタデータサービスへのアクセスを有効にします。
-
インスタンスの一覧へ移動します。 IBM Cloud コンソールで、ナビゲーションメニュー アイコン
インフラストラクチャ
コンピュート > 仮想サーバーインスタンス をクリックします。
-
インスタンス名をクリックすると、詳細ページに移動します。
-
詳細ページで、**「メタデータ」**までスクロールします。
-
トグルをクリックしてください(緑色に変わります)。
コンソールでインスタンスを作成する際にメタデータ・サービスへのアクセスを有効にする
次の手順では、仮想サーバーインスタンスの作成時にメタデータサービスへのアクセスを有効にする方法を示します。
-
IBM Cloud コンソールで、ナビゲーションメニュー アイコン
インフラストラクチャ
コンピュート > 仮想サーバーインスタンス をクリックします。
-
「作成」 をクリックします。
-
「拡張オプション」 にナビゲートし、 「メタデータ」 を有効にします。
仮想サーバーインスタンスの作成の詳細については、 コンソールでの仮想サーバーインスタンスの作成を 参照してください。
コンソールでメタデータサービスへのアクセスを無効にする
この手順では、メタデータサービスが有効になっているインスタンスに対して、そのサービスへのアクセスを無効にする方法について説明します。 デフォルトでは、新しいインスタンスを作成した際、メタデータサービスへのアクセスは無効になっています。
-
IBM Cloud コンソールで、ナビゲーションメニュー アイコン
インフラストラクチャ
コンピュート > 仮想サーバーインスタンス をクリックします。
-
リストからインスタンスをクリックすると、その詳細ページに移動します。
-
**「メタデータ」**で、トグル・ボタンをクリックして (グレー表示) にします。
コンソールでインスタンス・テンプレートのメタデータ・サービスへのアクセスを有効または無効にする
インスタンス・テンプレートを 作成すると、メタデータ・サービスのトグルはデフォルトで無効になります。 トグルをクリックして、サービスへのアクセスを有効にしてください。
既存のインスタンステンプレートの詳細を表示すると、そのテンプレートでメタデータサービスが有効になっているかどうかがページ上に表示されます。 テンプレートの作成後にインスタンス・テンプレートのメタデータ設定を変更することはできません。
CLIからメタデータ・サービスへのアクセスを有効または無効にする
新しいインスタンスを作成する際、または既存のインスタンスに対して、CLI を使用してメタデータサービスへのアクセスを有効にしてください。
始める前に
-
CLI を使用する前に、IBM Cloud CLI および VPC CLI プラグインをインストールする必要があります。 詳しくは、CLI の前提条件を参照してください。
-
IBM Cloud VPC を作成していることを確認します。
CLIからインスタンスを作成する際に、メタデータ・サービスへのアクセスを有効または無効にする
ibmcloud is instance-create コマンドを実行し、metadata-service プロパティーを true に設定します。 メタデータサービスへのアクセスは、デフォルトでは無効になっています。 応答では、 Metadata service enabled が true に設定されています。
ibmcloud is instance-create test-instance-1 7002c1cd-9b0b-43ee-8112-5124dedbe84b us-south-1 bx2-2x8 0711-08206578-d749-49ea-86c9-1014622d1c6f --image-id 9f0050d0-636b-4fe6-82ea-931664fd9d91 --metadata-service true
Creating instance test under account VPC1 as user myuser@mycompany.com...
ID 264060c2-e5e9-44d4-994f-eea4a6688172
Name test-instance-1
CRN crn:v1:public:is:us-south-1:a/a1234567::instance:264060c2-e5e9-44d4-994f-eea4a6688172
Status pending
Startable true
Profile bx2-2x8
Architecture amd64
vCPUs 2
Memory(GiB) 8
Bandwidth(Mbps) 4000
Metadata service enabled true
Image ID Name
9f0050d0-636b-4fe6-82ea-931664fd9d91 ibm-ubuntu-20-04-minimal-amd64-1
VPC ID Name
7002c1cd-9b0b-43ee-8112-5124dedbe84b test-vpc1
Zone us-south-1
Resource group ID Name
21cabbd983d9c4beb82690daab08717e8 Default
Created 2022-08-08T22:12:11+05:30
Boot volume ID Name Attachment ID Attachment name
- PROVISIONING 954c1c47-906d-423f-a8c8-dd3adfafd278 my-vol-attachment1
instance-createで使用できるオプションの完全なリストについては、CLIのヘルプを参照してください。
CLIから既存インスタンスのメタデータ・サービスへのアクセスを有効または無効にする
ibmcloud is instance-update コマンドを実行して、インスタンス ID を指定します。 メタデータ・サービスへのアクセスを有効にするには、 metadata-service パラメータを true に設定する。無効にするには、 false に設定する。 このサービスへのアクセスを有効にするコマンドの例は、次のようになります:
ibmcloud is instance-update e219a883-41f2-4680-810e-ee63ade35f98 --metadata-service true
CLIから新しいインスタンス・テンプレートを作成する際に、メタデータ・サービスへのアクセスを有効または無効にする
CLI から インスタンス・テンプレート を作成するときに、このテンプレートに基づいて作成されたインスタンスのメタデータを収集するかどうかを指定できます。
ibmcloud is instance-create-from-template コマンドを使用し、有効化するには --metadata-service true オプションを、無効化するには --metadata-service false オプションを指定する。 テンプレートの値を設定すると、それを変更することはできません。
たとえば、メタデータサービスへのアクセスが有効になっているインスタンステンプレートを作成するには、次のコマンドを実行します
ibmcloud is instance-template-create my-template-name {template_id} us-south-1 mx2-2x16 {subnet_id} --image-id {image_id} --metadata-service true
このテンプレートからインスタンスを作成する際は、 --metadata-service true オプションを再度指定して、新しいインスタンスからサービスにアクセスできるようにしてください:
ibmcloud is instance-create-from-template --template-id {template_id} --name my-instance --metadata-service true
ibmcloud is instance-template-create-override-source-template コマンドを実行してインスタンス・テンプレートをオーバーライドした場合、 true または false で --metadata-service オプションを指定することで、メタデータ・サービスへのアクセスを有効または無効にできます。
これらのコマンドについて詳しくは、『VPC CLI リファレンス』を参照してください。 CLI からインスタンス・テンプレートを作成する方法について詳しくは、『インスタンス・テンプレートの作成』を参照してください。
APIによるメタデータ・サービスへのアクセスの有効化または無効化
APIを使用して新しいインスタンスを作成する際に、メタデータ・サービスへのアクセスを有効または無効にする
POST /instances 、インスタンスを作成すると、メタデータ・サービスへのアクセスはデフォルトで無効になる。
metadata_service パラメータを指定し、 enabled を true に設定することで、メタデータサービスへのアクセスを有効にすることができる。
この例では、インスタンスの作成時にメタデータサービスへのアクセスを有効にする方法を示しています:
curl -X POST "$vpc_api_endpoint/v1/instances?version=2024-11-12&generation=2"\
-H "Authorization: Bearer $iam_token"\
-d '{
"image": {
"id": "9aaf3bcb-dcd7-4de7-bb60-24e39ff9d366"
},
"keys": [
{
"id": "363f6d70-0000-0001-0000-00000013b96c"
}
],
"name": "my-instance",
"metadata_service": {
"enabled": true
},
.
.
.
}'
この応答は、サービスへのアクセスを有効にすると、メタデータ・パラメータが true に設定されることを示している。 また、GET /instance/{id} 呼び出しを実行して、メタデータ・サービス設定を確認することもできます。
APIを使用して、既存のインスタンスのメタデータ・サービスへのアクセスを有効または無効にする
既存のインスタンスからサービスへのアクセスを有効または無効にするには、 PATCH /instance/{instance_id} リクエストを行い、 metadata_service パラメータを指定する。 デフォルトでは、enabled プロパティーは false に設定されています。 サービスへのアクセスを有効にするには、 true に設定します。
この呼び出し例は、インスタンスのメタデータサービスへのアクセスを有効にする方法を示しています:
curl -X PATCH "$vpc_api_endpoint/v1/instances/$instance_id?version=2024-11-12&generation=2"\
-H "Authorization: Bearer $iam_token"\
-d '{
"metadata_service": {
"enabled": true
}
}'
この応答は、サービスへのアクセスを有効にすると、メタデータ・パラメータが true に設定されることを示している。 また、GET /instance/{id} 呼び出しを実行して、メタデータ・サービス設定を確認することもできます。
APIを使用して新しいインスタンス・テンプレートを作成する際に、メタデータ・サービスへのアクセスを有効または無効にする
インスタンステンプレートを作成する際、 POST /instance/templates リクエストを送信することで、この値を設定できます。 デフォルトでは、enabled プロパティーは false に設定されています。 有効にするには、true に設定します。
以下に例を示します。
curl -X POST "$vpc_api_endpoint/v1/instance/templates?version=2024-11-12&generation=2"\
-H "Authorization: Bearer $iam_token"\
-d '{
"image": {
"id": "3f9a2d96-830e-4100-9b4c-663225a3f872"
},
"keys": [
{
"id": "363f6d70-0000-0001-0000-00000013b96c"
}
],
"name": "my-instance-template",
"metadata_service": {
"enabled": true
},
"primary_network_interface": {
"subnet": {
"id": "0d933c75-492a-4756-9832-1200585dfa79"
}
},
"profile": {
"name": "bx2-2x8"
},
"vpc": {
"id": "dc201ab2-8536-4904-86a8-084d84582133"
},
"zone": {
"name": "us-south-1"
}
}'
インスタンス・テンプレートの作成後は、API を使用して metadata-service 設定を変更することはできません。 テンプレートのサービスへのアクセスを無効にした場合は、 metadata-service 有効を true に設定して新しいインスタンス・テンプレートを作成します。
コンソールでメタデータ設定を行う
コンソールでメタデータサービスの機能を設定できる。 メタデータ・サービスへのアクセスが有効になっている場合は、メタデータ・ウィンドウを展開してメタデータ・サービスの設定にアクセスする。
コンソールで信頼できるプロファイルを選択する
メタデータ・サービスの既存の信頼済みプロファイルを選択できます。
インスタンスをプロビジョンするときにトラステッド・プロファイルを選択する トラステッド・プロファイルを選択するには、「デフォルト・トラステッド・プロファイル」オプションにナビゲートし、既存のトラステッド・プロファイルのリストからトラステッド・プロファイルを選択します。
詳しくは、 インスタンスのトラステッド・プロファイルの作成 を参照してください。
コンソールの自動リンクを切り替える
メタデータサービスの自動リンクを切り替えることができます。 オートリンクが有効になっている場合、インスタンスがプロビジョンされると、指定された信頼できるプロファイルが仮想サーバー・インスタンスに自動的にリンクされます。 自動リンクでプロビジョニングされたインスタンスでは、信頼されたプロファイルは起動時にインスタンスですぐに使用できます。 自動リンクが無効になっている場合、指定された信頼済みプロファイルをインスタンスで使用するには、そのプロファイルをインスタンスにリンクする必要があります。
インスタンスのプロビジョン時に自動リンクを切り替え インスタンスのプロビジョン時に自動リンクを切り替えるには、インスタンスのプロビジョン・ページの「メタデータ」ウィンドウで「セキュア・アクセス」設定にナビゲートします。 セキュア・アクセス・スイッチを切り替えて、 Enabled が表示されるようにします。
コンソールでセキュアアクセスを有効にする
メタデータ・サービスへの安全なアクセスを有効にすることができます。 セキュアアクセスが有効になっている場合、メタデータサービスへのアクセスは、暗号化された HTTP セキュアプロトコル( HTTPS )を介して、仮想サーバーインスタンスからのみ可能となります。 セキュアアクセスが無効になっている場合、メタデータサービスは、暗号化されていない HTTP プロトコルによって、仮想サーバーインスタンスのみにアクセスできます。 デフォルトでは、セキュアアクセスは無効になっています。
以下のシナリオでは、追加のプロパティーが必要になる場合があります。
- IBM Cloud CLI Virtual Server Instance for VPC のコンピュート・リソース ID ログイン方式を使用しています。 詳しくは、 仮想サーバー・インスタンス計算リソース ID としてのログイン を参照してください。
- メタデータ・サービスへのセキュア・アクセスを有効にしたインスタンス内で、 VPCインスタンス認証を使用して IBM Cloud SDKを使用しています。 詳しくは、 IBM Cloud Go SDK を参照してください。
インスタンスのプロビジョン時にセキュア・アクセスを有効にする
インスタンスのプロビジョニング時にセキュア・アクセスを有効にするには、 「VPC の仮想サーバー・インスタンス」 ページからインスタンスを 作成 するときに、「メタデータ」ウィンドウの「セキュア・アクセス」設定にナビゲートします。 セキュア・アクセス・スイッチを切り替えて、 Enabled が表示されるようにします。
既存のインスタンスでセキュア・アクセスを有効にする
既存のインスタンスでセキュア・アクセスを有効にするには、インスタンスの 「インスタンスの詳細」 ページの「セキュア・アクセス」設定にナビゲートします。
コンソールでメタデータのホップ制限を設定する
メタデータ・サービスからの IP 応答パケットのホップ限界を設定できます。 ホップ限界は、1 (デフォルト) から 64 までの任意の値にすることができます。 メタデータ・サービスへのアクセスが有効になっていること。
インスタンスのプロビジョン時にメタデータ・ホップ限界を設定する
インスタンスをプロビジョンするときにホップ限界を設定するには、 「VPC の仮想サーバー・インスタンス」 ページからインスタンスを 作成 するときに、「メタデータ」ウィンドウの「ホップ限界」設定に移動します。 1 から 64 までのホップ限界値を指定してください。
既存のインスタンスでのメタデータ・ホップ限界の設定
既存のインスタンスでホップ制限を設定するには、 インスタンスの詳細ページのホップ制限設定に移動します。 1 から 64 までのホップ限界値を指定してください。
CLI を使用したメタデータ設定の構成
CLI を使用して、メタデータ・サービスの機能を有効または無効にすることができます。
次の例は、メタデータ・サービスへのアクセスが有効になっているインスタンスを示している。
ibmcloud is instance instance-name
ID 0716_9cc6d74d-4b77-4cca-b1f4-31cc6edefe01
Name instance-name
CRN crn:v1:bluemix:public:is:us-south-1:a/a1234567::instance:0716_9cc6d74d-4b77-4cca-b1f4-31cc6edefe01
Status running
Availability policy on host failure restart
Startable true
Profile bx2-2x8
Architecture amd64
vCPUs 2
Memory(GiB) 8
Bandwidth(Mbps) 4000
Volume bandwidth(Mbps) 1000
Network bandwidth(Mbps) 3000
Lifecycle Reasons Code Message
- -
Lifecycle State stable
Metadata service Enabled Protocol Response hop limit
false http 1
Image ID Name
r006-1025e040-7d6f-408c-b4db-6156dc986fc7 ibm-ubuntu-22-04-1-minimal-amd64-2
Numa Count 1
VPC ID Name
r006-ac1c1ae4-5573-42eb-9194-854c9a3d5555 fode
.
.
.
自動リンクを無効にする
インスタンスのプロビジョニング時に、メタデータ・サービスの自動リンクを無効にできます。 トラステッド・プロファイルが選択されると、デフォルトで自動リンクが有効になります。 オートリンクが有効になっている場合、インスタンスがプロビジョンされると、指定された信頼できるプロファイルが仮想サーバー・インスタンスに自動的にリンクされます。 信頼されたプロファイルを自動リンクしてプロビジョニングされたインスタンスは、起動時にインスタンスがすぐに利用できるようになります。 自動リンクが無効になっている場合、指定された信頼済みプロファイルをインスタンスで使用するには、そのプロファイルをインスタンスにリンクする必要があります。
自動リンクを無効にするには、インスタンスのプロビジョニング時に --default-trusted-profile-auto-link オプションを true に設定します。 以下の例は、自動リンクが false に設定されたプロビジョン・コマンドのインスタンスを示しています。
ibmcloud is instance-create .... --default-trusted-profile "Profile-9fd84246-7df4-4667-94e4-8ecde51d5ac5" --default-trusted-profile-auto-link false
CLI を使用したセキュア・アクセスの有効化
メタデータ・サービスへの安全なアクセスを有効にすることができます。 セキュアアクセスが有効になっている場合、メタデータサービスへのアクセスは、暗号化された HTTP Secureプロトコル( HTTPS )を介して、仮想サーバーインスタンスからのみ可能となります。 セキュアアクセスが無効になっている場合、メタデータサービスは、暗号化されていない HTTP プロトコルによって仮想サーバーインスタンスのみにアクセスできます。 デフォルトでは、セキュアアクセスは無効になっています。
以下のシナリオでは、特定のプロパティーが必要になる場合があります。
- IBM Cloud CLI Virtual Server Instance for VPC のコンピュート・リソース ID ログイン方式を使用しています。 詳しくは、 仮想サーバー・インスタンス計算リソース ID としてのログイン を参照してください。
- メタデータ・サービスへのセキュア・アクセスを有効にしたインスタンス内で、 VPCインスタンス認証を使用して IBM Cloud SDKを使用しています。 詳しくは、 IBM Cloud Go SDKを参照してください。
インスタンスのプロビジョン時にセキュア・アクセスを有効にする
インスタンスをプロビジョンするときにセキュア・アクセスを有効にするには、 instance-create コマンドを使用するときに --metadata-service-protocol オプションの値を指定します。 セキュア・アクセスの場合は、 https を指定します。 デフォルト設定は、暗号化されていない http です。
ibmcloud is instance-create INSTANCE_NAME VPC ZONE_NAME PROFILE_NAME SUBNET ... [--metadata-service-protocol http | https] ...
--metadata-service-protocol value : The communication protocol to use for the metadata service
endpoint. Applies only when the metadata service is enabled. One of: http, https. (default: "http")
既存のインスタンスでセキュア・アクセスを有効にするには、 instance-update コマンドを使用するときに、 metadata service の protocol サブプロパティーに値を指定します。
CLI を使用したメタデータ・ホップ限界の設定
メタデータ・サービスからの IP 応答パケットのホップ限界を設定するには、インスタンスの Metadata service プロパティーの Response hop limit サブプロパティーに、 1 (デフォルト) と 64 の間のホップ限界値を指定します。
インスタンスのプロビジョン時にメタデータ・ホップ限界を設定する
インスタンスをプロビジョンするときにメタデータ・ホップ限界を設定するには、 instance-create コマンドを使用するときに、 --metadata-service-response-hop-limit オプションに 1 (デフォルト) と 64 の間のホップ限界値を指定します。
ibmcloud is instance-create INSTANCE_NAME VPC ZONE_NAME PROFILE_NAME SUBNET ... [--metadata-service-response-hop-limit METADATA-SERVICE-RESPONSE-HOP-LIMIT] ...
--metadata-service-response-hop-limit value : The hop limit (IP time to live) for IP response packets
from the metadata service. (default: 1)
API を使用したメタデータ設定の構成
API を使用して、メタデータ・サービスの機能を有効または無効にすることができます。
API を使用した自動リンクの無効化
インスタンスのプロビジョニング時に、メタデータ・サービスの自動リンクを無効にできます。 トラステッド・プロファイルが選択されると、自動リンクが自動的に有効になります。 オートリンクが有効になっている場合、インスタンスがプロビジョンされると、指定された信頼できるプロファイルが仮想サーバー・インスタンスに自動的にリンクされます。 自動リンクを使用してプロビジョンされたインスタンスに関連付けられているトラステッド・プロファイルは、始動時に即時にそのインスタンスで使用可能になります。 自動リンクが無効になっている場合、指定された信頼済みプロファイルをインスタンスで使用するには、そのプロファイルをインスタンスにリンクする必要があります。
API を使用して自動リンクを無効にするには、 default_trusted_profile プロパティーの auto_link 値を false に設定する必要があります。 以下の例は、 auto_link オプションを無効にした default_trusted_profile プロパティーを示しています。
"default_trusted_profile": {
"auto_link": false,
"target": {
"id": "Profile-9fd84246-7df4-4667-94e4-8ecde51d5ac5"
}
},
API を使用したセキュア・アクセスの有効化
メタデータ・サービスへの安全なアクセスを有効にすることができます。 セキュアアクセスが有効になっている場合、メタデータサービスへのアクセスは、暗号化された HTTP Secureプロトコル( HTTPS )を介して、仮想サーバーインスタンスからのみ可能となります。 セキュアアクセスが無効になっている場合、メタデータサービスは、暗号化されていない HTTP プロトコルによって仮想サーバーインスタンスのみにアクセスできます。 デフォルトでは、セキュアアクセスは無効になっています。 以下のシナリオでは、特定のプロパティーが必要になる場合があります。
- IBM Cloud CLI Virtual Server Instance for VPC のコンピュート・リソース ID ログイン方式を使用しています。 詳しくは、 仮想サーバー・インスタンス計算リソース ID としてのログイン を参照してください。
- メタデータ・サービスへのセキュア・アクセスを有効にしたインスタンス内で、 VPCインスタンス認証を使用して IBM Cloud SDKを使用しています。 詳しくは、 IBM Cloud Go SDKを参照してください。
インスタンスのプロビジョン時にセキュア・アクセスを有効にする
セキュア・アクセスを有効にするには、 POST /instances メソッドを使用してインスタンスをプロビジョンするときに、インスタンスの metadata_service.protocol プロパティーの値を指定します。 セキュア・アクセスの場合は、 https を指定します。 デフォルト設定は、暗号化されていない
http です。
既存のインスタンスでセキュア・アクセスを有効にする
既存のインスタンスでセキュア・アクセスを有効にするには、 PATCH /instances/{id} メソッドを使用してインスタンスを更新します。 インスタンスの metadata_service.protocol プロパティーの値を指定します。 セキュア・アクセスの場合は、 https を指定します。 デフォルト設定は、暗号化されていない
http です。
API を使用したメタデータ・ホップ限界の設定
metadata_service.response_hop_limit プロパティーを使用して、メタデータ・サービスからの IP 応答パケットのホップ限界を設定できます。
このプロパティは、 metadata_service.enabled を true に設定することで、メタデータサービスへのアクセスが有効になっている場合にのみ適用される。 デフォルトはfalseです。
インスタンスのプロビジョン時にメタデータ・ホップ限界を設定する
インスタンスをプロビジョンするときに応答を設定するには、 POST /instances メソッド を呼び出し、 1 (デフォルト) と 64 の間の metadata_service.response_hop_limit プロパティー値を指定します。
このプロパティは、 metadata_service.enabled を true に設定することで、メタデータサービスへのアクセスが有効になっている場合にのみ適用される。 デフォルトはfalseです。
既存のインスタンスでのメタデータ・ホップ限界の設定
既存のインスタンスに応答ホップ限界を設定するには、 PATCH /instances/{id} メソッドを呼び出し、 1 (デフォルト) と 64 の間に metadata_service.response_hop_limit プロパティー値を指定します。
次のステップ
IDアクセストークンを作成し、メタデータサービスへのアクセスを有効にすると、インスタンス、SSHキー、およびプレースメントグループのメタデータを取得できるようになります。 詳しくは、 メタデータ・サービスの利用を 参照。