Crear y desplegar un proxy de APIs

Ahora que has configurado Google Cloud y la interfaz de usuario híbrida, y has instalado y configurado el tiempo de ejecución, puedes ver cómo funciona todo junto.

En esta sección se explica lo siguiente:

  1. Crea un proxy de APIs en la interfaz de usuario de Apigee con el Asistente para proxies de APIs.
  2. Despliega tu nuevo proxy en tu clúster con la interfaz de usuario

1. Crear un proxy de API con la interfaz de usuario híbrida

En esta sección se describe cómo crear un proxy de API en la interfaz de usuario mediante el asistente de proxy de API.

Para crear un proxy de API sencillo con el asistente de proxy de API, sigue estos pasos:

  1. Abre la interfaz de Apigee en un navegador.
  2. Selecciona Desarrollar > Proxies de API en la vista principal.
  3. En la lista desplegable Entorno, selecciona el entorno en el que quieras crear un proxy de API. En esta sección se da por supuesto que el nombre del entorno es "test". Has creado al menos un entorno en el paso 5: Añade un entorno.

    La interfaz de usuario híbrida muestra una lista de proxies de API de ese entorno. Si aún no has creado ningún proxy, la lista estará vacía.

  4. En la parte superior derecha, haz clic en +Proxy. Se inicia el asistente de proxy de API.
  5. Seleccione Proxy inverso (la opción más habitual) y haga clic en Siguiente.

    Se muestra la vista Detalles del proxy.

  6. Configura tu proxy con los siguientes ajustes:
    • Nombre del proxy: escriba "myproxy". En los pasos restantes de esta sección se da por supuesto que este es el ID de tu proxy.
    • Ruta base del proxy: se define automáticamente como "/myproxy". La ruta base del proxy forma parte de la URL que se usa para enviar solicitudes a tu API. Edge usa la URL para hacer coincidir y enrutar las solicitudes entrantes al proxy de API adecuado.
    • (Opcional) Descripción: escribe una descripción para tu nuevo proxy de API, como "Prueba de Apigee hybrid con un proxy sencillo".
    • Destino (API actual): introduce "https://mocktarget.apigee.net". Define la URL de destino que invoca Apigee en una solicitud al proxy de API. El servicio mocktarget está alojado en Apigee y devuelve datos sencillos. No requiere ninguna clave de API ni token de acceso.

    Los detalles de tu proxy de API deberían ser similares a los siguientes:

  7. Haz clic en Siguiente.
  8. En la pantalla Políticas, selecciona Transferencia (sin autorización) como opción de seguridad.
  9. Haz clic en Siguiente.
  10. En la pantalla Resumen, haz clic en Crear.

    Hybrid genera el proxy (a veces denominado paquete de proxy):

  11. Haz clic en Ir a la lista de proxies.

    Híbrido muestra la vista Proxies (Proxies), que muestra una lista de proxies de API. El nuevo proxy debería estar en la parte superior de la lista, con un indicador de estado gris, lo que significa que aún no se ha implementado.

2. Desplegar el proxy en el clúster mediante la interfaz de usuario híbrida

Después de crear un proxy, debes implementarlo para poder probarlo. En esta sección se describe cómo implementar el nuevo proxy mediante la interfaz de usuario híbrida.

Para desplegar un proxy de API en la interfaz de usuario híbrida, sigue estos pasos:

  1. En la interfaz de usuario híbrida, selecciona Desarrollar > Proxies de API.

    Asegúrate de que esté seleccionado el entorno de prueba.

    La interfaz de usuario muestra el nuevo proxy en la lista de proxies:

  2. Haz clic en el proxy "myproxy".

    En la interfaz de usuario se muestra la pestaña Información general de los proxies de API de ese proxy.

    En Implementaciones, la columna Revisión muestra el valor "No implementado".

  3. En la columna Revisión, despliega el selector para elegir la revisión que quieras implementar.

    En la lista desplegable solo se muestran las opciones "1" y "Undeploy".

  4. En la lista desplegable, selecciona "1", la revisión que quieras implementar.

    La interfaz de usuario te pedirá que confirmes la implementación:

  5. Haz clic en Desplegar.

    La interfaz de usuario inicia el proceso de implementación de la revisión 1 de tu nuevo proxy en el clúster.

    Ten en cuenta que la implementación no es un proceso instantáneo. El modelo de implementación "eventualmente coherente" de Hybrid significa que una nueva implementación se lanzará en el clúster durante un breve periodo y no inmediatamente.

Aunque hay varias formas de comprobar el estado de implementación de un proxy en la interfaz de usuario, en los dos pasos siguientes se explica cómo llamar al proxy de API que acabas de implementar y cómo comprobar el estado de implementación con una llamada a las APIs de Apigee.

3. Llamar al proxy de API

Sigue los pasos que se indican a continuación, en función de si puedes o no actualizar el registro DNS del nombre de host que has usado para crear el grupo de entornos.

Si no puedes actualizar el DNS de tu nombre de host

Sigue estos pasos si el nombre de host de tu grupo de entornos no está registrado o no puedes actualizar su registro DNS. En estos pasos, obtienes la IP de entrada y la usas directamente en una llamada cURL con la marca --resolve:

  1. Exporta la IP de entrada:
    export INGRESS_IP=$(kubectl -n istio-system get service \
      istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
  2. Exporta el número de puerto de entrada seguro:
    export SECURE_INGRESS_PORT=$(kubectl -n istio-system get \
      service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="https")].port}')
  3. Exporta el alias de host de tu grupo de entornos a una variable:
    export HOSTALIAS=your_host_alias
  4. Llama al proxy de API. La marca --resolve en cURL te permite especificar directamente la IP de entrada:
    curl  -H Host:$HOSTALIAS --resolve \
      $HOSTALIAS:$SECURE_INGRESS_PORT:$INGRESS_IP  \
      https://$HOSTALIAS:$SECURE_INGRESS_PORT/myproxy -k

Si puedes actualizar el DNS de tu nombre de host

Sigue estos pasos si el nombre de host que has usado al crear el grupo de entornos está registrado y puedes actualizar su registro DNS para que apunte a la IP de entrada externa:

  1. Exporta la IP externa del recurso Ingress a una variable:
    export INGRESS_IP=$(kubectl -n istio-system get service \
      istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
  2. Comprueba que la variable contenga la dirección IP. Por ejemplo:
    echo $INGRESS_IP
    34.118.196.202
  3. Usa esta dirección IP para actualizar tu registro DNS (normalmente, un registro A o CNAME) en tu registrador o proveedor de DNS. Es posible que tengas que esperar hasta una hora para que se propague el cambio en el registro DNS.
  4. Exporta el alias de host de tu grupo de entornos a una variable:
    export HOSTALIAS=your_host_alias
  5. Llama al proxy de API:
    curl -k https://$HOSTALIAS/myproxy

    Por ejemplo:

    curl -v -k https://apitest.acme.com/myproxy

    Si la llamada se realiza correctamente, verás el siguiente resultado:

    Hello, Guest!