Administra tus sistemas operativos

En Compute Engine, puedes administrar los sistemas operativos que se ejecutan en tus instancias de máquina virtual (VM) si habilitas la API del servicio de configuración del SO y, luego, instalas el agente de configuración del SO.

Con la API del servicio de configuración del SO y el agente de configuración del SO, puedes acceder a una variedad de funciones que te permiten realizar las siguientes tareas en un grupo o en todo tu conjunto de instancias de VM:

Para habilitar estos servicios, completa los siguientes pasos:

  1. Habilita la API de configuración del SO en tu proyecto.
  2. Comprueba si el agente de configuración del SO está instalado en cada VM.
  3. Instala el agente de configuración del SO en cada VM si aún no está instalado.
  4. Configura los metadatos de servicio en tu proyecto o en cada VM.
  5. Inhabilita las funciones que no necesitas en tu proyecto o en cada VM (opcional).

Para ver los registros de auditoría de las operaciones de la API realizadas con la API de configuración del SO, consulta este artículo sobre cómo ver los registros de auditoría de la configuración del SO.

Antes de comenzar

Habilita la API del servicio de configuración del SO

Habilita la API de configuración del SO en tu proyecto. Para habilitar la API, ejecuta el siguiente comando:

gcloud services enable osconfig.googleapis.com

Comprueba si el agente de configuración del SO está instalado

Algunas imágenes públicas proporcionadas por Google ya tienen instalado el agente de configuración del SO. Las VM creadas con estas imágenes tienen el agente de configuración del SO ejecutándose en ellas.

El agente de configuración del SO está instalado en imágenes de Red Hat Enterprise Linux (RHEL), Debian, CentOS y Windows que tienen una fecha de compilación de v20200114 o posterior.

Linux

Para comprobar si tu VM de Linux tiene el agente instalado, ejecuta el siguiente comando:

systemctl status google-osconfig-agent

Si el agente está instalado y en ejecución, el resultado es similar al siguiente:

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

Para comprobar si tu VM de Windows tiene el agente instalado, ejecuta el siguiente comando:

PowerShell Get-Service google_osconfig_agent

Si el agente está instalado y en ejecución, el resultado es similar al siguiente:

Status   Name               DisplayName
------   ----               -----------
Running  google_osconfig... Google OSConfig Agent

Instala el agente de configuración del SO

Antes de seguir estos pasos para instalar el agente, comprueba si el agente ya se está ejecutando en tu VM.

Instala el agente de configuración del SO en cada VM. Puedes instalar el agente de configuración del SO mediante una de las siguientes opciones:

Instala el agente de forma manual

Usa esta opción para instalar el agente de configuración del SO en una VM existente.

Para instalar el agente, completa los siguientes pasos:

  1. Conéctate a la VM en la que deseas instalar el agente de configuración del SO.

  2. Instala el agente de configuración del SO.

    Windows Server

    Para instalar el agente de configuración del SO en un servidor de Windows, ejecuta el siguiente comando:

    googet -noconfirm install google-osconfig-agent

    Ubuntu

    Para instalar el agente de configuración del SO en una VM de Ubuntu, ejecuta los siguientes comandos:

    1. Configura el repositorio de Ubuntu.

      • En Ubuntu 16.04, ejecuta los siguientes comandos:

        1. Agrega el repositorio de 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. Importa la clave pública de Google Cloud.

          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
          sudo apt-key add -
      • En Ubuntu 18.04, ejecuta los siguientes comandos:

        1. Agrega el repositorio de 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. Importa la clave pública de Google Cloud.

          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
          sudo apt-key add -
    2. Instala el agente de configuración del SO.

      sudo apt-get update
      sudo apt-get install -y google-osconfig-agent
      

    Debian

    Para instalar el agente de configuración del SO en una VM de Debian, ejecuta los siguientes comandos:

    sudo apt-get update
    sudo apt-get install -y google-osconfig-agent

    Agrega el repositorio de Google Cloud y una clave pública

    Si usas una instancia de VM que no se creó a partir de una imagen proporcionada por Google o recibiste un mensaje de error que indica que no se puede encontrar el paquete, completa los siguientes pasos para agregar el repositorio de Google Cloud y, luego, importar la clave pública.

    Después de agregar el repositorio y, luego, importar la clave, puedes ejecutar los comandos para instalar el agente de configuración del SO.

    • En Debian 9 (Stretch), ejecuta los siguientes comandos:

      1. Agrega el repositorio de 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. Importa la clave pública de Google Cloud.

        curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
        sudo apt-key add -
    • En Debian 10 (Buster), ejecuta los siguientes comandos:

      1. Agrega el repositorio de 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. Importa la clave pública de Google Cloud.

        curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
        sudo apt-key add -

    RHEL y CentOS

    Para instalar el agente de configuración del SO en una VM de RHEL o CentOS, ejecuta el siguiente comando:

    sudo yum -y install google-osconfig-agent

    SLES y openSUSE:

    Para instalar el agente de configuración del SO en una VM de SLES o de openSUSE, ejecuta los siguientes comandos:

    1. Configura el repositorio de SLES.

      • En SLES 12, ejecuta el siguiente comando:

        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"
        
      • En SLES 15, ejecuta el siguiente comando:

        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. Instala el agente de configuración del SO.

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

