Configurar o conector do Apigee API Hub para nuvem privada

Esta seção detalha as etapas de configuração do conector do Apigee API Hub 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 Apigee API Hub 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 Apigee API Hub para Private Cloud).
    • Definir GOOGLE_APPLICATION_CREDENTIALS: ao iniciar o conector do Apigee API Hub 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 Apigee API Hub para nuvem privada.

Configurar o Apigee API Hub para o conector do Private Cloud

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.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 da API 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