Usar secuencias de comandos de inicio en máquinas virtuales de Linux


Una secuencia de comandos de inicio es un archivo que realiza tareas durante el proceso de inicio de una instancia de máquina virtual (VM). Las secuencias de comandos de inicio se pueden aplicar a todas las VMs de un proyecto o a una sola VM. Las secuencias de comandos de inicio especificadas por los metadatos a nivel de VM anulan las secuencias de comandos de inicio especificadas por los metadatos a nivel de proyecto. Además, las secuencias de comandos de inicio solo se ejecutan cuando hay una red disponible. En este documento se describe cómo usar secuencias de comandos de inicio en instancias de máquina virtual Linux. Para obtener información sobre cómo añadir una secuencia de comandos de inicio a nivel de proyecto, consulta gcloud compute project-info add-metadata.

En el caso de las secuencias de comandos de inicio de Linux, puedes usar un archivo bash o que no sea bash. Para usar un archivo que no sea de Bash, designa el intérprete añadiendo un #! en la parte superior del archivo. Por ejemplo, para usar una secuencia de comandos de inicio de Python 3, añade #! /usr/bin/python3 en la parte superior del archivo.

Si especificas una secuencia de comandos de inicio mediante uno de los procedimientos de este documento, Compute Engine hará lo siguiente:

  1. Copia la secuencia de comandos de inicio en la VM.

  2. Define los permisos de ejecución en la secuencia de comandos de inicio.

  3. Ejecuta la secuencia de comandos de inicio como usuario root cuando se inicia la VM.

Para obtener información sobre las distintas tareas relacionadas con las secuencias de comandos de inicio y cuándo realizar cada una, consulta la descripción general.

Antes de empezar

  • Consulta la descripción general de las secuencias de comandos de inicio.
  • Consulta información sobre el servidor de metadatos.
  • Si aún no lo has hecho, configura la autenticación. La autenticación verifica tu identidad para acceder a Google Cloud servicios y APIs. Para ejecutar código o ejemplos desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:

      gcloud init

      Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

    2. Set a default region and zone.

    REST

    Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.

      Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:

      gcloud init

      Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

    Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .

Claves de metadatos para secuencias de comandos de inicio de Linux

Una secuencia de comandos de inicio se transfiere a una VM desde una ubicación especificada por una clave de metadatos. Una clave de metadatos especifica si la secuencia de comandos de inicio se almacena localmente, en Cloud Storage o se transfiere directamente a la VM. La clave de metadatos que utilices también puede depender del tamaño de la secuencia de comandos de inicio.

En la siguiente tabla se muestran las claves de metadatos que puedes usar en las secuencias de comandos de inicio de Linux y se indica qué clave debes usar en función de la ubicación de almacenamiento y el tamaño de la secuencia de comandos de inicio.

Clave de metadatos Usar para
startup-script Transferir una secuencia de comandos de inicio de Bash o de otro tipo que esté almacenada localmente o que se haya añadido directamente y que tenga un tamaño de hasta 256 KB
startup-script-url Se pasa una secuencia de comandos de inicio de Bash o de otro tipo que está almacenada en Cloud Storage y que tiene un tamaño superior a 256 KB. La cadena que introduzcas aquí se usará tal cual para ejecutar gcloud storage. Si tu startup-script-url contiene espacios, no los sustituyas por %20 ni añadas comillas dobles ("") a la cadena startup-script-url.

Orden de ejecución de las secuencias de comandos de inicio de Linux

Puedes usar varias secuencias de comandos de inicio. Las secuencias de comandos de inicio almacenadas localmente o añadidas directamente se ejecutan antes que las secuencias de comandos de inicio almacenadas en Cloud Storage. En la siguiente tabla se muestra, en función de la clave de metadatos, el orden de ejecución de las secuencias de comandos de inicio de Linux.

Clave de metadatos Orden de ejecución
startup-script Primero durante cada inicio después del inicio inicial
startup-script-url Segundo durante cada inicio después del inicio inicial

Transferir directamente una secuencia de comandos de inicio de Linux