Instala el agente mediante una secuencia de comandos de inicio

También puedes usar los comandos de instalación manual para crear una secuencia de comandos de inicio que instale el agente de configuración del SO durante la creación de la VM.

  1. Copia los comandos manuales de tu sistema operativo.
  2. Proporciona la secuencia de comandos de inicio a tu método de creación de VM.

    Por ejemplo, si usas el comando gcloud compute instances create para crear una nueva VM de Debian 9, tu comando sería similar al siguiente. Reemplaza instance-name con el nombre de tu 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. Verifica que la secuencia de comandos de inicio se complete. Para verificar si la secuencia de comandos de inicio se completa, revisa los registros o comprueba la consola en serie.

Configura los valores de metadatos

En tu proyecto o VM, configura el valor de metadatos enable-osconfig en TRUE. Cuando configuras el valor de metadatos enable-osconfig en TRUE, se habilita lo siguiente:

  • Administración del inventario del SO
  • Administración de parches de SO
  • Administración de configuración del SO

Después de configurar el valor de metadatos enable-osconfig en TRUE, puedes inhabilitar las funciones que no necesitas.

Console

Puedes aplicar los valores de metadatos en tus proyectos o VM mediante una de las siguientes opciones:

  • Opción 1: configura enable-osconfig en los metadatos de todo el proyecto para que se apliquen a todas las VM de tu proyecto.

    1. En Google Cloud Console, ve a la página Metadatos.

      Ir a la página de Metadatos

    2. Haz clic en Editar.
    3. Agrega la siguiente entrada de metadatos.

      Clave: enable-osconfig Valor: TRUE

      Para que OS Inventory Management funcione, debes configurar enable-osconfig y enable-guest-attributes.

      • Clave: enable-osconfig Valor: TRUE
      • Clave: enable-guest-attributes Valor: TRUE
    4. Haz clic en Guardar para aplicar los cambios.

  • Opción 2: configura enable-osconfig en los metadatos de VM cuando crees una instancia.

    1. En Google Cloud Console, ve a la página Instancias de VM.

      Ir a la página Instancias de VM

    2. Haz clic en Crear.
    3. En la página Crear una instancia, configura las propiedades que deseas para tu VM.
    4. Expande Administración, seguridad, discos, redes y usuario único.
    5. En la sección Metadatos, agrega las siguientes entradas de metadatos:

      Clave: enable-osconfig Valor: TRUE.

      Para que OS Inventory Management funcione, debes configurar enable-osconfig y enable-guest-attributes.

      • Clave: enable-osconfig Valor: TRUE
      • Clave: enable-guest-attributes Valor: TRUE
    6. Haz clic en Crear para crear la instancia.

  • Opción 3: configura enable-osconfig en los metadatos de una VM existente.

    1. En Google Cloud Console, ve a la página Instancias de VM.

      Ir a la página Instancias de VM

    2. Haz clic en el nombre de la VM para la que deseas configurar el valor de metadatos.
    3. En la parte superior de la página Detalles de la instancia, haz clic en Editar para modificar la configuración.
    4. En Metadatos personalizados, agrega las siguientes entradas de metadatos:

      Clave: enable-osconfig Valor: TRUE.

      Para que OS Inventory Management funcione, debes configurar enable-osconfig y enable-guest-attributes.

      • Clave: enable-osconfig Valor: TRUE
      • Clave: enable-guest-attributes Valor: TRUE
    5. Haz clic en Guardar para aplicar los cambios a la VM.

gcloud

Usa el comando project-info add-metadata o el comando instances add-metadata gcloud con la marca --metadata=enable-osconfig=TRUE.

Puedes aplicar los valores de metadatos en tus proyectos o VM mediante una de las siguientes opciones:

  • Opción 1: configura enable-osconfig en los metadatos de todo el proyecto para que se apliquen a todas las instancias del proyecto. Reemplaza project-id con el ID de tu proyecto.

    gcloud compute project-info add-metadata \
      --project project-id \
      --metadata=enable-osconfig=TRUE
    

    Para que OS Inventory Management funcione, debes configurar enable-osconfig y enable-guest-attributes.

    gcloud compute project-info add-metadata \
      --project project-id \
      --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
    
  • Opción 2: configura enable-osconfig en los metadatos de una instancia existente. Reemplaza instance-name con el nombre de tu VM.

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

    Para que OS Inventory Management funcione, debes configurar enable-osconfig y enable-guest-attributes.

    gcloud compute instances add-metadata instance-name \
      --metadata=enable-guest-attributes=TRUE,enable-osconfig=TRUE
    
  • Opción 3: configura enable-osconfig en los metadatos de la instancia cuando crees una instancia. Reemplaza instance-name con el nombre de tu VM.

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

    Para que OS Inventory Management funcione, debes configurar enable-osconfig y enable-guest-attributes.

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

