このドキュメントでは、Compute Engine インスタンスに Agent for Compute Workloads をインストールし、これらのコンピューティング インスタンスで実行されている Microsoft SQL Server ワークロードに接続するようにエージェントを構成する方法について説明します。
エージェントをインストールして構成すると、SQL Server ワークロードと基盤となるコンピューティング インスタンスから指標が収集され、Workload Manager に送信されます。Workload Manager の評価を使用して、インフラストラクチャ、オペレーティング システム、ワークロード構成のベスト プラクティスからの逸脱について SQL Server ワークロードをスキャンできます。
始める前に
Agent for Compute Workloads をインストールして構成する前に、次の前提条件が満たされていることを確認する必要があります。
- 1 つ以上のコンピューティング インスタンスに SQL Server ワークロードをデプロイしている。
- エージェントに必要な IAM ロールが付与されている。
- Cloud APIs へのアクセスを有効にしている。
- SQL Server で必要な権限が付与されている。
エージェントに必要な IAM ロール
Agent for Compute Workloads は、コンピューティング インスタンスに関連付けられたサービス アカウントを使用して認証を行い、 Google Cloud リソースにアクセスします。
セキュリティを強化するため、Compute Engine のデフォルトのサービス アカウントを使用するのではなく、単一目的のサービス アカウントを使用することをおすすめします。
Agent for Compute Workloads がGoogle Cloud で認証を行い、 Google Cloud リソースにアクセスするために必要な権限がサービス アカウントに付与されるように、プロジェクトに対する次の IAM ロールをサービス アカウントに付与するよう管理者に依頼してください。
-
コンピューティング閲覧者(
roles/compute.viewer): コンピューティング インスタンスから指標を収集します。 -
Workload Manager Insights ライター(
roles/workloadmanager.insightWriter): データを Workload Manager データ ウェアハウスに書き込みます。 -
(推奨)ログ書き込み(
roles/logging.logWriter): エージェント ログを Cloud Logging に送信します。 -
(省略可)Secret Manager のシークレット アクセサー(
roles/secretmanager.secretAccessor): Secret Manager を使用して SQL Server インスタンスに接続するパスワードを保存する場合。
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
管理者は、カスタムロールや他の事前定義ロールを使用して、必要な権限をサービス アカウントに付与することもできます。
Cloud APIs へのアクセスを有効にする
Compute Engine では、すべての Cloud APIs にすべてのアクセス スコープを使用できるようにインスタンスを構成し、インスタンス サービス アカウントの IAM 権限のみを使用してGoogle Cloud リソースへのアクセスを制御することをおすすめします。詳細については、ユーザー管理のサービス アカウントを使用する VM を作成するをご覧ください。
Cloud APIs へのアクセスを制限する場合、Compute Workloads 用エージェントには、ホスト コンピューティング インスタンスで次の最小 Cloud APIs アクセス スコープが必要です。
https://www.googleapis.com/auth/cloud-platform
詳細については、スコープのベスト プラクティスをご覧ください。
外部 IP アドレスを持たないコンピューティング インスタンスで SQL Server アプリケーションを実行している場合は、インスタンスのサブネットで限定公開の Google アクセスを有効にして、Compute Workloads 用エージェントが Google API とサービスにアクセスできるようにする必要があります。限定公開の Google アクセスを有効にする方法については、限定公開の Google アクセスを構成するをご覧ください。
SQL Server で必要な権限
次のスクリプトを使用して、エージェントで構成されたユーザー アカウントに必要な権限を割り当てます。
USE [master]
GO
GRANT VIEW SERVER STATE TO [user_name]
GRANT VIEW ANY DEFINITION TO [user_name]
-- Adds db_datareader role to the user
EXEC sp_MSForEachDB
'
USE ?
IF NOT EXISTS(SELECT * FROM sys.database_principals WHERE name = ''user_name'')
BEGIN
CREATE USER [user_name] FOR LOGIN [user_name]
END
EXEC sp_addrolemember ''db_datareader'', ''user_name''
'
パッケージ マネージャーを使用してエージェントをインストールして構成する
このセクションでは、パッケージ マネージャーを使用して、コンピューティング インスタンスに Agent for Compute Workloads をインストールし、SQL Server インスタンスに接続するように構成する方法について説明します。
Agent for Compute Workloads をインストールする手順は次のとおりです。
Windows
Windows では、googet パッケージ管理コマンドを使用して、コンピューティング ワークロード用エージェントをインストールします。このコマンドは、次のタスクを実行します。
- 最新バージョンのエージェントをダウンロードします。
google-cloud-workload-agentという名前の Windows サービスを作成します。- 毎分実行されるスケジュール設定されたタスクを作成して、サービスが実行中かどうかを確認し、必要に応じてサービスを再起動します。
Windows ベースのコンピューティング インスタンスにコンピューティング ワークロード用エージェントをインストールして構成する手順は次のとおりです。
RDP を使用してコンピューティング インスタンスとの接続を確立します。
方法については、RDP を使用して Windows VM に接続するをご覧ください。
管理者として PowerShell から次のコマンドを実行します。
googet addrepo google-cloud-workload-agent https://packages.cloud.google.com/yuck/repos/google-cloud-workload-agent-windows-x86_64 googet install google-cloud-workload-agentエージェントの構成ファイルを開きます。
%ProgramFiles%\Google\google-cloud-workload-agent\conf\configuration.json構成パラメータの説明に従って、すべての必須パラメータの値を指定します。
構成ファイルを保存する
変更を有効にするには、エージェントを再起動します。
RHEL
Red Hat Enterprise Linux(RHEL)では、yum パッケージ管理コマンドを使用して Agent for Compute Workloads をインストールします。このコマンドは、次のタスクを実行します。
- 最新バージョンのエージェントをダウンロードします。
- エージェントの
systemdサービス(google-cloud-workload-agentという名前)を作成します。 google-cloud-workload-agentサービスを有効にして開始します。
RHEL ベースのコンピューティング インスタンスにコンピューティング ワークロード用エージェントをインストールして構成する手順は次のとおりです。
コンピューティング インスタンスと SSH 接続を確立します。
ターミナルで、エージェントをインストールします。
sudo tee /etc/yum.repos.d/google-cloud-workload-agent.repo << EOM [google-cloud-workload-agent] name=Google Cloud Agent for Compute Workloads baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-$basearch enabled=1 gpgcheck=0 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOM sudo yum install google-cloud-workload-agentエージェントの構成ファイルを開きます。
/etc/google-cloud-workload-agent/configuration.json構成パラメータの説明に従って、すべての必須パラメータの値を指定します。
構成ファイルを保存する
変更を有効にするには、エージェントを再起動します。
SLES
SUSE Linux Enterprise Server(SLES)では、zypper パッケージ管理コマンドを使用して Agent for Compute Workloads をインストールします。このコマンドは、次のタスクを実行します。
- 最新バージョンのエージェントをダウンロードします。
- エージェントの
systemdサービス(google-cloud-workload-agentという名前)を作成します。 google-cloud-workload-agentサービスを有効にして開始します。
SLES ベースのコンピューティング インスタンスにコンピューティング ワークロード用エージェントをインストールして構成するには、次の操作を行います。
コンピューティング インスタンスと SSH 接続を確立します。
ターミナルで、エージェントをインストールします。
sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-$basearch google-cloud-workload-agent sudo zypper install google-cloud-workload-agentエージェントの構成ファイルを開きます。
/etc/google-cloud-workload-agent/configuration.json構成パラメータの説明に従って、すべての必須パラメータの値を指定します。
構成ファイルを保存する
変更を有効にするには、エージェントを再起動します。
Debian
Debian では、apt パッケージ管理コマンドを使用して、Compute Workloads 用エージェントをインストールします。このコマンドは、次のタスクを実行します。
- 最新バージョンのエージェントをダウンロードします。
- エージェントの
systemdサービス(google-cloud-workload-agentという名前)を作成します。 google-cloud-workload-agentサービスを有効にして開始します。
Debian ベースのコンピューティング インスタンスに Agent for Compute Workloads をインストールして構成する手順は次のとおりです。
コンピューティング インスタンスと SSH 接続を確立します。
ターミナルで、エージェントをインストールします。
echo 'deb https://packages.cloud.google.com/apt google-cloud-workload-agent-x86-64-apt main' | sudo tee -a /etc/apt/sources.list.d/google-cloud-workload-agent.list sudo apt-get update sudo apt-get install google-cloud-workload-agentエージェントの構成ファイルを開きます。
/etc/google-cloud-workload-agent/configuration.json構成パラメータの説明に従って、すべての必須パラメータの値を指定します。
構成ファイルを保存する
変更を有効にするには、エージェントを再起動します。
VM Extension Manager を使用して VM フリートにエージェントをインストールして管理する
VM Extension Manager を設定する
VM Extension Manager を設定するには、次の操作を行います。
- VM 拡張機能マネージャーのドキュメントで、始める前にのセクションを確認します。
VM Extension Manager ポリシーの作成と管理に必要な IAM ロールを設定します。詳しくは以下をご覧ください。
VM フリートにエージェントをインストールする
VM 拡張機能マネージャー ポリシーを使用して、特定のゾーン内の VM フリートに最新バージョンの Agent for Compute Workloads をインストールするには、次の操作を行います。
コンソール
Google Cloud コンソールで、[VM 拡張機能ポリシー] ページに移動します。
[拡張機能ポリシーを作成] をクリックします。
[名前] フィールドに、ポリシーの名前を入力します。
省略可: [説明] フィールドに、ポリシーの説明を入力します。
[優先度] フィールドで、ポリシー間の競合を解決するための優先度番号を指定します。数字が小さいほど優先度が高くなります。デフォルト値は
1000です。[リージョン] リストと [ゾーン] リストで、このポリシーを適用するゾーンを選択します。
[拡張機能] セクションで [拡張機能を追加] をクリックし、次の操作を行います。
- [拡張機能] リストから、[Google Cloud のコンピューティング ワークロード用拡張機能] を選択します。
[バージョン] フィールドは空欄のままにします。
これにより、ポリシーは Agent for Compute Workloads の最新バージョンをインストールするように指示されます。
[構成ファイルの内容] フィールドに、エージェントに適用する構成を入力します。
SQL Server ワークロードのエージェントでサポートされている構成パラメータについては、構成パラメータをご覧ください。
[完了] をクリックします。
省略可: ポリシーのロールアウトを必要な VM に制限するには、次の操作を行います。
- [ラベルを追加] をクリックし、必要な VM を識別するラベルを追加します。
- [完了] をクリックします。
[作成] をクリックします。
gcloud
gcloud beta compute zone-vm-extension-policies create POLICY_NAME \ --zone=ZONE \ --extensions=google-cloud-workload-extension \ --config-from-file=google-cloud-workload-extension=CONFIG_FILE_PATH \ [--description="DESCRIPTION" \] [--inclusion-labels=KEY_1=VALUE_1 \] [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \] [--priority=PRIORITY]
次のように置き換えます。
POLICY_NAME: VM 拡張機能ポリシーの名前。指定した名前のポリシーがゾーンにすでに存在する場合、コマンドは失敗します。
ZONE: このポリシーを適用するゾーン。CONFIG_FILE_PATH: Agent for Compute Workloads が SQL Server ワークロードに接続するための構成を含む JSON ファイルのローカルパス。- または、構成をインライン文字列として指定するには、
--config-from-fileではなく--configフラグを使用します。例:--config=google-cloud-workload-extension="CONFIG"Google Cloud は--config-from-fileの使用を推奨しています。 --config-from-fileまたは--configのいずれかを使用できますが、同じコマンドで両方を使用することはできません。- SQL Server ワークロードのエージェントでサポートされている構成パラメータについては、構成パラメータをご覧ください。
- または、構成をインライン文字列として指定するには、
DESCRIPTION: ポリシーの説明(省略可)。KEY_1=VALUE_1: ポリシーが VM をターゲットにするために使用するラベルを定義する Key-Value ペアのカンマ区切りリスト。- ポリシーの対象となる VM には、指定されたすべてのラベルが必要です。
--inclusion-labelsを複数回指定すると、ポリシーは指定されたセレクタのいずれかに一致する VM をターゲットにします(論理OR)。このフラグを省略すると、ポリシーは指定されたゾーン内のすべての VM をターゲットにします。
PRIORITY: ポリシーの優先度を定義する0から65535までの整数。数字が小さいほど優先度が高くなります。デフォルト値は1000です。
例:
次のコマンドは、test-project という名前のGoogle Cloud プロジェクトに test-agent-policy という名前のポリシーを作成します。このポリシーは、ゾーン us-centrail-f にデプロイされたすべての VM に最新バージョンの Agent for Compute Workloads をインストールします。agent-config.json で指定された構成がエージェントに適用されます。
gcloud beta compute zone-vm-extension-policies create test-agent-policy \ --project=test-project \ --zone=us-central1-f \ --extensions=google-cloud-workload-extension \ --config-file-path=google-cloud-workload-extension="/usr/agent-config.json"
エージェントのインストールを確認する
エージェントが期待どおりに動作していることを確認する手順は次のとおりです。
Windows
RDP を使用してコンピューティング インスタンスとの接続を確立します。
方法については、RDP を使用して Windows VM に接続するをご覧ください。
管理者として PowerShell から次のコマンドを実行します。
$(Get-Service -Name 'google-cloud-workload-agent' -ErrorAction Ignore).Statusエージェントが想定どおりに実行されている場合は、ステータスが
Runningと表示されます。
RHEL
コンピューティング インスタンスと SSH 接続を確立します。
エージェント パッケージのステータスを確認します。
systemctl status google-cloud-workload-agentエージェント パッケージが期待どおりに実行されている場合、出力には
active (running)が含まれます。次に例を示します。google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago Main PID: 14412 (google_cloud_sq) Tasks: 7 Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M) CGroup: /system.slice/google-cloud-workload-agent.service └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run
SLES
コンピューティング インスタンスと SSH 接続を確立します。
エージェント パッケージのステータスを確認します。
systemctl status google-cloud-workload-agentエージェント パッケージが期待どおりに実行されている場合、出力には
active (running)が含まれます。次に例を示します。google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago Main PID: 14412 (google_cloud_sq) Tasks: 7 Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M) CGroup: /system.slice/google-cloud-workload-agent.service └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run
Debian
コンピューティング インスタンスと SSH 接続を確立します。
エージェント パッケージのステータスを確認します。
systemctl status google-cloud-workload-agentエージェント パッケージが期待どおりに実行されている場合、出力には
active (running)が含まれます。次に例を示します。google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago Main PID: 14412 (google_cloud_sq) Tasks: 7 Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M) CGroup: /system.slice/google-cloud-workload-agent.service └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run
構成パラメータ
次の表に、エージェントの構成ファイルのパラメータを示します。
| パラメータ | |
|---|---|
log_level |
エージェントのロギングレベルを設定するには、必要な値を設定します。使用可能なログレベルは次のとおりです。
デフォルトのログレベルは |
log_to_cloud |
エージェントのログを Cloud Logging にリダイレクトするには、 |
agent_properties.log_usage_metrics |
エージェントの健全性指標のロギングを有効にするには、値を |
common_discovery.collection_frequency |
エージェントのワークロード検出サービスが実行される頻度を秒単位で指定します。デフォルト値は このパラメータの値が小文字の |
sqlserver_configuration.enabled |
エージェント内で SQL Server 指標の収集を有効にするには、値を |
sqlserver_configuration.collection_configuration.collect_guest_os_metrics |
OS 指標の収集を有効にするには、値を |
sqlserver_configuration.collection_configuration.collect_sql_metrics |
SQL Server 指標の収集を有効にするには、 |
sqlserver_configuration.collection_configuration.collection_frequency |
コンピューティング ワークロード用エージェントの指標収集頻度(秒)。デフォルトは |
sqlserver_configuration.credential_configurations[].connection_parameters[].host |
SQL Server のホスト名。 |
sqlserver_configuration.credential_configurations[].connection_parameters[].username |
SQL Server インスタンスのクエリに使用するユーザー アカウントを指定します。アカウント権限を構成するには、 権限スクリプトに必要な権限を確認して、内部ポリシーに従って付与してください。 注: Windows 認証を使用している場合は、ユーザー名を |
sqlserver_configuration.credential_configurations[].connection_parameters[].secret.project_id |
シークレットが保存されているプロジェクトの ID。シークレットとホスト VM インスタンスが同じ Google Cloud プロジェクトに存在する場合は、空の文字列("")に設定します。 |
sqlserver_configuration.credential_configurations[].connection_parameters[].secret.secret_name |
エージェントが SQL Server のクエリに使用するデータベース ユーザー アカウントのパスワードを安全に指定するには、データベース ユーザー アカウントのセキュリティ認証情報を含む Secret Manager のシークレットの名前を指定します。 注: シークレットとホスト VM インスタンスは、同じ Google Cloud プロジェクトに存在する必要があります。 |
sqlserver_configuration.credential_configurations[].connection_parameters[].port |
SQL Server インスタンスがクエリを受け付けるポートを指定します。 |
sqlserver_configuration.credential_configurations[].remote_win.connection_parameters.host |
リモート Windows VM の IP アドレスまたは FQDN |
sqlserver_configuration.credential_configurations[].remote_win.connection_parameters.username |
Windows VM にリモート接続するために使用されるユーザー アカウントを指定します。 |
sqlserver_configuration.credential_configurations[].remote_win.connection_parameters.secret.secret_name |
エージェントが VM にリモート接続するために使用する Windows ユーザー アカウントのパスワードを安全に指定するには、データベース ユーザー アカウントのセキュリティ認証情報を含む Secret Manager のシークレットの名前を指定します。 注: シークレットとホスト VM インスタンスは、同じ Google Cloud プロジェクトに存在する必要があります。 |
sqlserver_configuration.credential_configurations[].local_collection |
|
sqlserver_configuration.credential_configurations[].remote_linux.connection_parameters.host |
リモート Linux VM の IP アドレスまたは FQDN。 |
sqlserver_configuration.credential_configurations[].remote_linux.connection_parameters.username |
Linux VM にリモート接続するために使用するユーザー アカウントを指定します。 |
sqlserver_configuration.credential_configurations[].remote_linux.connection_parameter.port |
リモート Linux VM の SSH ポート番号を指定します。 |
sqlserver_configuration.credential_configurations[].remote_linux.linux_ssh_private_key_path |
SSH 秘密鍵ファイルのパスを指定します。 |
sqlserver_configuration.credential_configurations[].vm_properties.instance_name |
Compute Engine VM インスタンスの名前を指定します。 注: ローカル コレクションの場合は省略可能です。 |
sqlserver_configuration.credential_configurations[].vm_properties.instance_id |
Compute Engine VM インスタンスの ID を指定します。 注: ローカル コレクションの場合は省略可能です。 |
sqlserver_configuration.collection_timeout |
指標収集のタイムアウト(秒単位)。デフォルトは `10s` です。 |
sqlserver_configuration.max_retries |
コレクションの失敗時に再試行する最大回数。デフォルト値は `3` です。 |
sqlserver_configuration.retry_frequency |
収集が失敗した場合にエージェントが再試行する頻度を指定します。デフォルト値は `3600s` です。 |
sqlserver_configuration.remote_collection |
エージェントがリモート データ収集を行っていることを示すには、 |
構成ファイルの例
次の構成例では、Agent for Compute Workloads が SQL Server インスタンスに接続できます。
ローカル コレクション
{ "log_level": "INFO", "common_discovery": { "collection_frequency": "10800s" }, "sqlserver_configuration": { "enabled": true, "collection_configuration": { "collect_guest_os_metrics": true, "collect_sql_metrics": true, "collection_frequency": "60s" }, "credential_configurations": [ { "connection_parameters": [ { "host": ".", "username": "db_user_name", "secret": { "project_id": "", "secret_name": "idb_pwd_secret_name" }, "port": 1433 } ], "local_collection": true } ], "collection_timeout": "60s", "max_retries": 5, "retry_frequency": "3600s" } }
リモート収集
{ "log_level": "INFO", "common_discovery": { "collection_frequency": "10800s" }, "sqlserver_configuration": { "enabled": true, "collection_configuration": { "collect_guest_os_metrics": true, "collect_sql_metrics": true, "collection_frequency": "60s" }, "credential_configurations": [ { "connection_parameters": [ { "host": "sql_server_instance", "username": "db_user_name", "secret": { "project_id": "", "secret_name": "db_pwd_secret_name" }, "port": 1433 } ], "remote_win": { "connection_parameters": { "host": "sql_server_instance", "username": "user_name", "secret": { "project_id": "", "secret_name": "pwd_secret_name" } } }, "vm_properties": { "instance_name": "db01", "instance_id": "9999999999999999999" } }, { "connection_parameters": [ { "host": "sql_server_instance", "username": "db_user_name", "secret": { "project_id": "", "secret_name": "db_pwd_secret_name" }, "port": 1433 } ], "remote_linux": { "connection_parameters": { "host": "sql_server_instance", "username": "user_name", "secret": { "project_id": "", "secret_name": "pwd_secret_name" }, "port": 22 }, "linux_ssh_private_key_path": "path of the private key" }, "vm_properties": { "instance_name": "db02", "instance_id": "9999999999999999999" } } ], "collection_timeout": "10s", "max_retries": 3, "retry_frequency": "3600s", "remote_collection": true } }
エージェントのバージョンを確認する
エージェントのバージョンを確認する手順は次のとおりです。
Windows
- RDP を使用して、ホストマシンに接続します。
- 管理者として PowerShell から次のコマンドを実行します。
googet installed google-cloud-workload-agent
RHEL
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
yum info google-cloud-workload-agent
SUSE
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
zypper info google-cloud-workload-agent
Debian
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
dpkg -s google-cloud-workload-agent | grep version
エージェントを再起動する
Compute Workloads 用エージェントが停止するか、構成を更新した場合は、エージェントを再起動します。
ご使用のオペレーティング システムに応じて、次の操作を行います。
Windows
- RDP を使用して、ホストマシンに接続します。
- 管理者として PowerShell から次のコマンドを実行します。
Restart-Service -Name 'google-cloud-workload-agent' -Force
Linux
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
sudo systemctl restart google-cloud-workload-agent
エージェントを更新する
エージェントの最新バージョンを使用するには、定期的に更新を確認し、エージェントを更新する必要があります。
更新を確認する
ご使用のオペレーティング システムに応じて、次の操作を行います。
Windows
- RDP を使用して、ホストマシンに接続します。
- 管理者として PowerShell から次のコマンドを実行します。
googet latest google-cloud-workload-agent
RHEL
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
sudo yum check-update google-cloud-workload-agent
SLES
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
sudo zypper list-updates -r google-cloud-workload-agent
Debian
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
sudo apt list google-cloud-workload-agent
更新をインストールする
ご使用のオペレーティング システムに応じて、次の操作を行います。
Windows
- RDP を使用して、ホストマシンに接続します。
- 管理者として PowerShell から次のコマンドを実行します。
googet install google-cloud-workload-agent
RHEL
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
sudo yum --nogpgcheck update google-cloud-workload-agent
SLES
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
sudo zypper --no-gpg-checks update google-cloud-workload-agent
Debian
- SSH を使用してホストマシンに接続します。
- 次のコマンドを実行します。
sudo apt-get install google-cloud-workload-agent
Cloud Logging でエージェントのログを表示する
デフォルトでは、Compute Workloads 用エージェントのログは VM インスタンスから Cloud Logging にリダイレクトされます。
Logging でエージェントのログを表示する手順は次のとおりです。
Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。
[ログ エクスプローラ] に移動
[クエリ] ペインに移動します。
[リソース] プルダウン メニューから [グローバル] を選択し、[適用] をクリックします。
クエリエディタで、「
google-cloud-workload-agent」と入力します。[クエリを実行] をクリックします。
すべての VM インスタンスで実行されているエージェント インスタンスによって生成されたログが表示されます。特定のマシンのログをフィルタするには、インターフェースで使用可能なフィルタを使用します。
Cloud Logging でエージェントのログを無効にする
エージェントのログの Cloud Logging へのデフォルトのリダイレクトを無効にするには、次の操作を行います。
ホスト VM インスタンスと RDP または SSH 接続を確立します。
エージェントの構成ファイルを開きます。
Windows
%ProgramFiles%\Google\google-cloud-workload-agent\conf\configuration.json
Linux
/etc/google-cloud-workload-agent/configuration.json
log_to_cloudプロパティの値をfalseに更新します。構成ファイルを保存します。
エージェントを再起動して、この変更を有効にします。
トラブルシューティング
以降のセクションでは、Compute Workloads 用エージェントの使用に関連する一般的な問題とその原因、解決策について説明します。
認証スコープが不十分
問題: ホスト VM インスタンスのアクセス スコープを制限すると、Agent for Compute Workloads ログに IAM 権限不足のエラーが表示されることがあります。
googleapi: Error 403: Request had insufficient authentication scopes.
Details:
[
{
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"domain": "googleapis.com",
"metadata": {
"method": "google.cloud.workloadmanager.datawarehouse.v1.DataCollectService.WriteInsight",
"service": "workloadmanager.googleapis.com"
},
"reason": "ACCESS_TOKEN_SCOPE_INSUFFICIENT"
}
]
More details:
Reason: insufficientPermissions, Message: Insufficient Permission
原因: Agent for Compute Workloads では、ホスト VM インスタンスで最小限の Cloud API アクセス スコープが必要です。
解決策: この問題を解決するには、必要なアクセス スコープを有効にします。
構成ファイルを読み込めませんでした
問題: 構成ファイルに無効な値が含まれている場合、次のエラーが表示されます。
"Failed to load configuration","pid":3524,"error":"proto: (line 19:42): unknown
field "{field_name}"
解決策: この問題を解決するには、構成パラメータの詳細を使用して構成ファイルを更新します。
データ収集を初期化できませんでした
問題: エージェントのインストール後に構成ファイルが更新されないと、次のエラーが表示されます。
"Failed to initialize guest collection","pid":2112,"error":"invalid value for "user_name" "secret_name"
解決策: この問題を解決するには、構成パラメータを使用して認証情報の構成を初期化します。
次のステップ
- ワークロードの評価の詳細を確認する。