Puedes añadir el contenido de una secuencia de comandos de inicio directamente a una VM cuando la crees. En los siguientes procedimientos se muestra cómo crear una VM con una secuencia de comandos de inicio que instala Apache y crea una página web básica.

Consola

Transferir una secuencia de comandos de inicio de Linux directamente a una máquina virtual nueva

  1. En la Google Cloud consola, ve a la página Crear una instancia.

    Ir a Crear una instancia

  2. Para usar un sistema operativo Linux, haz lo siguiente:

    1. En el menú de navegación, haz clic en SO y almacenamiento.

    2. Haz clic en Cambiar.

    3. En el panel Disco de arranque que aparece, selecciona un sistema operativo Linux.

  3. Para añadir directamente una secuencia de comandos de inicio de Linux, haz lo siguiente:

    1. En el menú de navegación, haz clic en Opciones avanzadas.

    2. En la sección Automatización, introduce lo siguiente en el campo Secuencia de comandos de inicio:

      #! /bin/bash
      apt update
      apt -y install apache2
      cat <<EOF > /var/www/html/index.html
      <html><body><p>Linux startup script added directly.</p></body></html>
      EOF
      
  4. Opcional: Especifica otras opciones de configuración. Para obtener más información, consulta Opciones de configuración durante la creación de instancias.

  5. Para crear e iniciar la instancia, haz clic en Crear.

Transferir una secuencia de comandos de inicio de Linux directamente a una VM que ya existe

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

    Ir a instancias de VM

  2. Haz clic en el nombre de la instancia.

  3. Haz clic en Editar.

  4. En Automatización, añade el contenido de tu secuencia de comandos de inicio.

Verificar la secuencia de comandos de inicio

Una vez que se haya iniciado la instancia, consulta la IP externa en un navegador web para verificar que la secuencia de comandos de inicio ha creado el sitio web. Puede que tengas que esperar aproximadamente 1 minuto para que termine la secuencia de comandos de inicio de muestra.

gcloud

Transferir una secuencia de comandos de inicio de Linux directamente a una máquina virtual nueva

Transfiere el contenido de una secuencia de comandos de inicio directamente a una máquina virtual al crearla mediante el siguiente gcloud compute instances create comando.

gcloud compute instances create VM_NAME \
  --image-project=debian-cloud \
  --image-family=debian-10 \
  --metadata=startup-script='#! /bin/bash
  apt update
  apt -y install apache2
  cat <<EOF > /var/www/html/index.html
  <html><body><p>Linux startup script added directly.</p></body></html>
  EOF'

Sustituye VM_NAME por el nombre de la VM.

Transferir una secuencia de comandos de inicio de Linux directamente a una VM que ya existe

Añade la secuencia de comandos de inicio directamente a una VM que ya tengas con el siguiente gcloud compute instances add-metadata comando:

gcloud compute instances add-metadata VM_NAME \
    --zone=ZONE \
    --metadata=startup-script='#! /bin/bash
    apt update
    apt -y install apache2
    cat <<EOF > /var/www/html/index.html
    <html><body><p>Linux startup script added directly.</p></body></html>
    EOF'

Haz los cambios siguientes:

  • VM_NAME: el nombre de la VM

  • ZONE: la zona de la VM

Verificar la secuencia de comandos de inicio

Una vez que se haya iniciado la VM, consulta la IP externa en un navegador web para verificar que la secuencia de comandos de inicio ha creado el sitio web. Puede que tengas que esperar aproximadamente 1 minuto a que termine la secuencia de comandos de inicio de muestra.

REST

Transferir una secuencia de comandos de inicio de Linux directamente a una máquina virtual nueva

Transfiere el contenido de una secuencia de comandos de inicio directamente a una VM al crearla mediante el siguiente instances.insert método.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

