Configurar o conector do Apigee API Hub para nuvem privada

Esta seção detalha as etapas de configuração do conector do hub de APIs da Apigee para nuvem privada, incluindo configurações de rede, autenticação e específicas da organização.

Configuração de rede e autenticação

  1. Lista de permissões de portas: o conector do hub de APIs do Apigee para nuvem privada precisa se conectar ao servidor de gerenciamento para receber os metadados de API necessários. Portanto, as portas 8080 e 443 do servidor de gerenciamento precisam estar acessíveis ao conector.
  2. Autenticação baseada em chaves para serviços do Google Cloud Platform: o conector do Apigee API Hub para nuvem privada se comunica com os serviços do Google Cloud e exige tokens para autenticação. Isso é feito usando uma chave de conta de serviço para criar tokens representados.

    • Conta de serviço para geração de tokens: crie uma conta de serviço dedicada à geração de tokens. Essa conta de serviço precisa ter o papel Token Creator.
    • Gere e faça o download da chave da conta de serviço:
      • Siga as etapas em Criar chave de conta de serviço para gerar uma chave JSON para a conta de serviço que gera tokens.
      • Faça o download desse arquivo de chave (por exemplo, para /opt/apigee/keys/uapim.key na VM do conector do hub de APIs do Apigee para nuvem privada).
    • Definir GOOGLE_APPLICATION_CREDENTIALS: ao iniciar o conector do hub de APIs da Apigee para nuvem privada, você precisa fornecer o caminho para esse arquivo usando a variável de ambiente:
      export $GOOGLE_APPLICATION_CREDENTIALS=/opt/apigee/keys/uapim.key
  3. Autenticação da API Management (UAPIM_MGMT_AUTH): o conector do hub de APIs da Apigee para nuvem privada exige credenciais para chamar a API Management da Apigee. Para segurança e automação, use um usuário de máquina na Apigee, não um usuário humano.

    Crie um usuário máquina no Apigee:

    1. Criar usuário:
      • No console do Apigee, crie um usuário de máquina (ou usuário do sistema). Saiba mais sobre usuários e funções aqui.
      • Atribua um e-mail (para identificação) e um nome descritivo (por exemplo, uapim-connector-user).
    2. Atribua papéis: atribua o seguinte papel ao usuário da máquina:
      • Administrador da API Apigee: essa função dá acesso à API de gerenciamento, permitindo que o conector do hub de APIs da Apigee para nuvem privada interaja com o sistema de gerenciamento da Apigee (por exemplo, para buscar metadados ou gerenciar configurações de API).

Gere credenciais codificadas em Base64:

  1. Gere o par nome de usuário:senha para o usuário da máquina.
  2. Codifique as credenciais em Base64: echo -n 'username:password' | base64
  3. Defina a variável de ambiente $UAPIM_MGMT_AUTH com o valor codificado em base64:
    export UAPIM_MGMT_AUTH=USERNAME_PASSWORD

    Em que USERNAME_PASSWORD é o valor codificado em base64 do par nome de usuário e senha.

    Verifique se essa variável de ambiente está definida antes de iniciar o conector do hub de APIs da Apigee para nuvem privada.

Configurar o conector do hub de APIs do Apigee para nuvem privada

Abra o arquivo de configuração /opt/apigee/customer/application/uapim-connector.properties para especificar as organizações da Apigee em que os dados precisam ser enviados ao hub de API. Talvez você tenha várias instâncias de plug-in ou do hub de API.

  conf_uapim_connector.uapim.settings.json={\
    "connectorConfig" : { \
      "org1" : { \
        "runtimeDataPubsub" : "", \
        "metadataPubsub":"", \
        "serviceAccount": "mysa1@in.myfirstProject",\
        "pluginInstanceId":"aaaa" \
      },\
      "org2" : { \
        "runtimeDataPubsub" : "", \
        "metadataPubsub":"",\
        "serviceAccount": "mysa2@in.mySecondProject",\
        "pluginInstanceId":"bbbbb", \
      } 
    },
    "runtimeDataPath":"/the/nfs/mounted/path", \    
    "managementServer": "hostname"
  } 

Explicação do JSON de configurações

  • Seção connectorConfig:
    • É um mapa em que cada chave é um nome de organização da Apigee (por exemplo, org1, org2).
    • Cada entrada de organização contém os seguintes campos, que você recebeu durante a etapa de criação do plug-in:
      • runtimeDataPubsub: o tópico do Pub/Sub para dados de tempo de execução (análise) desta organização.
      • metadataPubsub: o tópico do Pub/Sub para metadados da API desta organização.
      • serviceAccount: a conta de serviço (por exemplo, mysa1@in.myfirstProject.iam.gserviceaccount.com) usada para autenticar gravações de dados no Pub/Sub para esta organização.
      • pluginInstanceId: o ID exclusivo da instância do plug-in associado a esta organização.
  • Seção runtimeDataPath: forneça o caminho para a montagem do NFS em que os processadores de mensagens vão gravar os dados do Analytics (AX). Precisa ser o mesmo caminho configurado nos processadores de mensagens.
  • Seção managementServer: o nome do host ou o endereço IP do URL do servidor de gerenciamento do Apigee.
  • Variável de ambiente UAPIM_MGMT_AUTH: essa variável de ambiente, definida externamente, contém o username:password codificado em base64 para acessar o servidor de gerenciamento.

Adicionar as configurações de proxy de encaminhamento

Adicione configurações de proxy de encaminhamento no mesmo arquivo /opt/apigee/customer/application/uapim-connector.properties

  1. conf_http_client_service_jetty.proxy.enabled=true
  2. conf_http_client_service_jetty.proxy.host=
  3. conf_http_client_service_jetty.proxy.port=
  4. conf_http_client_service_jetty.proxy.user=
  5. conf_http_client_service_jetty.proxy.password=

Para funcionar corretamente, o conector precisa se conectar às seguintes fontes externas:

  • pubsub.googleapis.com:443
  • oauth2.googleapis.com:443
  • iamcredentials.googleapis.com:443

Se o conector não puder se conectar diretamente às fontes externas, mas sim por um proxy de encaminhamento, o usuário precisará fornecer as configurações de proxy de encaminhamento usando as configurações abaixo e garantir que as fontes externas mencionadas acima estejam na lista de permissões.

Como iniciar o conector do hub de APIs da Apigee para nuvem privada

Depois que todas as configurações forem definidas, inicie o conector do Apigee API Hub para Private Cloud usando o comando do serviço Apigee:

apigee-service edge-uapim-connector start