このドキュメントを使用して、VM Manager が正しく設定されていることを確認します。VM Manager の設定については、VM Manager の設定をご覧ください。
設定を確認するには、トラブルシューティング コマンドを使用するか、仮想マシン(VM)インスタンスで手動チェックを実施します。
始める前に
- Windows VM の場合は、PowerShell 3.0 以降を使用します。
-
まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
VM_NAME
: トラブルシューティングする VM インスタンスの名前ZONE
: インスタンスが配置されているゾーン- 例 1: VM インスタンスに設定の問題がある場合の
os-config troubleshoot
コマンドの出力を示す 例 2: VM インスタンスが適切に設定されている場合の
os-config troubleshoot
コマンドの出力を示す- OS Config API が有効である
- OS Config メタデータが有効である
- OS Config エージェントがインストールされ、実行されている
- サービス アカウントが有効である
- VM が OS Config API と通信できる
プロジェクト属性エンドポイントに対してクエリを実行します。
curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/" \ -H "Metadata-Flavor: Google"
エージェントのメタデータ値が設定されている場合、出力は次のようになります。
enable-osconfig
enable-osconfig
値が表示されたら、エンドポイントに対してクエリを実行します。curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/enable-osconfig" \ -H "Metadata-Flavor: Google"
有効な場合、エンドポイントは
TRUE
を返します。プロジェクト属性エンドポイントに対してクエリを実行します。
$value = (Invoke-RestMethod ` -Headers @{'Metadata-Flavor' = 'Google'} ` -Uri "http://metadata.google.internal/computeMetadata/v1/project/attributes/") $value
エージェントのメタデータ値が設定されている場合、出力は次のようになります。
enable-osconfig
enable-osconfig
値が表示されたら、エンドポイントに対してクエリを実行します。$value = (Invoke-RestMethod ` -Headers @{'Metadata-Flavor' = 'Google'} ` -Uri "http://metadata.google.internal/computeMetadata/v1/project/attributes/enable-osconfig") $value
有効な場合、エンドポイントは
TRUE
を返します。
トラブルシューティング コマンドを使用する
os-config troubleshoot
コマンドを使用して設定を確認します。いずれかのチェックが失敗した場合は、問題の解決方法についてフィードバックが提供されます。gcloud compute os-config troubleshoot VM_NAME \ --zone=ZONE
次のように置き換えます。
例
例 1
ゾーン
asia-east2-b
内のmy-instance-1
という VM インスタンスのトラブルシューティングを行うには、次のコマンドを実行します。gcloud compute os-config troubleshoot my-instance-1 \ --zone=asia-east2-b
出力は次のようになります。
OS Config troubleshooter tool is checking if there are issues with the VM Manager setup for this VM instance. > Is the OS Config API enabled? Yes > Is the OS Config agent enabled? Yes > Is the OS Config agent up to date? No The version of OS Config agent running on this VM instance is not the latest version. See https://cloud.google.com/compute/docs/manage-os/upgrade-vm-manager#update-agent on how to update the agent.
例 2
ゾーン
us-west1-b
内のmy-instance-2
という VM インスタンスのトラブルシューティングを行うには、次のコマンドを実行します。gcloud compute os-config troubleshoot my-instance-2 \ --zone=us-west1-b
出力は次のようになります。
OS Config troubleshooter tool is checking if there are issues with the VM Manager setup for this VM instance. > Is the OS Config API enabled? Yes > Is the OS Config agent enabled? Yes > Is the OS Config agent up to date? Yes > Is a service account present on the instance? Yes > Is the OS Config Service account present for this instance? Yes > Does this instance have a public IP or Private Google Access? Yes This instance has a public IP.
手動での確認
VM Manager が正しく設定されていることを手動で確認するには、次のチェックを実施します。
VM Manager が正しく設定されていても問題が解決しない場合は、VM Manager のトラブルシューティングをご覧ください。
OS Config API が有効か確認する
Google Cloud プロジェクトで、API が有効になっているかどうかを確認します。
コンソール
Google Cloud コンソールで OS Config API ページに移動します。
gcloud
gcloud services list --enabled
API が有効な場合、出力は次のようになります。
osconfig.googleapis.com OS Config API
API が有効でない場合は、OS Config API を有効にします。
メタデータが有効か確認する
Linux
プロジェクト メタデータの場合、VM で次の手順を行います。
メタデータが有効になっていない場合は、OS Config メタデータを有効にします。
Windows
プロジェクト メタデータの場合、VM で管理者として PowerShell ターミナルを開き、次のコマンドを実行します。
メタデータが有効になっていない場合は、OS Config メタデータを有効にします。
OS Config エージェントがインストールされ、実行されているか確認する
Linux
Linux VM にエージェントがインストールされているかどうかを確認するには、次のコマンドを実行します。
sudo systemctl status google-osconfig-agent
エージェントがインストールされ、実行されている場合、出力は次のようになります。
google-osconfig-agent.service - Google OSConfig Agent Loaded: loaded (/lib/systemd/system/google-osconfig-agent.service; enabled; vendor preset: Active: active (running) since Wed 2020-01-15 00:14:22 UTC; 6min ago Main PID: 369 (google_osconfig) Tasks: 8 (limit: 4374) Memory: 102.7M CGroup: /system.slice/google-osconfig-agent.service └─369 /usr/bin/google_osconfig_agent
エージェントがインストールされていない場合は、OS Config エージェントをインストールします。
Windows
Windows VM にエージェントがインストールされているかどうかを確認するには、次のコマンドを実行します。
PowerShell Get-Service google_osconfig_agent
エージェントがインストールされ、実行されている場合、出力は次のようになります。
Status Name DisplayName ------ ---- ----------- Running google_osconfig... Google OSConfig Agent
エージェントがインストールされていない場合は、OS Config エージェントをインストールします。
サービス アカウントが有効か確認する
サービス アカウントの要件については、設定の概要をご覧ください。
Linux
VM で次のコマンドを実行します。
curl "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/" \ -H "Metadata-Flavor: Google"
出力には少なくともデフォルトのサービス アカウントが含まれている必要があります。
default/
Windows
VM で、管理者として PowerShell ターミナルを開き、次のコマンドを実行します。
$value = (Invoke-RestMethod ` -Headers @{'Metadata-Flavor' = 'Google'} ` -Uri "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/") $value
出力には少なくともデフォルトのサービス アカウントが含まれている必要があります。
default/
VM が OS Config API と通信できるか確認する
VM が OS Config API と通信できるかどうかを確認するには、Linux または Windows VM で次のコマンドを実行します。
ping osconfig.googleapis.com
OS Config API への ping を停止するには、Ctrl+C キーを押します。
プライベート VPC ネットワーク内で VM が実行されており、公共のインターネット アクセスがない場合は、限定公開の Google アクセスが有効になっていることを確認します。
限定公開の Google アクセスを有効にした後に、VM が OS Config API と通信できることを確認します。
Linux
VM で次のコマンドを実行します。
curl --ssl 'https://osconfig.googleapis.com/$discovery/rest' | head
VM が OS Config API と通信できる場合、コマンド出力は次のようになります。
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0{ "discoveryVersion": "v1", "baseUrl": "https://osconfig.googleapis.com/", "ownerName": "Google", "version": "v1beta", "schemas": { "GooSettings": { "description": "Googet patching is performed by running `googet update`.", "properties": {}, "id": "GooSettings", 100 9569 0 9569 0 0 198k 0 --:--:-- --:--:-- --:--:-- 198k
Windows
VM で、管理者として PowerShell ターミナルを開き、次のコマンドを実行します。
Invoke-RestMethod -Headers @{'Metadata-Flavor' = 'Google'} -Uri 'https://osconfig.googleapis.com/$discovery/rest'
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-12-05 UTC。
-