{
  ...
  "networkInterfaces": [
    {
      "accessConfigs": [
        {
          "type": "ONE_TO_ONE_NAT"
        }
      ]
    }
  ],
  "metadata": {
    "items": [
      {
        "key": "startup-script",
        "value": "#! /bin/bash\napt update\napt -y install apache2\ncat <<EOF > /var/www/html/index.html\n<html><body><p>Linux startup script added directly.</p></body></html>\nEOF"
      }
    ]
  },
  ...
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que se encuentra la VM.

  • ZONE: la zona en la que se creará la VM.

Transferir una secuencia de comandos de inicio de Linux directamente a una VM que ya existe

  1. Obtén el valor de metadata.fingerprint de la VM mediante el método instances.get:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto en el que se encuentra la VM.

    • ZONE: la zona de la VM.

    • VM_NAME: el nombre de la VM.

  2. Transfiere la secuencia de comandos de inicio mediante el valor fingerprint, junto con la clave y el valor de metadatos de la secuencia de comandos de inicio, en una llamada al método instances.setMetadata:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setMetadata
    
    {
      "fingerprint": FINGERPRINT,
      "items": [
        {
          "key": "startup-script",
          "value": "#! /bin/bash\napt update\napt -y install apache2\ncat <<EOF > /var/www/html/index.html\n<html><body><p>Linux startup script added directly.</p></body></html>\nEOF"
        }
      ],
      ...
    }
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto en el que se encuentra la VM.

    • ZONE: la zona de la VM.

    • VM_NAME: el nombre de la VM.

    • FINGERPRINT: el valor metadata.fingerprint obtenido mediante el método instances.get.

Verificar la secuencia de comandos de inicio

Una vez que se haya iniciado la VM, consulta la IP externa en un navegador web para verificar que la secuencia de comandos de inicio ha creado el sitio web. Puede que tengas que esperar aproximadamente 1 minuto a que termine la secuencia de comandos de inicio de muestra.

Transferir una secuencia de comandos de inicio de Linux desde un archivo local

Puedes almacenar una secuencia de comandos de inicio en un archivo local de tu estación de trabajo y pasar el archivo local como metadatos a una VM cuando la crees. No puedes usar archivos almacenados en máquinas virtuales como secuencias de comandos de inicio.

Antes de transferir una secuencia de comandos de inicio de Linux de un archivo local a una VM, haz lo siguiente:

  1. Crea un archivo local para almacenar la secuencia de comandos de inicio.

  2. Tenga en cuenta la ruta relativa de la interfaz de línea de comandos de gcloud a la secuencia de comandos de inicio.

  3. Añade la siguiente secuencia de comandos de inicio al archivo:

    #! /bin/bash
    apt update
    apt -y install apache2
    cat <<EOF > /var/www/html/index.html
    <html><body><p>Linux startup script from a local file.</p></body></html>
    EOF
    

gcloud

Transferir una secuencia de comandos de inicio de Linux de un archivo local a una máquina virtual nueva

Crea una VM y transfiere el contenido de un archivo local para usarlo como script de inicio con el comando gcloud compute instances create con la marca --metadata-from-file.

gcloud compute instances create VM_NAME \
  --image-project=debian-cloud \
  --image-family=debian-10 \
  --metadata-from-file=startup-script=FILE_PATH

Haz los cambios siguientes:

  • VM_NAME: el nombre de la VM

  • FILE_PATH: la ruta relativa al archivo de secuencia de comandos de inicio

Transferir una secuencia de comandos de inicio de Linux de un archivo local a una VM

Para transferir una secuencia de comandos de inicio a una VM que ya tengas desde un archivo local, usa el siguiente gcloud compute instances add-metadata comando:

gcloud compute instances add-metadata VM_NAME \
  --zone=ZONE \
  --metadata-from-file startup-script=FILE_PATH

Haz los cambios siguientes:

  • VM_NAME: el nombre de la VM

  • ZONE: la zona de la VM

  • FILE_PATH: la ruta relativa al archivo de secuencia de comandos de inicio

Verificar la secuencia de comandos de inicio

Consulta la IP externa en un navegador web para verificar que la secuencia de comandos de inicio ha creado el sitio web. Es posible que tengas que esperar aproximadamente 1 minuto a que se complete la secuencia de comandos de inicio de la muestra.

Transferir una secuencia de comandos de inicio de Linux desde Cloud Storage

Puedes almacenar una secuencia de comandos de inicio en Cloud Storage y pasarla a una VM cuando la crees. Después de añadir una secuencia de comandos de inicio a Cloud Storage, tendrás una URL que podrás usar para hacer referencia a la secuencia de comandos de inicio al crear una máquina virtual.

Antes de añadir una secuencia de comandos de inicio desde un segmento de Cloud Storage, haz lo siguiente:

  1. Crea un archivo para almacenar la secuencia de comandos de inicio. En este ejemplo se usa un archivo bash (.sh).

  2. Añade lo siguiente al archivo bash, que instala Apache y crea una página web sencilla:

    #! /bin/bash
    apt update
    apt -y install apache2
    cat <<EOF > /var/www/html/index.html
    <html><body><p>Linux startup script from Cloud Storage.</p></body></html>
    EOF
    
  3. Crea un segmento de Cloud Storage.

  4. Añade el archivo al segmento de Cloud Storage.

Implicaciones para la seguridad

  • De forma predeterminada, los propietarios y editores de proyectos pueden acceder a los archivos de Cloud Storage del mismo proyecto, a menos que haya controles de acceso explícitos que lo impidan.

  • Si el segmento u objeto de Cloud Storage es menos seguro que los metadatos, existe el riesgo de que se produzca una elevación de privilegios si se modifica la secuencia de comandos de inicio y se reinicia la VM. Esto se debe a que, después de reiniciar la VM, la secuencia de comandos de inicio se ejecuta como root y, a continuación, puede usar los permisos de la cuenta de servicio vinculada para acceder a otros recursos.

Limitaciones

Consola

Transferir un script de inicio almacenado en Cloud Storage a una máquina virtual nueva

  1. En la Google Cloud consola, ve a la página Crear una instancia.

    Ir a Crear una instancia

  2. Para usar un sistema operativo Linux, haz lo siguiente:

    1. En el menú de navegación, haz clic en SO y almacenamiento.

    2. En la sección Sistema operativo y almacenamiento, haz clic en Cambiar. A continuación, selecciona un sistema operativo Linux.

  3. Para permitir que la instancia acceda al segmento de Cloud Storage que contiene la secuencia de comandos de inicio de Linux, haz lo siguiente:

    1. En el menú de navegación, haz clic en Seguridad.

    2. En la lista Cuenta de servicio, selecciona una cuenta de servicio que tenga el rol de gestión de identidades y accesos Visor de objetos de Storage (roles/storage.objectViewer) en el segmento de Cloud Storage.

  4. Para añadir una secuencia de comandos de inicio de Linux especificando un archivo en Cloud Storage, haz lo siguiente:

    1. En el menú de navegación, haz clic en Opciones avanzadas.

    2. En la sección Metadatos, haz clic en Añadir elemento. Aparecerán los campos Clave y Valor.

    3. En el campo Clave, introduce startup-script-url.

    4. En el campo Value (Valor), introduce la ubicación de Cloud Storage del archivo de secuencia de comandos de inicio con uno de los siguientes formatos:

      • URL autenticada: https://storage.googleapis.com/BUCKET/FILE
      • URI de gcloud storage: gs://BUCKET/FILE

        Haz los cambios siguientes:

      • BUCKET: el nombre del segmento que contiene el archivo de secuencia de comandos de inicio

      • FILE: el nombre del archivo de secuencia de comandos de inicio

  5. Opcional: Especifica otras opciones de configuración. Para obtener más información, consulta Opciones de configuración durante la creación de instancias.

  6. Para crear e iniciar la instancia, haz clic en Crear.

Transferir una secuencia de comandos de inicio almacenada en Cloud Storage a una VM que ya existe

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

    Ir a instancias de VM

  2. Haz clic en el nombre de la instancia.

  3. Haz clic en Editar.

  4. En Metadatos, añade los siguientes valores:

    • Clave: startup-script-url

    • Valor: la ubicación en Cloud Storage del archivo de secuencia de comandos de inicio con uno de los siguientes formatos:

      • URL autenticada: https://storage.googleapis.com/BUCKET/FILE
      • URI de gcloud storage: gs://BUCKET/FILE

Verificar la secuencia de comandos de inicio

Consulta la IP externa en un navegador web para verificar que la secuencia de comandos de inicio ha creado el sitio web. Es posible que tengas que esperar aproximadamente 1 minuto a que finalice la secuencia de comandos de inicio de la muestra.

gcloud

Transferir un script de inicio almacenado en Cloud Storage a una máquina virtual nueva

Para pasar una secuencia de comandos de inicio almacenada en Cloud Storage a una VM al crearla, usa el siguiente gcloud compute instances createcomando. Para el valor de la marca --scope, usa storage-ro para que la VM pueda acceder a Cloud Storage.

gcloud compute instances create VM_NAME \
  --image-project=debian-cloud \
  --image-family=debian-10 \
  --scopes=storage-ro \
  --metadata=startup-script-url=CLOUD_STORAGE_URL

Haz los cambios siguientes:

  • VM_NAME: el nombre de la VM.

  • CLOUD_STORAGE_URL: el valor de los metadatos. Define la ubicación del archivo de la secuencia de comandos de inicio en Cloud Storage con uno de los siguientes formatos:

    • URL autenticada: https://storage.googleapis.com/BUCKET/FILE
    • URI de gcloud storage: gs://BUCKET/FILE

Transferir una secuencia de comandos de inicio almacenada en Cloud Storage a una VM que ya existe

Para pasar una secuencia de comandos de inicio almacenada en Cloud Storage a una máquina virtual que ya tengas, usa el siguiente gcloud compute instances add-metadatacomando:

gcloud compute instances add-metadata VM_NAME \
    --zone=ZONE \
    --metadata startup-script-url=CLOUD_STORAGE_URL

Haz los cambios siguientes:

  • VM_NAME: el nombre de la VM.

  • ZONE: la zona de la VM.

  • CLOUD_STORAGE_URL: el valor de los metadatos. Define la ubicación del archivo de la secuencia de comandos de inicio en Cloud Storage con uno de los siguientes formatos:

    • URL autenticada: https://storage.googleapis.com/BUCKET/FILE
    • URI de gcloud storage: gs://BUCKET/FILE

Verificar la secuencia de comandos de inicio

Consulta la IP externa en un navegador web para verificar que la secuencia de comandos de inicio ha creado el sitio web. Es posible que tengas que esperar aproximadamente 1 minuto a que finalice la secuencia de comandos de inicio de la muestra.

REST

Transferir un script de inicio almacenado en Cloud Storage a una máquina virtual nueva

Para pasar una secuencia de comandos de inicio almacenada en Cloud Storage a una máquina virtual al crearla, usa el siguiente instances.insertmétodo. En el campo scopes, añade https://www.googleapis.com/auth/devstorage.read_only para que la VM pueda acceder a Cloud Storage.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

{
  ...
  "networkInterfaces": [
    {
      "accessConfigs": [
        {
          "type": "ONE_TO_ONE_NAT"
        }
      ]
    }
  ],
  "serviceAccounts": [
    {
      "email": "default",
      "scopes": [
        "https://www.googleapis.com/auth/devstorage.read_only"
      ]
    }
  ],
  "metadata": {
    "items": [
      {
        "key": "startup-script-url",
        "value": "CLOUD_STORAGE_URL"
      }
    ]
  },
  ...
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto.

  • ZONE: la zona en la que se creará la VM.

  • CLOUD_STORAGE_URL: el valor de los metadatos. Define la ubicación del archivo de la secuencia de comandos de inicio en Cloud Storage con uno de los siguientes formatos:

    • URL autenticada: https://storage.googleapis.com/BUCKET/FILE
    • URI de gcloud storage: gs://BUCKET/FILE

Transferir una secuencia de comandos de inicio almacenada en Cloud Storage a una VM que ya existe

  1. Obtén el valor de metadata.fingerprint de la VM mediante el método instances.get:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto

    • ZONE: la zona de la VM

    • VM_NAME: el nombre de la VM

  2. Transfiere la secuencia de comandos de inicio mediante el valor fingerprint, junto con la clave y el valor de metadatos de la secuencia de comandos de inicio, en una llamada al método instances.setMetadata:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setMetadata
    
    {
      "fingerprint": FINGERPRINT,
      "items": [
        {
            "key": "startup-script-url",
            "value": "CLOUD_STORAGE_URL"
        }
      ],
      ...
    }
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del proyecto.

    • ZONE: la zona de la VM.

    • VM_NAME: el nombre de la VM.

    • FINGERPRINT: el valor metadata.fingerprint obtenido mediante el método instances.get.

    • CLOUD_STORAGE_URL: el valor de los metadatos. Define la ubicación del archivo de la secuencia de comandos de inicio en Cloud Storage con uno de los siguientes formatos:

      • URL autenticada: https://storage.googleapis.com/BUCKET/FILE
      • URI de gcloud storage: gs://BUCKET/FILE

Verificar la secuencia de comandos de inicio

Consulta la IP externa en un navegador web para verificar que la secuencia de comandos de inicio ha creado el sitio web. Es posible que tengas que esperar aproximadamente 1 minuto a que finalice la secuencia de comandos de inicio de la muestra.

Acceder a los metadatos desde una secuencia de comandos de inicio de Linux

En una secuencia de comandos de inicio, puedes acceder a los valores de los metadatos. Por ejemplo, puedes usar el mismo script para varias máquinas virtuales y parametrizar cada script individualmente transfiriendo diferentes valores de metadatos a cada máquina virtual.

Para acceder a un valor de metadatos personalizado desde una secuencia de comandos de inicio, haz lo siguiente:

  1. Crea una secuencia de comandos de inicio que consulte el valor de una clave de metadatos. Por ejemplo, la secuencia de comandos de inicio del siguiente archivo bash (.sh) consulta el valor de la clave de metadatos foo.

    #! /bin/bash
    METADATA_VALUE=$(curl http://metadata.google.internal/computeMetadata/v1/instance/attributes/foo -H "Metadata-Flavor: Google")
    apt update
    apt -y install apache2
    cat <<EOF > /var/www/html/index.html
    <html><body><p>Accessing metadata value of foo: $METADATA_VALUE</p></body></html>
    EOF
    
  2. Define el valor de la clave de metadatos foo al crear una VM con el siguiente gcloud compute instances create comando. En este ejemplo, la secuencia de comandos de inicio se transfiere a la VM desde un archivo local.

    gcloud

    gcloud compute instances create VM_NAME \
      --image-project=debian-cloud \
      --image-family=debian-10 \
      --metadata-from-file=startup-script=FILE_PATH \
      --metadata=foo=bar
    

    Haz los cambios siguientes:

    • VM_NAME: el nombre de la VM

    • FILE_PATH: la ruta relativa al archivo de secuencia de comandos de inicio

    Para obtener más información sobre cómo especificar un par clave-valor de metadatos, consulta Configurar metadatos personalizados.

  3. En tu estación de trabajo local, consulta la IP externa en un navegador web para verificar que la secuencia de comandos de inicio muestra el valor de foo. Puede que tengas que esperar aproximadamente 1 minuto a que termine la secuencia de comandos de inicio de muestra.

Volver a ejecutar una secuencia de comandos de inicio de Linux

Para volver a ejecutar una secuencia de comandos de inicio, haz lo siguiente:

  1. Conectarse a la VM.

  2. Ejecuta el siguiente comando:

    sudo google_metadata_script_runner startup

Ver la salida de una secuencia de comandos de inicio de Linux

Para ver la salida de una secuencia de comandos de inicio de Linux, puedes hacer lo siguiente:

Siguientes pasos