Crear tu paquete de implementación

En esta página, se describen los pasos a fin de crear un paquete de implementación para el producto de máquina virtual (VM). Debes crear y enviar el paquete de implementación para publicar tu producto en Google Cloud Marketplace.

Una implementación es un conjunto de recursos que se crean y administran juntos, como los recursos necesarios para tu producto. Un paquete de implementación es una especificación para un conjunto de recursos que generalmente se implementan juntos, lo que optimiza el proceso de implementación de ese producto en particular.

En esta guía, usarás Deployment Manager para crear tu paquete de implementación. Deployment Manager te permite crear paquetes de implementación para tus productos de VM mediante archivos de configuración simples de YAML, JSON o ProtoText.

Determina cómo crear tu paquete de implementación

Producer Portal

Recomendamos que uses la opción de configuración guiada de Producer Portal para crear tu paquete de implementación directamente en Google Cloud Console.

La configuración guiada admite productos de VM simples, como implementaciones de VM única con reglas básicas de firewall, pero no admite algunas funciones complejas, como implementaciones con múltiples VM y campos de configuración personalizados. Si necesitas funciones que la configuración guiada no admite, puedes usar la herramienta de código abierto mpdev para crear tu paquete de implementación o personalizar un paquete existente agregándole capacidades adicionales.

Cómo cambiar entre la configuración guiada y la configuración manual

Si usas la opción de configuración guiada del portal productor y, luego, deseas cambiar de forma manual a tu paquete de implementación, puedes hacer clic en IR A LA CONFIGURACIÓN MANUAL para cambiar a la configuración manual.

Cuando realices el cambio, podrás descargar la especificación de Autogen del paquete de implementación que creaste en la configuración guiada para usarlo como base de tu configuración manual.

Portal para socios

Si tu producto es una implementación simple de una sola instancia de VM con reglas básicas de firewall, puedes crear un paquete de implementación simple directamente en Google Cloud Console.

Si tu producto es una implementación compleja, debes usar la herramienta de código abierto mpdev para crear y personalizar tu paquete de implementación con capacidades adicionales.

En la siguiente tabla, se explican las diferencias entre las implementaciones simples y complejas:

Implementación Descripción Cómo crear el paquete
Simple Instancia de VM única con reglas básicas de firewall. Google Cloud Console
Complejo Implementación compleja, ya sea de una o varias VM. La implementación puede requerir cualquiera de las siguientes capacidades:
  • Verificaciones de cuotas para CPU y GPU, de modo que los usuarios no puedan implementar tu producto si superan los requisitos de cuota.
  • Actualizaciones del establecimiento dinámico de precios en la página de Deployment Manager.
  • Compatibilidad con nubes privadas virtuales (VPC) compartidas
  • Compatibilidad con VM con múltiples tarjetas de interfaz de red.
  • Capacidad de prevenir que los usuarios seleccionen tipos de máquinas, GPU o subredes que no están disponibles en la zona que eligen.
Herramienta de mpdev

Si no sabes qué opción de implementación es mejor para tu producto, comunícate con tu Ingeniero socio de Google a fin de obtener orientación.

Antes de comenzar

  1. Asegúrate de que tu implementación no use Terraform o tenga dependencias en Terraform.

  2. Si usas la herramienta mpdev para crear tu paquete de implementación, completa los siguientes pasos:

    1. Instala la herramienta de mpdev. Para ello, sigue las instrucciones del repositorio marketplace-tools.
    2. Descarga el SDK de Google Cloud.

Crea y envía tu paquete de implementación

En la siguiente sección, se explica cómo crear tu paquete de implementación y enviarlo a Google para su revisión.

Crea el paquete de implementación con uno de los siguientes métodos:

Crear un paquete de implementación con Google Cloud Console

Para crear y enviar un paquete de implementación simple con Google Cloud Console, haz lo siguiente:

Producer Portal

  1. En Producer Portal, ve a la sección Paquete de implementación.

  2. Selecciona la Configuración guiada para soluciones simples y haz clic en CONTINUAR.

  3. En la sección Configura la especificación Autogen, junto al campo de entrada bucket de Cloud Storage, haz clic en EXPLORAR.

    Si ya creaste un bucket de Cloud Storage, selecciónalo aquí.

    Si no lo tienes, haz clic en el ícono Crea un bucket nuevo. Cuando creas un bucket nuevo, sucede lo siguiente:

    • Selecciona un nombre para el bucket.
    • Especifica las regiones en las que el bucket almacena los datos.
    • Especifica la clase de almacenamiento de tus datos.
    • Determina qué nivel de detalle aplicar a los permisos de Identity and Access Management (IAM) para los datos del bucket.
    • Define la configuración avanzada opcional, como las políticas de encriptación o retención de datos.
  4. Asegúrate de tener habilitado el control de versiones de objetos para tu bucket de Cloud Storage.

  5. Para guardar la configuración del bucket y comenzar a configurar el paquete de implementación, haz clic en CONFIGURE.

  6. En Elige la imagen de tu producto, selecciona tu imagen de VM.

    La imagen de VM que selecciones debe ser la siguiente:

    • Asociada con tu proyecto actual de Google Cloud.

    • Debe adjuntarse a la licencia correcta de su producto. Crea y adjunta esta licencia cuando creas tu imagen de VM.

  7. En Elegir el tipo de máquina, debes especificar una Zona predeterminada, Tipo de máquina mínimo y Tipo de máquina predeterminado para tu producto de VM, junto con el tamaño y tipo de su disco de arranque.

  8. En Especifica el sistema operativo, debes especificar el nombre y la versión del SO que usa tu imagen de VM, así como el número de versión de la imagen.

  9. De manera opcional, en Configura el acceso a la VM, puedes especificar las URL del sitio y de administrador, junto con un nombre de usuario y una contraseña que los usuarios puedan usar para acceder a la VM después de la implementación.

  10. De manera opcional, en Configura las herramientas de redes, puedes especificar la configuración de Reenvío de IP y configurar las reglas de Firewall.

  11. De manera opcional, en Definir pasos siguientes, puedes proporcionar instrucciones para que los usuarios de tu producto los guíen sobre cómo comenzar a usarla. Podrán ver estas instrucciones una vez que implementen tu producto.

  12. Después de completar los pasos anteriores, haz clic en GENERAR para crear tu paquete de implementación.

    Si necesitas realizar cambios adicionales en el paquete de implementación más adelante, puedes hacer clic en EDITAR para realizar cambios y, luego, en GENERAR para volver a generar el paquete de implementación con esos cambios aplicados.

    Si planeas cambiar a la configuración manual, puedes hacer clic en DESCARGAR para descargar la especificación de Autogen del paquete de implementación que creaste en la configuración guiada como base para la configuración manual.

  13. Envía el paquete de implementación para revisión en Producer Portal. Después de enviar el paquete, Google puede tardar hasta dos semanas en revisarlo y aprobarlo.

Portal para socios

  1. Ve al Portal para socios y selecciona tu producto de la lista de productos.
  2. Junto a Paquete de implementación, haz clic en Editar.
  3. Selecciona Generar un paquete y, luego, haz clic en Continuar.
  4. Selecciona tu imagen de VM mediante los menús desplegables Proyecto, luego, Imagen y Continuar.
  5. Selecciona la configuración de Tipo de máquina mínimo y Tipo de máquina predeterminado, luego, haz clic en Continuar.
  6. Agrega los siguientes pasos posteriores a la implementación que tus clientes deben seguir y, luego, haz clic en Continuar.
  7. Configura las reglas de firewall y otras opciones de red, si corresponde y, luego, haz clic en Continuar.
  8. Puedes elegir declarar un sitio o URL de administrador. Si tu producto requiere un inicio de sesión, puedes configurar los detalles de inicio de sesión cuando envíes la solución. Haz clic en Continuar.
  9. En Enumerar el contenido del paquete, selecciona el Nombre del sistema operativo y la Versión del sistema operativo del sistema operativo de la imagen de VM. Luego, puedes agregar un Nombre y una Versión para cada software adicional que se incluya como parte de tu producto. Después de enumerar todo el contenido de tu paquete, haz clic en Continuar.
  10. Después de completar los pasos anteriores, tu paquete de solución se muestra en Revisar. Puedes descargar el paquete de solución o hacer clic en Editar JSON para modificarlo manualmente. Haa clic en Guardar para guardar el paquete y volver a tu solución.

Crea un paquete de implementación con mpdev.

En esta sección, se explica cómo usar la herramienta mpdev a fin de crear un paquete de implementación y enviarlo para su revisión.

La herramienta de mpdev usa Autogen de Deployment Manager a fin de generar las plantillas de Deployment Manager para tu paquete de implementación. La herramienta genera el paquete de implementación según una especificación de Autogen que contiene las entradas de configuración para el producto de VM.

Para crear tu paquete de implementación con mpdev, sigue las siguientes instrucciones según si usas Producer Portal o el Portal para socios a fin de integrar tu producto en Google Cloud Marketplace:

Producer Portal

En un nivel alto, para generar y enviar tu paquete de implementación, debes hacer lo siguiente:

  1. Crea y configura un bucket de Cloud Storage para almacenar y administrar el acceso al paquete de implementación.
  2. Crea una especificación de Autogen que incluya los detalles de la imagen y los requisitos de implementación del producto de VM.
  3. Genera el paquete de implementación según tu especificación de Autogen y sube el paquete al bucket de Cloud Storage.
  4. Envía el paquete de implementación para revisión en Producer Portal. Después de que envíes el paquete, Google puede tardar hasta dos semanas en revisarlo y aprobarlo.

En las siguientes secciones, se explica cómo completar los pasos para generar y enviar tu paquete de implementación.

Cree su bucket de Cloud Storage

Debes crear el bucket de Cloud Storage en el mismo proyecto público de Google Cloud que usas para Producer Portal y configurarlo de las siguientes maneras:

Para crear y configurar un bucket de Cloud Storage, ejecuta los siguientes comandos de gsutil:

BUCKET_NAME=YOUR_BUCKET_NAME
gsutil mb $BUCKET_NAME
gsutil versioning set on gs://$BUCKET_NAME
gsutil iam ch "group:cloud-commerce-marketplace-onboarding@twosync-src.google.com:objectViewer" $BUCKET_NAME

En el que, YOUR_BUCKET_NAME es el nombre que proporcionas para el bucket nuevo, sujeto a los requisitos de nomenclatura.

Crea la especificación de Autogen

Para crear tu especificación de Autogen, te recomendamos que uses el single VM example del repositorio de marketplace-tools como tu especificación inicial de Autogen y, luego, personaliza la especificación con los detalles de la configuración de tu VM.

Para casos de uso más complejos, puedes configurar autocompletado en algunos entornos de desarrollo integrados (IDE) a fin de ayudar a editar y validar archivos configurations.yaml.

Para crear tu especificación de Autogen desde single VM example, haz lo siguiente:

  1. Consulta la especificación de Autogen preconfigurada de ejemplo en un directorio local:
 PACKAGE=YOUR_PACKAGE_NAME
 mpdev pkg get https://github.com/GoogleCloudPlatform/marketplace-tools.git/examples/deployment-manager/autogen/singlevm $PACKAGE

En este comando, YOUR_PACKAGE_NAME es el nombre que proporcionas para el directorio local. Por ejemplo, my-deployment-package.

  1. Para actualizar la especificación con los detalles de configuración de tu VM, modifica el archivo configurations.yaml con la siguiente información:

    • Es el nombre de tu imagen de VM.
    • ID para el proyecto público de Google Cloud que aloja la imagen de VM, que es el mismo que usas con Producer Portal.

    Si deseas conocer los pasos para actualizar la imagen de VM y los campos del proyecto de Google Cloud en el archivo configurations.yaml, consulta el archivo single VM example de README.md.

  2. Si es necesario para tu producto, personaliza los campos adicionales, como passwords, deployInput y postDeploy. Estos campos se encuentran en el campo DeploymentSpec del archivo configurations.yaml. Si quieres obtener más información sobre los campos disponibles para la personalización, consulta la documentación de referencia de Autogen.

Genera tu paquete de implementación

Después de crear y personalizar la especificación de Autogen, debes usar la especificación para generar los archivos de plantilla de Deployment Manager de tu paquete de implementación. Para almacenar el paquete, debes subirlo al bucket de Cloud Storage.

Sigue estos pasos para generar y subir tu paquete de implementación:

  1. Configura la ubicación de salida del paquete de implementación en tu bucket de Cloud Storage:

    mpdev cfg set zipPath gs://BUCKET_NAME/OBJECT
    

    Donde BUCKET_NAME es el nombre del bucket que creaste para el paquete y OBJECT es el nombre que proporcionas para el objeto de Cloud Storage, sujeto a lineamientos para asignar nombres.

  2. Genera el paquete de implementación:

    mpdev apply -f $PACKAGE/configurations.yaml
    

El paquete de implementación generado se comprime y se sube a tu bucket.

Para verificar que la plantilla esté configurada de forma correcta, puedes crear una implementación ejecutando el siguiente comando:

TMPDIR=$(mktemp -d)
unzip $PACKAGE/template.zip -d $TMPDIR
gcloud deployment-manager deployments create $PACKAGE --config $TMPDIR/test_config.yaml

Portal para socios

Crea la especificación de Autogen

