Compute Engine では、VM Manager を使用して、仮想マシン(VM)で実行されているオペレーティング システムを管理できます。
VM Manager を使用するために必要な VM の設定手順については、設定の概要をご覧ください。
VM Manager を設定すると、OS Config API で実行される API オペレーションの監査ログを表示できます。詳しくは、VM Manager の監査ログの表示をご覧ください。
始める前に
- このガイドのコマンドラインの例を使用する場合、以下を行ってください。
- gcloud コマンドライン ツールの最新バージョンをインストールするか、最新バージョンに更新します。
- デフォルトのリージョンとゾーンを設定します。
- このガイドの API の例を使用する場合、API アクセスを設定します。
設定の概要
VM Manager を設定するには、次の手順を行います。
Google Cloud プロジェクトで OS Config API を有効にします。
プロジェクトまたはインスタンスのメタデータを設定して、OS Config エージェントを有効にします。インスタンス メタデータは、各 VM に対して設定することも、プロジェクト内のすべての VM に適用されるプロジェクト メタデータに設定することもできます。
VM がプライベート VPC ネットワーク内で実行されていて、公共インターネット アクセスがない場合は、限定公開の Google アクセスを有効にします。
各 VM で、有効なサービス アカウントがあることを確認します。
gcloud
コマンドライン ツールまたは Google Cloud Console を使用して作成された VM では、サービス アカウントがデフォルトで有効になります。このサービス アカウントに IAM のロールを付与する必要はありません。各 VM で、OS Config エージェントがインストールされているかどうかを確認します。
各 VM にエージェントがまだインストールされていない場合は、OS Config エージェントをインストールします。
省略可。プロジェクトまたは各 VM で、不要な機能を無効にします。
OS Config サービス API を有効にする
Cloud プロジェクトで OS Config API を有効にします。API を有効にするには、次のコマンドを実行します。
gcloud services enable osconfig.googleapis.com
OS Config エージェントがインストールされているかどうかを確認する
OS Config エージェントは、ビルド日付が v20200114
以降の Red Hat Enterprise Linux(RHEL)、Debian、CentOS、Windows イメージにデフォルトでインストールされています。
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
Windows
Windows VM にエージェントがインストールされているかどうかを確認するには、次のコマンドを実行します。
PowerShell Get-Service google_osconfig_agent
エージェントがインストールされ、実行されている場合、出力は次のようになります。
Status Name DisplayName ------ ---- ----------- Running google_osconfig... Google OSConfig Agent
OS Config エージェントをインストールする
これらの手順でエージェントをインストールする前に、エージェントが VM ですでに実行されているかどうかを確認します。
各 VM に OS Config エージェントをインストールします。次のいずれかの方法で OS Config エージェントをインストールできます。
- ターミナルから手動でエージェントをインストールする。
- VM で起動スクリプトを使用する。
エージェントを手動でインストールする
この方法を使用して、OS Config エージェントを既存の VM にインストールします。
エージェントのインストール手順は次のとおりです。
OS Config エージェントをインストールする VM に接続します。
OS Config エージェントをインストールします。
Windows Server
Windows サーバーに OS Config エージェントをインストールするには、次のコマンドを実行します。
googet -noconfirm install google-osconfig-agent
Ubuntu
Ubuntu VM に OS Config エージェントをインストールするには、次のコマンドを実行します。
Ubuntu リポジトリを設定します。
Ubuntu 16.04 の場合は、次のコマンドを実行します。
Ubuntu リポジトリを追加します。
sudo su -c "echo 'deb http://packages.cloud.google.com/apt google-compute-engine-xenial-stable main'> \ /etc/apt/sources.list.d/google-compute-engine.list"
Google Cloud の公開鍵をインポートします。
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \ sudo apt-key add -
Ubuntu 18.04 以降のバージョンでは、次のコマンドを実行します。
Ubuntu リポジトリを追加します。
sudo su -c "echo 'deb http://packages.cloud.google.com/apt google-compute-engine-bionic-stable main' > \ /etc/apt/sources.list.d/google-compute-engine.list"
Google Cloud の公開鍵をインポートします。
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \ sudo apt-key add -
OS Config エージェントをインストールします。
sudo apt update sudo apt -y install google-osconfig-agent
Debian
Debian VM に OS Config エージェントをインストールするには、次のコマンドを実行します。
sudo apt update sudo apt -y install google-osconfig-agent
Google Cloud リポジトリと公開鍵の追加
Google 提供のイメージから作成されていない VM インスタンスを使用している場合や、「パッケージが見つかりません」というエラー メッセージが表示される場合は、次の手順で、Google Cloud リポジトリを追加し、公開鍵をインポートします。
リポジトリを追加して鍵をインポートしたら、コマンドを実行して OS Config エージェントをインストールできます。
Debian 9(Stretch)の場合は、次のコマンドを実行します。
Debian リポジトリを追加します。
sudo su -c "echo 'deb http://packages.cloud.google.com/apt \ google-compute-engine-stretch-stable main'> /etc/apt/sources.list.d/google-compute-engine.list"
Google Cloud の公開鍵をインポートします。
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \ sudo apt-key add -
Debian 10(Buster)の場合は、次のコマンドを実行します。
Debian リポジトリを追加します。
sudo su -c "echo 'deb http://packages.cloud.google.com/apt \ google-compute-engine-buster-stable main'> /etc/apt/sources.list.d/google-compute-engine.list"
Google Cloud の公開鍵をインポートします。
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \ sudo apt-key add -
RHEL / CentOS
RHEL または CentOS VM に OS Config エージェントをインストールするには、次のコマンドを実行します。
sudo yum -y install google-osconfig-agent
SLES / openSUSE
SLES または openSUSE VM に OS Config エージェントをインストールするには、次のコマンドを実行します。
SLES リポジトリを設定します。
SLES 12 の場合は、次のコマンドを実行します。
sudo su -c "cat > /etc/zypp/repos.d/google-compute-engine.repo <<EOM [google-compute-engine] name=Google Compute Engine baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-sles12-stable enabled=1 gpgcheck=1 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"
SLES 15 と OpenSUSE 15 の場合は、次のコマンドを実行します。
sudo su -c "cat > /etc/zypp/repos.d/google-compute-engine.repo <<EOM [google-compute-engine] name=Google Compute Engine baseurl=https://packages.cloud.google.com/yum/repos/google-compute-engine-sles15-stable enabled=1 gpgcheck=1 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"
Google Cloud の GPG 鍵をインポートします。
sudo rpm --import https://packages.cloud.google.com/yum/doc/yum-key.gpg \ --import https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
OS Config エージェントをインストールします。
sudo zypper -n --gpg-auto-import-keys install google-osconfig-agent
起動スクリプトによるエージェントのインストール
手動のインストール コマンドを使用して、VM の作成中に OS Config エージェントをインストールする起動スクリプトを作成できます。
- ご使用のオペレーティング システム用の手動インストール コマンドをコピーします。
VM 作成メソッドに起動スクリプトを追加します。
たとえば、
gcloud compute instances create
コマンドを使用して新しい Debian 9 VM を作成する場合、コマンドは次のようになります。VM_NAME
は実際の VM 名に置き換えます。gcloud compute instances create VM_NAME \ --image-family=debian-9 --image-project=debian-cloud \ --metadata startup-script='#! /bin/bash sudo apt update sudo apt -y install google-osconfig-agent'
起動スクリプトが完了したことを確認します。起動スクリプトが完了したかどうかを確認するには、ログまたはシリアル コンソールを確認します。
メタデータ値の設定
Cloud プロジェクトまたは VM で、enable-osconfig
メタデータ値を TRUE
に設定します。enable-osconfig
メタデータ値を TRUE
に設定すると、次の機能が有効になります。
- OS Inventory Management
- OS Patch Management
- OS Configuration Management
enable-osconfig
メタデータ値を TRUE
に設定にした後に、不要な機能を無効にできます。
Console
次のいずれかの方法で、Cloud プロジェクトまたは VM にメタデータ値を適用できます。
オプション 1: プロジェクト全体のメタデータに
enable-osconfig
を設定して、プロジェクト内のすべての VM に適用する。Google Cloud Console で、[メタデータ] ページに移動します。
[編集] をクリックします。
次のメタデータ エントリを追加します。
キー:
enable-osconfig
値:TRUE
OS Inventory Management を機能させるには、
enable-osconfig
とenable-guest-attributes
の両方を設定する必要があります。- キー:
enable-osconfig
値:TRUE
- キー:
enable-guest-attributes
値:TRUE
- キー:
[保存] をクリックして変更を適用します。
オプション 2: インスタンスの作成時に VM メタデータで
enable-osconfig
を設定する。Google Cloud Console で、[VM インスタンス] ページに移動します。
[作成] をクリックします。
[インスタンスの作成] ページで、VM に必要なプロパティを設定します。
[管理、セキュリティ、ディスク、ネットワーク、単一テナンシー] を展開します。
[メタデータ] セクションで、次のメタデータ エントリを追加します。
キー:
enable-osconfig
値:TRUE
。OS Inventory Management を機能させるには、
enable-osconfig
とenable-guest-attributes
の両方を設定する必要があります。- キー:
enable-osconfig
値:TRUE
- キー:
enable-guest-attributes
値:TRUE
- キー:
[作成] をクリックしてインスタンスを作成します。
オプション 3: 既存の VM のメタデータに
enable-osconfig
を設定する。Google Cloud Console で、[VM インスタンス] ページに移動します。
メタデータ値を設定する VM の名前をクリックします。
[インスタンスの詳細] ページで、[編集] をクリックして設定を編集します。
[カスタム メタデータ] の下に、次のメタデータ エントリを追加します。
キー:
enable-osconfig
値:TRUE
。OS Inventory Management を機能させるには、
enable-osconfig
とenable-guest-attributes
の両方を設定する必要があります。- キー:
enable-osconfig
値:TRUE
- キー:
enable-guest-attributes
値:TRUE
- キー:
[保存] をクリックして、VM に変更を適用します。
gcloud
project-info add-metadata
または instances add-metadata
gcloud
コマンドを使用して、--metadata=enable-osconfig=TRUE
フラグを指定します。
次のいずれかの方法で、プロジェクトまたは VM にメタデータ値を適用できます。
オプション 1: プロジェクト全体のメタデータに
enable-osconfig
を設定して、プロジェクト内のすべてのインスタンスに適用する。PROJECT_ID
は実際のプロジェクト ID に置き換えます。gcloud compute project-info add-metadata \ --project PROJECT_ID \ --metadata=enable-osconfig=TRUE
OS Inventory Management を機能させるには、
enable-osconfig
とenable-guest-attributes
の両方を設定する必要があります。gcloud compute project-info add-metadata \ --project PROJECT_ID \ --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
オプション 2: 既存のインスタンスのメタデータに
enable-osconfig
を設定する。VM_NAME
は実際の VM 名に置き換えます。gcloud compute instances add-metadata VM_NAME \ --metadata=enable-osconfig=TRUE
OS Inventory Management を機能させるには、
enable-osconfig
とenable-guest-attributes
の両方を設定する必要があります。gcloud compute instances add-metadata VM_NAME \ --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
オプション 3: インスタンスの作成時にインスタンス メタデータで
enable-osconfig
を設定する。VM_NAME
は実際の VM 名に置き換えます。gcloud compute instances create VM_NAME \ --metadata=enable-osconfig=TRUE
OS Inventory Management を機能させるには、
enable-osconfig
とenable-guest-attributes
の両方を設定する必要があります。gcloud compute instances create VM_NAME \ --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
API
メタデータ値は、Cloud プロジェクト レベルまたはインスタンス レベルで設定できます。
- プロジェクト全体のメタデータを設定する方法については、プロジェクト全体のカスタム メタデータの設定で API の手順をご覧ください。
- インスタンスのメタデータを設定する方法については、インスタンス メタデータの設定で API の手順をご覧ください。
メタデータ プロパティの一部として、次の Key-Value ペアが必要です。
- キー:
enable-osconfig
値:TRUE
OS Inventory Management では、次の Key-Value ペアも追加します。
- キー:
enable-guest-attributes
値:TRUE
OS Config エージェントがインストールされているかどうかを確認する
OS Config エージェントは、ビルド日付が v20200114
以降の Red Hat Enterprise Linux(RHEL)、Debian、CentOS、Windows イメージにデフォルトでインストールされています。
Linux
Linux VM にエージェントがインストールされているかどうかを確認するには、次のコマンドを実行します。
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
Windows
Windows VM にエージェントがインストールされているかどうかを確認するには、次のコマンドを実行します。
PowerShell Get-Service google_osconfig_agent
エージェントがインストールされ、実行されている場合、出力は次のようになります。
Status Name DisplayName ------ ---- ----------- Running google_osconfig... Google OSConfig Agent
アクティブな OS Config エージェントとは
OS Config エージェントがアクティブで課金対象とみなされるには、次の要件をすべて満たしている必要があります。
- VM Manager が設定されている。
VM が
RUNNING
状態で、OS Config エージェントが OS Config サービスと通信を行っている。VM が停止、一時停止、ネットワークから切断されている場合、その VM のエージェントはアクティブなエージェントとしてカウントされません。
不要な機能を無効にする
不要な機能については、次のメタデータ値 osconfig-disabled-features=FEATURE1,FEATURE2
を設定して無効にできます。
FEATURE1,FEATURE2
を次のいずれかの値に置き換えます。
- OS Inventory Management:
osinventory
- OS Patch Management:
tasks
- OS Configuration Management:
guestpolicies
これらの値は、Google Cloud Console、gcloud
コマンドライン ツール、Compute Engine API のいずれかを使用して設定できます。
Console
次のいずれかの方法で、Cloud プロジェクトまたは VM のメタデータ値を無効にできます。
オプション 1: プロジェクト全体のメタデータの機能を無効にして、プロジェクト内のすべてのインスタンスに適用する。
Google Cloud Console で、[メタデータ] ページに移動します。
[編集] をクリックします。
次のメタデータ エントリを追加します。
キー:
osconfig-disabled-features
値:FEATURE1,FEATURE2
例:
キー:osconfig-disabled-features
値:osinventory,guestpolicies
[保存] をクリックして変更を適用します。
オプション 2: 既存の VM のメタデータで機能を無効にする。
Google Cloud Console で、[VM インスタンス] ページに移動します。
メタデータ値を設定する VM の名前をクリックします。
[インスタンスの詳細] ページで、[編集] をクリックして VM 設定を編集します。
[カスタム メタデータ] の下に、次のメタデータ エントリを追加します。
キー:
osconfig-disabled-features
値:FEATURE1,FEATURE2
例:
キー:osconfig-disabled-features
値:osinventory
[保存] をクリックして、VM に変更を適用します。
gcloud
project-info add-metadata
または instances add-metadata
gcloud
コマンドを使用して、--metadata=osconfig-disabled-features
フラグを指定します。
複数の機能を無効にする場合は、フラグの形式を --metadata=^:^osconfig-disabled-features=FEATURE1,FEATURE2
にする必要があります。例 2 をご覧ください。
例
例 1 gcloud
コマンドライン ツールを使用して Cloud プロジェクト レベルで OS Patch Management を無効にするには、次のコマンドを実行します。PROJECT_ID
は実際のプロジェクト ID に置き換えます。
gcloud compute project-info add-metadata \ --project PROJECT_ID \ --metadata=osconfig-disabled-features=tasks
例 2 gcloud
コマンドライン ツールを使用してプロジェクト レベルで OS Configuration Management と OS Inventory Management を無効にするには、次のコマンドを実行します。PROJECT_ID
は実際のプロジェクト ID に置き換えます。
gcloud compute project-info add-metadata \ --project PROJECT_ID \ --metadata=^:^osconfig-disabled-features=osinventory,guestpolicies
API
メタデータ値は、Cloud プロジェクト レベルまたはインスタンス レベルで設定できます。
- プロジェクト全体のメタデータを設定する方法については、プロジェクト全体のカスタム メタデータの設定で API の手順をご覧ください。
- インスタンスのメタデータを設定する方法については、インスタンス メタデータの設定で API の手順をご覧ください。
メタデータ プロパティの一部として、次の Key-Value ペアが必要です。
- キー:
osconfig-disabled-features
- 値: 次のフラグのいずれかまたは組み合わせを指定できます。
osinventory
tasks
guestpolicies
OS Config エージェントを更新する
OS Config エージェントを更新するには、オペレーティング システムのパッケージを更新する必要があります。
CentOS / RHEL
CentOS および RHEL オペレーティング システムでエージェントを更新するには、次のコマンドを実行します。
sudo yum update google-osconfig-agent
Debian / Ubuntu
Debian および Ubuntu オペレーティング システムでエージェントを更新するには、次のコマンドを実行します。
sudo apt update sudo apt install google-osconfig-agent
SLES
SLES でエージェントを更新するには、次のコマンドを実行します。
sudo zypper -n update google-osconfig-agent
Windows
Windows オペレーティング システムでエージェントを更新するには、次のコマンドを実行します。
googet update google-osconfig-agent
次のステップ
- ゲストポリシーを作成する。
- オペレーティング システムの詳細を表示する。
- パッチジョブを作成する。
- VM Manager について学習する。