VM Manager の設定

Compute Engine では、VM Manager を使用して、仮想マシン(VM)で実行されているオペレーティング システムを管理できます。

VM Manager を使用するために必要な VM の設定手順については、設定の概要をご覧ください。

VM Manager を設定すると、OS Config API で実行される API オペレーションの監査ログを表示できます。詳しくは、VM Manager の監査ログの表示をご覧ください。

始める前に

設定の概要

VM Manager を設定するには、次の手順を行います。

  1. Google Cloud プロジェクトで OS Config API を有効にします。

  2. プロジェクトまたはインスタンスのメタデータを設定して、OS Config エージェントを有効にします。インスタンス メタデータは、各 VM に対して設定することも、プロジェクト内のすべての VM に適用されるプロジェクト メタデータに設定することもできます。

  3. VM がプライベート VPC ネットワーク内で実行されていて、公共インターネット アクセスがない場合は、限定公開の Google アクセスを有効にします。

  4. 各 VM で、有効なサービス アカウントがあることを確認します。gcloud コマンドライン ツールまたは Google Cloud Console を使用して作成された VM では、サービス アカウントがデフォルトで有効になります。

  5. 各 VM で、OS Config エージェントがインストールされているかどうかを確認します。

  6. 各 VM にエージェントがまだインストールされていない場合は、OS Config エージェントをインストールします。

  7. 省略可。プロジェクトまたは各 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 エージェントをインストールできます。

エージェントを手動でインストールする

この方法を使用して、OS Config エージェントを既存の VM にインストールします。

エージェントのインストール手順は次のとおりです。

  1. OS Config エージェントをインストールする VM に接続します。

  2. OS Config エージェントをインストールします。

    Windows Server

    Windows サーバーに OS Config エージェントをインストールするには、次のコマンドを実行します。

    googet -noconfirm install google-osconfig-agent
    

    Ubuntu

    Ubuntu VM に OS Config エージェントをインストールするには、次のコマンドを実行します。

    1. Ubuntu リポジトリを設定します。

      • Ubuntu 16.04 の場合は、次のコマンドを実行します。

        1. 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"
          
        2. Google Cloud の公開鍵をインポートします。

          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
          sudo apt-key add -
          
      • Ubuntu 18.04 以降のバージョンでは、次のコマンドを実行します。

        1. 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"
          
        2. Google Cloud の公開鍵をインポートします。

          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
          sudo apt-key add -
          
    2. 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)の場合は、次のコマンドを実行します。

      1. 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"
        
      2. Google Cloud の公開鍵をインポートします。

        curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
        sudo apt-key add -
        
    • Debian 10(Buster)の場合は、次のコマンドを実行します。

      1. 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"
        
      2. 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 エージェントをインストールするには、次のコマンドを実行します。

    1. 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"
        
        
    2. 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
      
    3. OS Config エージェントをインストールします。

      sudo zypper -n --gpg-auto-import-keys install google-osconfig-agent
      

起動スクリプトによるエージェントのインストール

手動のインストール コマンドを使用して、VM の作成中に OS Config エージェントをインストールする起動スクリプトを作成できます。

  1. ご使用のオペレーティング システム用の手動インストール コマンドをコピーします。
  2. 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'
  3. 起動スクリプトが完了したことを確認します。起動スクリプトが完了したかどうかを確認するには、ログまたはシリアル コンソールを確認します。

メタデータ値の設定

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 に適用する。

    1. Google Cloud Console で、[メタデータ] ページに移動します。

      [メタデータ] ページに移動

    2. [編集] をクリックします。

    3. 次のメタデータ エントリを追加します。

      キー: enable-osconfig
      値: TRUE

      OS Inventory Management を機能させるには、enable-osconfigenable-guest-attributes の両方を設定する必要があります。

      • キー: enable-osconfig
        値: TRUE
      • キー: enable-guest-attributes
        値: TRUE
    4. [保存] をクリックして変更を適用します。

  • オプション 2: インスタンスの作成時に VM メタデータで enable-osconfig を設定する。

    1. Google Cloud Console で、[VM インスタンス] ページに移動します。

      [VM インスタンス] ページに移動

    2. [作成] をクリックします。

    3. [インスタンスの作成] ページで、VM に必要なプロパティを設定します。

    4. [管理、セキュリティ、ディスク、ネットワーク、単一テナンシー] を展開します。

    5. [メタデータ] セクションで、次のメタデータ エントリを追加します。

      キー: enable-osconfig
      値: TRUE

      OS Inventory Management を機能させるには、enable-osconfigenable-guest-attributes の両方を設定する必要があります。

      • キー: enable-osconfig
        値: TRUE
      • キー: enable-guest-attributes
        値: TRUE
    6. [作成] をクリックしてインスタンスを作成します。

  • オプション 3: 既存の VM のメタデータに enable-osconfig を設定する。

    1. Google Cloud Console で、[VM インスタンス] ページに移動します。

      [VM インスタンス] ページに移動

    2. メタデータ値を設定する VM の名前をクリックします。

    3. [インスタンスの詳細] ページで、[編集] をクリックして設定を編集します。

    4. [カスタム メタデータ] の下に、次のメタデータ エントリを追加します。

      キー: enable-osconfig
      値: TRUE

      OS Inventory Management を機能させるには、enable-osconfigenable-guest-attributes の両方を設定する必要があります。

      • キー: enable-osconfig
        値: TRUE
      • キー: enable-guest-attributes
        値: TRUE
    5. [保存] をクリックして、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-osconfigenable-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-osconfigenable-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-osconfigenable-guest-attributes の両方を設定する必要があります。

    gcloud compute instances create VM_NAME \
      --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
    

API

メタデータ値は、Cloud プロジェクト レベルまたはインスタンス レベルで設定できます。

メタデータ プロパティの一部として、次の 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: プロジェクト全体のメタデータの機能を無効にして、プロジェクト内のすべてのインスタンスに適用する。

    1. Google Cloud Console で、[メタデータ] ページに移動します。

      [メタデータ] ページに移動

    2. [編集] をクリックします。

    3. 次のメタデータ エントリを追加します。

      キー: osconfig-disabled-features
      値: FEATURE1,FEATURE2

      例:
      キー: osconfig-disabled-features
      値: osinventory,guestpolicies

    4. [保存] をクリックして変更を適用します。

  • オプション 2: 既存の VM のメタデータで機能を無効にする。

    1. Google Cloud Console で、[VM インスタンス] ページに移動します。

      [VM インスタンス] ページに移動

    2. メタデータ値を設定する VM の名前をクリックします。

    3. [インスタンスの詳細] ページで、[編集] をクリックして VM 設定を編集します。

    4. [カスタム メタデータ] の下に、次のメタデータ エントリを追加します。

      キー: osconfig-disabled-features
      値: FEATURE1,FEATURE2

      例:
      キー: osconfig-disabled-features
      値: osinventory

    5. [保存] をクリックして、VM に変更を適用します。

gcloud

project-info add-metadata または instances add-metadatagcloud コマンドを使用して、--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 プロジェクト レベルまたはインスタンス レベルで設定できます。

メタデータ プロパティの一部として、次の 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

次のステップ