Aprovisionamento de IPs NAT

Esta página aplica-se ao Apigee, mas não ao Apigee Hybrid.

Veja a documentação do Apigee Edge.

Esta secção descreve como gerir os IPs NAT para instâncias do Apigee.

O Apigee fornece IPs efémeros e IPs dedicados. Em muitos casos, os IPs efémeros são suficientes. Se o seu back-end não exigir a inclusão de IPs numa lista de autorizações, não precisa de gerir IPs NAT, e o Apigee atribui automaticamente IPs efémeros para a saída.

Se precisar de uma lista de IPs permitidos, pode reservar e ativar IPs para que o Apigee use IPs estáticos para o tráfego de saída.

Configure o aprovisionamento de IPs NAT do Apigee

Para definir o aprovisionamento de IP da NAT para a sua instância do Apigee:

  1. Crie e preencha as seguintes variáveis de ambiente:

    Variáveis

    PROJECT_ID=YOUR_PROJECT_ID
    ORG_ID=YOUR_ORG_ID
    INSTANCE_NAME=YOUR_INSTANCE_NAME
    NAT_ID=1st_NAT_IP_ID

    Exemplo

    PROJECT_ID=apigee-saas-prod
    ORG_ID=apigee-saas-prod
    INSTANCE_NAME=prod-us-west1-instance1
    NAT_ID=nat-1

    Onde:

    • YOUR_PROJECT_ID é o ID do projeto do Google Cloud que criou como parte dos Pré-requisitos. Se não tiver a certeza do ID do seu projeto, use a Cloud Console ou o comando gcloud projects list para o encontrar.
    • YOUR_ORG_ID é o ID da sua organização Apigee.
    • YOUR_INSTANCE_NAME é o nome da sua instância do Apigee.
    • 1st_NAT_IP_ID é o nome que está a atribuir a este endereço IP NAT; por exemplo, nat-1. O valor deste parâmetro não pode exceder 20 carateres.
  2. Reserve um IP NAT com os seguintes comandos:
    1. Na linha de comandos, obtenha as suas gcloud credenciais de autenticação, como mostra o exemplo seguinte:

      TOKEN=$(gcloud auth print-access-token)

      Para verificar se o token foi preenchido, use echo, como mostra o exemplo seguinte:

      echo $TOKEN

      Esta ação deve apresentar o seu token como uma string codificada.

      Para mais informações, consulte a vista geral da ferramenta de linhas de comando gcloud.

    2. O comando para reservar o IP NAT devolve a operação de longa duração. Por conseguinte, o comando , conforme mostrado aqui, atribui o resultado a uma variável operation_name:
      operation_name=$(curl -H "Authorization: Bearer $TOKEN" \
        "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses" \
        -X POST -H "content-type:application/json" -d "{\"name\":\"${NAT_ID}\"}" | jq -r '.name')
      
    3. Verifique a operação de longa duração até apresentar o estado done: true executando o seguinte pedido:
      curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"
  3. Após a conclusão da operação, ative o IP NAT com os seguintes comandos:
    1. Ative o IP e atribua o nome da operação de longa duração a operation_name:
      operation_name=$(curl -H "Authorization: Bearer $TOKEN" \
        "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses/${NAT_ID}:activate" \
        -X POST -H "content-type:application/json" -d "{}" | jq -r '.name')
    2. Faça uma sondagem à operação de longa duração até apresentar o estado done: true:
      curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"
  4. Repita este procedimento com um novo nome de IP NAT para cada IP NAT que precisa de configurar.

A obter IPs NAT

Apresente uma lista dos IPs NAT de uma instância com o seguinte comando:

curl -H "Authorization: Bearer $TOKEN" \
  "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses"

Uma resposta de exemplo seria:

{
  "natAddresses": [
    {
      "name": "nat-1",
      "ipAddress": "35.203.160.18",
      "state": "ACTIVE"
    },
    {
      "name": "nat-2",
      "ipAddress": "35.230.14.174",
      "state": "RESERVED"
    },
    {
      "name": "nat-3",
      "state": "CREATING"
    }
  ]
}

Estados de um IP NAT

  • CREATING : a criação do IP NAT está pendente. Não está pronto para ser usado.
  • RESERVED: o IP NAT foi criado, mas não foi usado. Isto dá-lhe a oportunidade de adicionar este IP à lista de permitidos antes de o ativar.
  • ACTIVE: o IP NAT está a ser usado para enviar tráfego de saída.
  • DELETING: o IP NAT está a ser eliminado.

A eliminar IPs de NAT

Pode eliminar IPs NAT com o seguinte comando:

  1. Elimine o IP e atribua a saída a "operation_name".
    operation_name=$(curl -H "Authorization: Bearer $TOKEN" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses/${NAT_ID}" \
      -X DELETE | jq -r '.name')
  2. Faça uma sondagem à operação de execução longa até apresentar o estado done: true.
    curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"