Crie e implemente um novo proxy de API

Agora que configurou o Google Cloud e a IU híbrida, e instalou e configurou o tempo de execução, está pronto para ver como tudo funciona em conjunto.

Esta secção explica o seguinte:

  1. Crie um novo proxy de API na IU do Apigee através do Assistente de proxy de API
  2. Implemente o novo proxy no cluster com a IU

1. Crie um novo proxy de API através da IU híbrida

Esta secção descreve como criar um novo proxy de API na IU através do assistente de proxy de API.

Para criar um proxy de API simples através do assistente de proxy de API:

  1. Abra a IU do Apigee num navegador.
  2. Selecione Desenvolver > Proxies de API na vista principal.
  3. Na lista pendente Ambiente, selecione o ambiente no qual quer criar um novo proxy de API. Esta secção pressupõe que o nome do ambiente é "test". Criou, pelo menos, um ambiente no passo 5: adicione um ambiente.

    A IU híbrida apresenta uma lista de proxies de API para esse ambiente. Se ainda não tiver criado nenhum proxy, a lista está vazia.

  4. Clique em +Proxy na parte superior direita. O assistente de proxy de API é iniciado.
  5. Selecione Proxy inverso (mais comum) e clique em Seguinte.

    É apresentada a vista Detalhes do proxy.

  6. Configure o proxy com as seguintes definições:
    • Nome do proxy: introduza "myproxy". Os passos restantes nesta secção partem do princípio de que este é o ID do seu proxy.
    • Caminho base do proxy: definido automaticamente como "/myproxy". O caminho base do proxy faz parte do URL usado para fazer pedidos à sua API. O Edge usa o URL para fazer corresponder e encaminhar os pedidos recebidos para o proxy de API adequado.
    • (Opcional) Descrição: introduza uma descrição para o novo proxy de API, como "Testar o Apigee hybrid com um proxy simples".
    • Destino (API existente): introduza "https://mocktarget.apigee.net". Isto define o URL de destino que o Apigee invoca num pedido ao proxy de API. O serviço mocktarget está alojado no Apigee e devolve dados simples. Não requer uma chave da API nem um token de acesso.

    Os detalhes do proxy de API devem ter o seguinte aspeto:

  7. Clicar em Seguinte.
  8. No ecrã Políticas, selecione Pass through (no authorization) como a opção de segurança.
  9. Clicar em Seguinte.
  10. No ecrã Resumo, clique em Criar.

    O Hybrid gera o proxy (por vezes, denominado pacote de proxy):

  11. Clique em Aceder à lista de proxies.

    Híbrido apresenta a vista Proxies, que apresenta uma lista de proxies de API. O novo proxy deve estar na parte superior da lista, com um indicador de estado cinzento, o que significa que ainda não foi implementado.

2. Implemente o proxy no cluster através da IU híbrida

Depois de criar um novo proxy, tem de o implementar para o poder experimentar. Esta secção descreve como implementar o novo proxy através da IU híbrida.

Para implementar um proxy de API na IU híbrida:

  1. Na IU híbrida, selecione Desenvolver > Proxies de API.

    Certifique-se de que o ambiente "test" está selecionado.

    A IU apresenta o novo proxy na lista de proxies:

  2. Clique no proxy "myproxy".

    A IU apresenta o separador Vista geral dos proxies de API para esse proxy.

    Tenha em atenção que, em Implementações, a coluna Revisão mostra "Não implementado".

  3. Na coluna Revisão, expanda o seletor pendente para escolher a revisão a implementar.

    A lista pendente apresenta apenas "1" e "Undeploy".

  4. Selecione "1", a revisão que quer implementar, na lista pendente.

    A IU pede-lhe que confirme a implementação:

  5. Clique em Implementar.

    A IU inicia o processo de implementação da revisão 1 do novo proxy no cluster.

    Tenha em atenção que a implementação não é um processo instantâneo. O modelo de implementação "eventualmente consistente" do Hybrid significa que uma nova implementação é implementada no cluster durante um curto período e não imediatamente.

Embora existam várias formas de verificar o estado de implementação de um proxy na IU, os dois passos seguintes explicam como chamar o proxy de API que acabou de implementar e como verificar o estado de implementação com uma chamada às APIs Apigee.

3. Chame o proxy da API

Siga os passos abaixo, consoante consiga ou não atualizar o registo DNS do nome do anfitrião que usou para criar o grupo de ambientes.

Se não conseguir atualizar o DNS do nome do anfitrião

Siga estes passos se o nome do anfitrião do grupo de ambientes não estiver registado ou não conseguir atualizar o respetivo registo de DNS. Nestes passos, obtém o IP de entrada e usa-o diretamente numa chamada cURL com a flag --resolve:

  1. Exporte o IP de entrada:
    export INGRESS_IP=$(kubectl -n istio-system get service \
      istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
  2. Exporte o número da porta de entrada segura:
    export SECURE_INGRESS_PORT=$(kubectl -n istio-system get \
      service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="https")].port}')
  3. Exporte o alias de anfitrião do grupo de ambientes para uma variável:
    export HOSTALIAS=your_host_alias
  4. Chame o proxy de API. A flag --resolve no cURL permite especificar diretamente o IP de entrada:
    curl  -H Host:$HOSTALIAS --resolve \
      $HOSTALIAS:$SECURE_INGRESS_PORT:$INGRESS_IP  \
      https://$HOSTALIAS:$SECURE_INGRESS_PORT/myproxy -k

Se conseguir atualizar o DNS do nome do anfitrião

Siga estes passos se o nome do anfitrião que usou quando criou o grupo de ambientes estiver registado e puder atualizar o respetivo registo DNS para apontar para o IP de entrada externo:

  1. Exporte o IP externo da entrada para uma variável:
    export INGRESS_IP=$(kubectl -n istio-system get service \
      istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
  2. Verifique se a variável contém o endereço IP. Por exemplo:
    echo $INGRESS_IP
    34.118.196.202
  3. Use este endereço IP para atualizar o seu registo de DNS (normalmente, um registo A ou CNAME) na entidade de registo ou no fornecedor de DNS. Pode ter de aguardar até uma hora para que a alteração do registo DNS seja propagada.
  4. Exporte o alias de anfitrião do grupo de ambientes para uma variável:
    export HOSTALIAS=your_host_alias
  5. Chame o proxy da API:
    curl -k https://$HOSTALIAS/myproxy

    Por exemplo:

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

    Se a chamada for bem-sucedida, verá o seguinte resultado:

    Hello, Guest!