オペレーティング システムの管理

Compute Engine では、OS Config サービス API を有効にして OS Config エージェントをインストールすることで、仮想マシン(VM)インスタンスで実行されているオペレーティング システムを管理できます。

OS Config サービス API と OS Config エージェントを設定すると、さまざまな機能にアクセスして、グループまたは VM インスタンス全体で次のタスクを行うことができます。

  • オンデマンド パッチとスケジュールされたパッチを適用する。詳細については、OS Patch Management をご覧ください。
  • オペレーティング システムの情報を収集して確認する。詳細については、OS Inventory Management をご覧ください。
  • ソフトウェア パッケージをインストール、削除、自動更新する。詳細については、OS Configuration Management をご覧ください。

これらのサービスを有効にするには、次の手順を行います。

  1. プロジェクトで OS Config API を有効にします。
  2. 各 VM で、OS Config エージェントがインストールされているかどうかを確認します。
  3. 各 VM にエージェントがまだインストールされていない場合は、OS Config エージェントをインストールします。
  4. プロジェクトまたは各 VM で、サービス メタデータを設定します。
  5. (省略可)プロジェクトまたは各 VM で、不要な機能を無効にします

OS Config API で実行された API オペレーションの監査ログを表示するには、OS Config 監査ログの表示をご覧ください。

始める前に

OS Config サービス API を有効にする

プロジェクトで OS Config API を有効にします。API を有効にするには、次のコマンドを実行します。

gcloud services enable osconfig.googleapis.com

OS Config エージェントがインストールされているかどうかを確認する

一部の Google 提供の公開イメージには、すでに OS Config エージェントがインストールされています。これらのイメージを使用して作成された VM では、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 エージェントをインストールする

これらの手順に従ってエージェントをインストールする前に、エージェントが 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-get update
      sudo apt-get install -y google-osconfig-agent
      

    Debian

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

    sudo apt-get update
    sudo apt-get install -y 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
        sudo rpm --import https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
        EOM"
        
      • SLES 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. 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 を作成すると、コマンドは次のようになります。instance-name は実際の VM 名に置き換えます。

    gcloud compute instances create instance-name \
       --image-family=debian-9 --image-project=debian-cloud \
       --metadata startup-script='#! /bin/bash
       sudo apt-get update
       sudo apt-get install -y google-osconfig-agent'
  3. 起動スクリプトが完了したことを確認します。起動スクリプトが完了したかどうかを確認するには、ログまたはシリアル コンソールを確認します。

メタデータ値の設定

プロジェクトまたは VM で、enable-osconfig メタデータ値を TRUE に設定します。enable-osconfig メタデータ値を TRUE に設定すると、次の機能が有効になります。

  • OS Inventory Management
  • OS Patch Management
  • OS Configuration Management

enable-osconfig メタデータ値を TRUE に設定にした後に、不要な機能を無効にできます。

Console

次のいずれかの方法で、プロジェクトまたは 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 を設定する。instance-name は実際の VM 名に置き換えます。

    gcloud compute instances add-metadata instance-name \
      --metadata=enable-osconfig=TRUE
    

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

    gcloud compute instances add-metadata instance-name \
      --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
    
  • オプション 3: インスタンスの作成時にインスタンス メタデータで enable-osconfig を設定する。instance-name は実際の VM 名に置き換えます。

    gcloud compute instances create instance-name \
      --metadata=enable-osconfig=TRUE
    

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

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

API

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

メタデータ プロパティの一部として、次の Key-Value ペアが必要です。

  • キー: enable-osconfig 値: TRUE

OS Inventory Management では、次の Key-Value ペアも追加します。

  • キー: enable-guest-attributes 値: TRUE

不要な機能を無効にする

不要な機能については、次のメタデータ値 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

次のいずれかの方法で、プロジェクトまたは 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-metadata gcloud コマンドを使用し、--metadata=osconfig-disabled-features フラグを指定します。

複数の機能を無効にする場合は、フラグの形式を --metadata=^:^osconfig-disabled-features=feature1,feature2 にする必要があります。次の例 2 をご覧ください。

例 1 gcloud コマンドライン ツールを使用してプロジェクト レベルで 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

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

メタデータ プロパティの一部として、次の 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-get update
sudo apt install google-osconfig-agent

SLES

SLES でエージェントを更新するには、次のコマンドを実行します。

sudo zypper -n update google-osconfig-agent

Windows

Windows オペレーティング システムでエージェントを更新するには、次のコマンドを実行します。

googet update google-osconfig-agent

次のステップ