Recomendamos crear tu especificación inicial de Autogen con el single VM example del repositorio de marketplace-tools. Para crear la especificación a partir de single VM example, ejecuta el siguiente comando:

mpdev pkg get https://github.com/GoogleCloudPlatform/marketplace-tools.git/examples/deployment-manager/autogen/singlevm MY_PACKAGE

Sigue los pasos que se describen en el archivo README.md en el ejemplo descargado. Estos pasos incluyen editar campos del archivo configurations.yaml que son específicos para tu producto. Después de completar estos pasos, ejecuta mpdev apply en tu configuración mpdev editada para generar tu paquete de Deployment Manager.

Para obtener documentación detallada sobre los campos de DeploymentSpec en configurations.yaml, consulta la documentación de referencia de Autogen.

También puedes ver otros parámetros de configuración de muestra en la carpeta examples.

Crea credenciales de autorización

Puedes especificar varias passwords en DeploymentSpec en configurations.yaml. Puedes recuperar contraseñas desde el servidor de metadatos de instancia y verlas en la interfaz posterior a la implementación.

Genera tu paquete de implementación

El siguiente es un comando de muestra que lee la especificación en MY_PACKAGE/configurations.yaml y genera un archivo ZIP en la ubicación especificada en MY_PACKAGE/configurations.yaml:

mpdev apply -f MY_PACKAGE/configurations.yaml

Después de crear tu paquete de implementación, sigue estas instrucciones para subir el paquete de implementación al Portal para socios.

Envía tu paquete de implementación para revisión en Producer Portal

Si usas Producer Portal a fin de crear tu ficha de producto de Google Cloud Marketplace, después de crear tu paquete de implementación, debes enviar el paquete a Producer Portal para que el equipo de Google Cloud Marketplace pueda revisar y aprobar el paquete.

Para enviar tu paquete de implementación a revisión, haz lo siguiente:

Configuración guiada

  1. En Producer Portal, ve a la sección Paquete de implementación.

  2. Para enviar el paquete de implementación a revisión en Producer Portal, haz clic en SUBMIT. Después de que envíes el paquete, Google puede tardar hasta dos semanas en revisarlo y aprobarlo.

Configuración manual

  1. Abre Producer Portal en Google Cloud Console:

    https://console.cloud.google.com/producer-portal?project=YOUR_PUBLIC_PROJECT_ID
    

    Reemplaza YOUR_PUBLIC_PROJECT_ID por el ID del proyecto público que creaste para Google Cloud Marketplace, por ejemplo, my-organization-public.

  2. En la lista de productos, haz clic en el nombre del producto.

  3. En la página Descripción general de tu producto, ve a la sección Paquete de implementación y haz clic en EDITAR.

  4. En Especifica la ubicación de tu objeto de GCS, selecciona el objeto del paquete de implementación que subiste antes.

  5. Haga clic en VALIDAR. El proceso de validación puede tardar hasta dos horas en completarse, y puedes salir de la pantalla mientras se completa.

  6. Una vez que Producer Portal haya leído correctamente tu paquete de implementación, puedes hacer clic enVISTA PREVIA DE LA IMPLEMENTACIÓN para ver cómo el cliente ve la configuración de tu VM.

  7. Cuando se complete correctamente la validación, haz clic en ENVIAR para enviar el paquete de implementación a revisión. Después de enviar el paquete, Google puede tardar hasta dos semanas en revisarlo y aprobarlo.

Paquetes de implementación desde la vista del cliente

En las siguientes secciones, se muestran los diseños de pantalla que tus clientes ven cuando implementan tu producto, para soluciones basadas en paquetes de soluciones estándar generadas de forma automática.

Vista del cliente de la implementación de un paquete

Los elementos de entrada estándar del cliente se muestran en el lado izquierdo de la siguiente captura de pantalla. Se incluyen zone (zona), machine type (tipo de máquina), disk options (opciones de disco) y networking options (opciones de red).

Si la implementación de un cliente requiere varias tarjetas de interfaz de red, puedes agregar interfaces de red adicionales mediante un clic en Agregar interfaz de red.

Para implementar tu producto, tus clientes deben completar los campos de entrada y, luego, hacer clic en Implementar.

Vista del cliente de un paquete implementado

En la siguiente imagen, se muestra cómo se muestra tu producto a los clientes después de que lo implementan de forma correcta.

Los elementos de salida estándar se muestran en el lado derecho de la siguiente captura de pantalla. Se incluyen site address (dirección del sitio), temporary admin password (contraseña de administrador temporal) y, además, instance information (información de la instancia).