API

Puedes configurar el valor de metadatos a nivel de proyecto o de instancia.

El siguiente par clave-valor es obligatorio como parte de la propiedad de metadatos:

  • Clave: enable-osconfig Valor: TRUE

Para OS Inventory Management, también agrega el siguiente par clave-valor:

  • Clave: enable-guest-attributes Valor: TRUE

Inhabilita funciones que no necesitas

Si hay funciones que tal vez no necesites, puedes inhabilitarlas si configuras los siguientes valores de metadatos: osconfig-disabled-features=feature1,feature2.

Reemplaza feature1,feature2 con cualquiera de los siguientes valores:

  • OS Inventory Management: osinventory
  • Administración de parches de SO: tasks
  • Administración de configuración del SO: guestpolicies

Puedes configurar estos valores con Google Cloud Console, la herramienta de línea de comandos de gcloud o la API de Compute Engine.

console

Puedes inhabilitar los valores de metadatos en tus proyectos o VM mediante una de las siguientes opciones:

  • Opción 1: inhabilita la función en los metadatos de todo el proyecto para que se apliquen a todas las instancias del proyecto.

    1. En Google Cloud Console, ve a la página Metadatos.

      Ir a la página de Metadatos

    2. Haz clic en Editar.
    3. Agrega la siguiente entrada de metadatos:

      Clave: osconfig-disabled-features Valor: feature1,feature2

      Por ejemplo: Clave: osconfig-disabled-features Valor: osinventory,guestpolicies

    4. Haz clic en Guardar para aplicar los cambios.

  • Opción 2: inhabilita la función en los metadatos de una VM existente.

    1. En Google Cloud Console, ve a la página Instancias de VM.

      Ir a la página Instancias de VM

    2. Haz clic en el nombre de la VM en la que deseas configurar el valor de metadatos.
    3. En la parte superior de la página Detalles de la instancia, haz clic en Editar para modificar la configuración de la VM.
    4. En Metadatos personalizados, agrega las siguientes entradas de metadatos:

      Clave: osconfig-disabled-features Valor: feature1,feature2

      Por ejemplo: Clave: osconfig-disabled-features Valor: osinventory

    5. Haz clic en Guardar para aplicar los cambios a la VM.

gcloud

Usa el comando project-info add-metadata o el comando instances add-metadata gcloud con la marca --metadata=osconfig-disabled-features.

Si inhabilitas varias funciones, la marca debe tener el formato --metadata=^:^osconfig-disabled-features=feature1,feature2. Consulta el ejemplo 2 a continuación.

Ejemplos

Ejemplo 1: para inhabilitar la administración de parches de SO a nivel del proyecto con la herramienta de línea de comandos de gcloud, ejecuta el siguiente comando. Reemplaza project-id con el ID de tu proyecto.

gcloud compute project-info add-metadata \
    --project project-id \
    --metadata=osconfig-disabled-features=tasks

Ejemplo 2: para inhabilitar la administración de configuración del SO y OS Inventory Management a nivel de proyecto con la herramienta de línea de comandos de gcloud, ejecuta el siguiente comando. Reemplaza project-id con el ID de tu proyecto.

gcloud compute project-info add-metadata \
    --project project-id \
    --metadata=^:^osconfig-disabled-features=osinventory,guestpolicies

api

Puedes configurar el valor de metadatos a nivel de proyecto o de instancia.

El siguiente par clave-valor es obligatorio como parte de la propiedad de metadatos:

  • Clave: osconfig-disabled-features
  • Valor: puede ser uno o una combinación de las siguientes marcas:
    • osinventory
    • tasks
    • guestpolicies

Actualiza el agente de configuración del SO

Para actualizar el agente de configuración del SO, debes actualizar el paquete de tu sistema operativo.

CentOS y RHEL

Para actualizar el agente en los sistemas operativos de CentOS y RHEL, ejecuta los siguientes comandos:

sudo yum update google-osconfig-agent

Debian y Ubuntu

Para actualizar el agente en los sistemas operativos de Debian y Ubuntu, ejecuta los siguientes comandos:

sudo apt-get update
sudo apt install google-osconfig-agent

Windows

Para actualizar el agente en los sistemas operativos de Windows, ejecuta el siguiente comando:

googet update google-osconfig-agent

Próximos pasos