Despliegue de API de envoltorio

Oracle Blockchain Platform Digital Assets Edition puede generar API de envoltorio para todas las API de controlador en código de cadena generadas por Blockchain App Builder. Complete los siguientes pasos para desplegar el paquete de API de envoltorio en el gestor de recursos de pila y para probar las API de envoltorio mediante la recopilación Postman asociada.

Al generar un paquete de API de envoltorio mediante Blockchain App Builder, se crean dos archivos con convenciones de nomenclatura por defecto en el directorio seleccionado:

  • <ChaincodeName>WrapperAPI.zip: archivo de almacenamiento que contiene el script de Terraform necesario para desplegar las API de envoltorio en Oracle Cloud Infrastructure (OCI) Resource Manager.
  • <ChaincodeName>_WrapperAPI.postman_collection.json: recopilación de Postman utilizada para probar las API de envoltorio después del despliegue.

Para desplegar las API de envoltorio, utilice el archivo WrapperAPI.zip para crear una pila en OCI Resource Manager.

Se deben cumplir los siguientes requisitos para desplegar el paquete de API de envoltorio.

  • El paquete de API de envoltorio se debe generar mediante Blockchain App Builder.
  • El paquete debe incluir todos los valores de variable de configuración y los valores de punto final necesarios para las API de envoltorio.
  1. Conéctese a OCI.
    Abra la consola de OCI y conéctese: https://cloud.oracle.com/. Asegúrese de que está en el compartimento donde se desplegará la pila.
  2. Amplíe el menú Navegación. Seleccione Servicios para desarrolladores. En Gestor de recursos, seleccione Pilas.
    Se abre la interfaz de Resource Manager para pilas. Puede ver las pilas existentes, crear pilas y gestionar su infraestructura como código mediante configuraciones de Terraform.
  3. Haga clic en Crear pila.
  4. Configure la información de pila.
    1. En la sección Configuración de Terraform, seleccione Mi configuración.
    2. En Configuración de pila, Origen de configuración de Terraform, seleccione archivo .Zip.
    3. Haga clic en Examinar y navegue al archivo .zip de la API de envoltorio.
    4. Después de cargar el archivo .zip, asegúrese de que el nombre de pila es correcto.
    5. En la lista desplegable Versión de Terraform, seleccione v1.2 o una versión posterior. Por defecto, Resource Manager utiliza la última versión. Si selecciona una versión anterior a la v1.2, el despliegue fallará.
    6. El resto de la configuración se puede mantener como predeterminada. Haga clic en Siguiente.
  5. Configure las variables de pila.
    1. Verifique que todos los valores de variables de configuración sean precisos y que estén alineados con las variables de configuración especificadas en el paquete de API de envoltorio para cumplir los requisitos de su despliegue.
    2. En ocir_user_name, introduzca la dirección de correo electrónico asociada a su cuenta de OCI.
    3. En ocir_user_password, introduzca la contraseña, que es el token de autenticación de OCI. Puede generar este token en la sección de configuración de perfil o usuario de la consola de OCI. El token de autenticación funciona como contraseña para conectarse a Oracle Cloud Infrastructure Registry.
      Para obtener más información sobre la generación de un token de autenticación, consulte Generación de un token de autenticación.
    4. El resto de la configuración se puede mantener como predeterminada. Haga clic en Siguiente.
  6. Revise la información de la pila. Si todo es correcto, haga clic en Crear.
  7. Ejecute el plan de Terraform.
    1. En la página Detalles de la pila, haga clic en Plan para empezar a crear un plan de ejecución.
    2. Opcionalmente, configure el plan de trabajo. Puede editar el nombre por defecto o seleccionar opciones avanzadas para cambiar la versión del proveedor o ajustar la configuración.
    3. Haga clic en Plan para crear y ejecutar el trabajo de plan.
      La configuración de Terraform se analiza y se genera y ejecuta un plan de ejecución, que completa las siguientes tareas:
      • Valida el script de Terraform para asegurarse de que no hay errores de sintaxis ni de configuración.
      • Simula el proceso de creación de recursos sin realizar ningún cambio en la infraestructura real.
      • Proporciona un resumen de salida que muestra los recursos que el script creará, modificará o destruirá.
    4. Supervise el estado en la sección Trabajos de la pila. Una vez que el plan se haya completado correctamente, revise la salida para confirmar el número de recursos que se crearán y para verificar que no haya incidencias.
  8. Aplique el plan de Terraform a la pila.
    1. En la página Detalles de la pila, haga clic en Aplicar.
    2. En el panel Aplicación de Terraform, haga clic en Aplicar.
      Al aplicar el plan de Terraform, se realizan las siguientes tareas:
      • Aprovisiona todos los siguientes recursos según lo definido en el script de Terraform:
        • Red virtual en la nube (VCN)
        • Aplicaciones (Funciones de OCI)
        • Gateway de API
        • Despliegue de la API
        • Política de IAM
        • Repositorio de OCI Registry
      • Crea toda la infraestructura necesaria para las API de envoltorio.
    3. Supervise el estado de la sección Trabajos de la pila para asegurarse de que el trabajo se completa correctamente sin errores.
  9. Recupere los puntos finales de API Gateway.
    1. Una vez finalizado el trabajo de aplicación, vaya a la sección Salidas de la página Aplicar trabajo para ver los valores de salida generados.
    2. La salida devuelve un objeto JSON donde las claves representan los nombres de punto final y los valores son sus valores de punto final correspondientes:
      api_gateway_endpoints{"api_gateway_endpoint":"https://grqkdiwsugp3fp2m5z3zgpo4.apigateway.ap-mumbai-1.oci.customer-oci.com/WholesaleCBDC"}
    3. Copie el punto final. Necesita el punto final para actualizar la recopilación de Postman de API.
