Los productos de máquinas virtuales (VM) que se ofrecen a través de Google Cloud Marketplace son instancias de VM personalizadas que puedes ejecutar en Compute Engine. Consulta la documentación de Compute Engine para obtener una descripción general de los conceptos relacionados.
Algunos productos de VM en Google Cloud Marketplace admiten la implementación a través de la interfaz de línea de comandos (CLI) mediante Terraform, una herramienta de código abierto para aprovisionar y administrar la infraestructura. Para obtener más información sobre Terraform, consulta Comienza a usar Terraform.
Descripción general
En esta página, se describen los pasos para implementar productos de VM mediante la CLI con Terraform. En general, haces lo siguiente:
Visita la sección relevante de la ficha de Google Cloud Marketplace del producto.
De manera opcional, selecciona o crea la cuenta de servicio que deseas usar para la implementación de la línea de comandos.
De manera opcional, configura la suplantación de cuentas de servicio.
Configura tu entorno de
gcloud
para Terraform.Descarga el módulo o el fragmento de código de Terraform que usas para implementar el producto de VM mediante la CLI.
Usa el módulo o el fragmento de código para implementar el producto de VM.
Visitar la pestaña de implementación de la línea de comandos
Para comenzar a implementar un producto de VM a través de la CLI, sigue estos pasos:
En Cloud Marketplace, visita la página de la ficha del producto del producto de VM que deseas implementar a través de la CLI.
Haz clic en el botón Iniciar o en Implementar con la CLI para visitar la pestaña Implementación de la línea de comandos.
Selecciona o crea tu cuenta de servicio (opcional)
En la pestaña Command-line deployment, puedes elegir o crear la cuenta de servicio que deseas usar para la implementación de la línea de comandos. Si no seleccionaste o creaste una cuenta de servicio en la pestaña Implementación de la línea de comandos cuando generas el fragmento de código, debes editar de forma manual el fragmento generado de Terraform para agregar una cuenta de servicio antes de usarla. Para obtener más información sobre las cuentas de servicio, consulta Crea y administra cuentas de servicio.
Si deseas implementar un producto de VM de Cloud Marketplace a través de la CLI, la cuenta de servicio que uses debe tener la función de administrador de Compute (roles/compute.admin
) Identity and Access Management (IAM).
Si creas una cuenta de servicio nueva desde la pestaña Implementación de la línea de comandos, Google Cloud Marketplace le otorga esta función de forma automática. Si seleccionas una cuenta de servicio existente de la pestaña Implementación de línea de comandos, debes verificar que la cuenta de servicio tenga esta función.
Para seleccionar o crear tu cuenta de servicio, haz lo siguiente:
En la pestaña Implementación de línea de comandos de la ficha de Google Cloud Marketplace del producto de VM, en Configura una cuenta de servicio (opcional), haz clic en el botón Configurar.
En Cuenta de servicio que solicita permisos, puedes hacer clic en Seleccionar una cuenta de servicio existente o Crear una cuenta de servicio nueva.
Selecciona una cuenta de servicio existente
Para seleccionar una cuenta de servicio existente, sigue estos pasos:
En Selecciona una cuenta de servicio, elige la cuenta de servicio que quieres usar. La lista contiene todas las cuentas de servicio existentes que tienen el rol Administrador de Compute (
roles/compute.admin
).Si ninguna de tus cuentas de servicio existentes tiene la función de administrador de Compute (
roles/compute.admin
), la lista estará vacía. Si la lista está vacía, puedes otorgar esta función a una de tus cuentas de servicio existentes y, luego, volver a esta pestaña, o puedes optar por crear una cuenta de servicio nueva en su lugar.Haz clic en el botón Enviar.
Crear una nueva cuenta de servicio
Para crear una cuenta de servicio nueva, sigue estos pasos:
Elige un nombre para tu cuenta de servicio y agrégalo en el campo Nombre de la cuenta de servicio.
Elige un ID para tu cuenta de servicio y agrégalo en el campo ID de cuenta de servicio.
Agrega una descripción de tu cuenta de servicio en el campo Descripción de la cuenta de servicio.
Haz clic en el botón Crear cuenta de servicio.
Después de crear la cuenta de servicio, puedes seguir administrando el control de acceso de la cuenta de servicio mediante la IAM.
Configura la suplantación de cuentas de servicio (opcional)
Te recomendamos que uses robo de identidad de cuentas de servicio para administrar el acceso a tu implementación de línea de comandos. Si usas la suplantación de identidad, en lugar de crear claves de cuenta de servicio que cualquiera pueda usar para acceder a tu implementación, administras el acceso otorgando o revocando el rol de IAM Creador de tokens de cuentas de servicio (roles/iam.serviceAccountTokenCreator
) de IAM a principales específicas.
Para aprender a otorgar y revocar roles en una cuenta de servicio, consulta Administra el acceso a cuentas de servicio. Para obtener más información sobre la suplantación de cuentas de servicio, consulta Suplantación de cuentas de servicio.
Configura tu entorno de gcloud para Terraform
En la pestaña Command-line deployment, en Configurar gcloud, verás una serie de comandos. Si quieres configurar el entorno gcloud
para Terraform, puedes copiar y ejecutar los comandos proporcionados.
Descarga el módulo de Terraform
Puedes usar un módulo de Terraform incluido o un fragmento de código generado para implementar un producto de VM a través de la CLI, según cómo esté configurado el producto de VM. Si quieres verificar si usas un módulo incluido o un fragmento de código generado para implementar un producto de VM, visita la pestaña Implementación de línea de comandos de la ficha de Cloud Marketplace del producto. Si usas un módulo incluido para implementar el producto, verás el botón Download. Si usas un fragmento de código generado para implementar el producto, verás el botón Generar código.
Para descargar el módulo incluido o el fragmento de código generado, completa los siguientes pasos:
Módulo de Terraform incluido
En la pestaña Command-line deployment de la ficha del producto de VM de Cloud Marketplace, haz clic en el botón Descargar. Este descarga un archivo ZIP que contiene el módulo de Terraform que usas.
Extrae el módulo de Terraform del archivo ZIP que descargaste.
Fragmento de código generado
En la pestaña Command-line deployment de la ficha del producto de VM de Cloud Marketplace, haz clic en el botón Generar código. Esto genera un fragmento de código que puedes copiar y usar con Terraform para implementar una VM con Terraform.
Para copiar el fragmento de código generado, haz clic en Copiar en el portapapeles.
Usa el módulo incluido o el fragmento de código generado para implementar el producto de VM.
Si quieres usar el módulo incluido o el fragmento de código generado para implementar el producto de VM a través de la CLI, completa los siguientes pasos:
Módulo de Terraform incluido
En el módulo de Terraform que descargaste, ubica el archivo
README.md
.Sigue las instrucciones específicas del producto indicadas en el archivo
README.md
.Si tienes problemas, sigue las instrucciones específicas del producto y, de manera opcional, puedes intentar implementar el módulo mediante la ejecución de los siguientes comandos:
terraform init
terraform apply
Fragmento de código generado
Verifica que el fragmento de código generado incluya la cuenta de servicio que deseas usar. Si configuraste una cuenta de servicio para la implementación de la línea de comandos, la información de esa cuenta de servicio se incluye en el fragmento de código generado. Si no configuraste una cuenta de servicio, debes editar el fragmento de código generado para especificar la cuenta de servicio que deseas usar.
Crea un archivo nuevo llamado
main.tf
en la máquina en la que instalaste Terraform.Pega el fragmento de código generado, con las modificaciones que le hiciste, en el archivo
main.tf
que creaste.Ejecuta los siguientes comandos:
terraform init
terraform apply
Próximos pasos
Para obtener información sobre cómo administrar las implementaciones de CLI de productos de VM, consulta Administra implementaciones de CLI en productos de VM.