Prueba de API de envoltorio con Postman

Puede probar las API de envoltorio mediante Postman. Configure todas las variables de la recopilación Postman de API de envoltorio asignando los valores adecuados. Obtenga el valor api_gateway_endpoint de la salida del despliegue de pila en OCI, donde se proporcionan los puntos finales de gateway generados dinámicamente.

Después de actualizar las variables de la recopilación de Postman, puede probar las API de envoltorio. Cada solicitud de API de la recopilación incluye la carga útil necesaria específica para la API de envoltorio correspondiente.

Figura 4-1 Prueba de una recopilación de envoltorios de API con Postman


En la imagen se muestra a Postman ejecutando una API de la recopilación mediante la API de gateway generada.

La siguiente información se puede utilizar para solucionar problemas al desplegar y utilizar API de envoltorio.

No autorizado: ocir_user_name o ocir_user_password no válidos
Este error se produce cuando las credenciales de nombre de usuario o contraseña son incorrectas. Para solucionar este problema, siga estos pasos:
  1. Vaya a la sección Variables de la página Detalles de la pila.
  2. Haga clic en Editar variables para modificar los valores de nombre de usuario y contraseña.
  3. Actualice las credenciales con la información correcta.
  4. Haga clic en Aplicar para volver a desplegar la pila.
Fallo de despliegue: "denegado: los usuarios anónimos solo tienen permitido el acceso de lectura en repositorios públicos"
En ocasiones, el despliegue puede fallar con el siguiente error:
denied: Anonymous users are only allowed read access on public repos

Este es un problema intermitente que está relacionado con las operaciones de Docker en el backend de la pila. En concreto, este error se produce al intentar transferir imágenes de Docker a Oracle Cloud Infrastructure Registry sin la autenticación adecuada.

Si bien el paquete de API de envoltorio incluye un script que ejecuta el comando docker login para garantizar la autenticación adecuada antes de transferir las imágenes, este error puede seguir produciéndose de forma esporádica. Normalmente ocurre cuando el sistema no reconoce correctamente el paso de autenticación de Docker en el momento de la transferencia de imagen.

Si se produce este error, siga estos pasos para resolver el problema:

  1. Haga clic en Destruir en el gestor de recursos de pila de OCI para destruir todos los recursos creados durante el proceso de despliegue.
  2. Después de destruir los recursos, vuelva a hacer clic en Aplicar para volver a desplegar la pila. Esto dispara la creación de los recursos necesarios, incluida la autenticación de Docker adecuada.
Fallo de despliegue genérico: problemas intermitentes
El despliegue de pila puede fallar a veces debido a problemas aleatorios relacionados con Docker. Cuando esto ocurra, siga estos pasos para resolver el problema:
  1. Haga clic en Destruir para eliminar todos los recursos que se crearon durante el despliegue fallido.
  2. Una vez destruidos los recursos, vuelva a la pila y haga clic en Aplicar para volver a desplegar la pila.

Esto puede resolver problemas intermitentes y permitir un despliegue correcto.