O que é o Apigee híbrido?

Imagem ilustrativa da implantação

A Apigee híbrida permite que você gerencie APIs no local, no Google Cloud ou uma combinação de ambos:

Gerencie todas as APIs em um só lugar

A Apigee híbrida ajuda você a gerenciar APIs internas e externas com o Google Cloud.

Com o gerenciamento de APIs unificado, é possível oferecer a desenvolvedores, parceiros e clientes uma experiência consistente de programa de API.

Alie segurança e conformidade

Se suas necessidades de segurança e conformidade fazem com que a implantação no local seja obrigatória para seus aplicativos, com um gateway híbrido de nível corporativo, é possível hospedar e gerenciar o plano de ambiente de execução da Apigee híbrida no local.

Gerencie e controle o ambiente de execução e aproveite sua infraestrutura atual de segurança, governança e conformidade.

Sustente sua estratégia de várias nuvens

Equilibrar o custo e o desempenho pode levar a uma estratégia híbrida.

Não importa se você está apenas explorando diferentes provedores de nuvem ou se já escolheu uma estratégia híbrida, sua plataforma de gerenciamento de APIs deve oferecer a flexibilidade necessária. Hospede e gerenciar gateways híbridos de nível empresarial em todo seu data center, no Google Cloud ou em ambos.

 

Se você quiser saber mais sobre híbridos:

Continuar lendo

 

 

Se você estiver pronto para instalar um híbrido:

Comece aqui.

 

Programas de API em um mundo híbrido

A Apigee híbrida consiste em um plano de gerenciamento mantido pelo Google e em um plano de ambiente de execução instalado no Kubernetes no Kubernetes local ou no Google Cloud. Os dois planos usam serviços do Google Cloud Platform, como mostra a imagem a seguir:

Uma visualização
  de alto nível da plataforma híbrida, incluindo o plano de gerenciamento e o plano de execução, além dos serviços do Google Cloud.

O modelo híbrido consiste nos seguintes componentes principais:

  • Plano de gerenciamento gerenciado pela Apigee: um conjunto de serviços hospedados na nuvem e mantidos pelo Google. Esses serviços incluem a IU, a API de gerenciamento e as análises.
  • Plano de ambiente de execução gerenciado pelo cliente: um conjunto de serviços de ambiente de execução em contêiner que você configura e mantém no seu próprio cluster do Kubernetes. Todo o tráfego da API passa e é processado no plano do ambiente de execução.

    Você gerencia o ambiente de execução em contêineres em seu cluster do Kubernetes para ter maior agilidade com lançamentos graduais, escalonamento automático e outros benefícios operacionais de contêineres.

  • Google Cloud: um conjunto de serviços do Cloud hospedado pelo Google.

Uma coisa importante que você precisa saber sobre o modelo híbrido é que todo o tráfego de API é processado dentro dos limites da rede e sob seu controle, enquanto os serviços de gerenciamento, como a IU e a análise da API, são executados na nuvem e são mantidos pelo Google. Para saber mais, consulte Onde seus dados são armazenados?

O vídeo a seguir mostra a arquitetura híbrida mais detalhadamente:

Sobre o plano de ambiente de execução

O plano de ambiente de execução é um conjunto de serviços de ambiente de execução em contêiner que você configura e mantém no seu próprio cluster do Kubernetes. Todo o tráfego da API passa e é processado no plano do ambiente de execução. O plano de ambiente de execução inclui os seguintes componentes principais:

O plano de execução é executado em um cluster do Kubernetes que você possui e mantém.

A imagem a seguir mostra os principais serviços executados no plano de ambiente de execução:

Serviços principais executados no plano de ambiente de execução híbrido

Para informações gerais sobre os componentes do ambiente de execução, consulte as seções a seguir. Além disso, consulte Visão geral da configuração do serviço de ambiente de execução.

Nas seções a seguir, descrevemos cada um desses serviços de plano de ambiente de execução primário em mais detalhes.

Processador de mensagens

Os processadores de mensagens híbridas (MPs, na sigla em inglês) processam solicitações de API e executam políticas no plano de ambiente de execução. Os MPs carregam todos os proxies, recursos, servidores de destino, certificados e keystores implantados do armazenamento local. Você configura um controlador de entrada do Istio para expor os MPs a solicitações provenientes de fora do cluster.

Sincronizador

O Sincronizador busca dados de configuração sobre um ambiente de API do plano de gerenciamento e os propaga no plano de ambiente de execução. Esses dados salvos também são chamados de contrato e são armazenados no sistema de arquivos local.

O Sincronizador verifica se há alterações no Servidor de gerenciamento e faz o download de uma nova configuração sempre que alterações forem detectadas. Os dados de configuração são recuperados e armazenados localmente como um arquivo JSON no sistema de arquivos local, onde os processadores de mensagens podem acessá-los.

Os dados de configuração do download permitem que o plano de ambiente de execução funcione independentemente do plano de gerenciamento. Com o contrato, os Processadores de mensagens no plano de ambiente de execução usam os dados armazenados localmente como a configuração. Se a conexão entre o plano de gerenciamento e o de ambiente de execução ficar inativa, os serviços no plano de ambiente de execução continuarão funcionando.

Os dados de configuração incluídos no download do Sincronizador incluem:

Armazenamento de dados do Cassandra

O Apache Cassandra é o armazenamento de dados do ambiente de execução que fornece persistência de dados para o plano de ambiente de execução.

O Cassandra é um sistema de dados distribuído que fornece persistência de dados no plano do ambiente de execução. Implante o banco de dados do Cassandra como um pool de nós StatefulSet no cluster do Kubernetes. Localizar essas entidades perto dos serviços de processamento de ambiente de execução ajuda a atender aos requisitos de segurança e alta escalonabilidade.

O banco de dados do Cassandra armazena informações sobre as seguintes entidades:

  • Sistema de gerenciamento de chaves (KMS)
  • Mapa de chave-valor (KVM)
  • Cache de resposta
  • OAuth
  • Cotas

API Management para dados do ambiente de execução (MART)

Os dados que pertencem à sua organização e são acessados durante as chamadas de API do ambiente de execução são armazenados pelo Cassandra no plano de ambiente de execução.

Esses dados incluem:

  • Configurações do aplicativo
  • Dados do Key Management System (KMS)
  • Cache
  • Mapas de chave-valor (KVMs)
  • Produtos de API
  • Apps para desenvolvedores

Para acessar e atualizar esses dados, por exemplo, para adicionar uma nova KVM ou remover um ambiente, use a IU da Apigee híbrida ou as APIs Apigee. O servidor MART (API de gerenciamento para dados do ambiente de execução) processa as chamadas de API no armazenamento de dados do ambiente de execução.

Nesta seção, descrevemos o papel que o MART desempenha ao chamar as APIs Apigee para acessar o armazenamento de dados do ambiente de execução.

 
O que é o MART

Para chamar uma API Apigee, você envia uma solicitação autenticada ao servidor de gerenciamento (MS, na sigla em inglês) no plano de gerenciamento. O MS autentica e autoriza a solicitação e a encaminha para o MART no plano de ambiente de execução. Anexada a essa solicitação, há um token gerado pelo MS usando uma conta de serviço pré-configurada.

O MART recebe a solicitação, autentica-a e a autoriza para, em seguida, realizar a validação da empresa. Por exemplo, se o app fizer parte de um produto de API, o MART garantirá que ela seja uma solicitação válida. Depois de determinar que uma solicitação é válida, o MART a processa.

O Cassandra armazena os dados de ambiente de execução que o MART processa (ou seja, depois de um armazenamento de dados de ambiente de execução). O MART pode ler dados do Cassandra ou atualizá-los, dependendo do tipo de solicitação.

Como a maioria dos serviços híbridos, o MART não tem estado. Ele não mantém estado próprio no ambiente de execução.

O que o MART não é

Mesmo que o MART exponha uma porta para a nuvem pública, você não chama o MART diretamente. A porta precisa ser exposta para que o MART receba chamadas do MS por meio de uma conta de serviço.

Além disso, o MART não recebe chamadas de ambiente de execução de clientes para proxies de API. Essas chamadas são processadas pelo controlador de entrada e encaminhadas para os Processadores de mensagens do cluster.

 

Vale ressaltar que tanto o MART quanto os processadores de mensagens têm acesso ao mesmo armazenamento de dados de ambiente de execução (Cassandra), que é como dados como KMS, KVMs e caches são compartilhados.

A imagem a seguir mostra o fluxo de uma chamada de API da Apigee:

Fluxo de chamadas de API

  em modelo híbrido

UDCA

O Agente de coleta de dados universais (UDCA, na sigla em inglês) é um serviço em execução no pod de coleta de dados no plano de ambiente de execução que extrai dados de análise, rastreamento e de implantação e os envia para o UAP.

Para mais informações, consulte Coleta de dados de status de depuração, análise e implantação.

Sobre o plano de gerenciamento

O plano de gerenciamento é executado no Google Cloud. Ele inclui serviços administrativos como:

  • IU da Apigee híbrida: fornece uma IU para que os desenvolvedores criem e implantem proxies de API, configurem políticas, criem produtos de API e criem aplicativos de desenvolvedor. Os administradores podem usar a IU da Apigee híbrida para monitorar o status da implantação.
  • APIs Apigee: fornecem uma interface programática para gerenciar sua organização e ambientes.
  • Plataforma unificada de análise (UAP, na sigla em inglês): recebe e processa dados de status de análise e implantação do plano de ambiente de execução.

A imagem a seguir mostra os principais serviços executados no plano de gerenciamento:

Serviços executados no plano de gerenciamento da Apigee híbrida

Sobre os serviços do Google Cloud

Na tabela a seguir, descrevemos os principais serviços do Google Cloud que as soluções híbridas usam:

Serviço do Google Cloud Descrição
Identidade A autenticação de conta de usuário usa contas do Google Cloud. A autorização usa contas de serviço do Google Cloud.
Papéis O gerenciamento de acesso para modelo híbrido usa o mecanismo de papéis do Google, o IAM, e aceita papéis padrão da Apigee.
Hierarquia de recursos Os recursos são organizados em projetos do Google Cloud (vinculados à organização da Apigee).
Stackdriver Fornece análise e métricas de dados de geração de registros.
 

Tipos de usuários

A Apigee identificou os seguintes tipos principais de usuários híbridos:

Papel Responsabilidades/tarefas típicas Áreas de interesse
Administradores/operadores do sistema
  • Instalar e configurar serviços no plano de ambiente de execução híbrido
  • Configurar o Google Cloud, a Apigee e as contas de serviço
  • Criar serviços e projetos do Google Cloud
  • Gerenciar o cluster do Kubernetes
  • Manter todos os itens acima
  • Solucionar problemas dos proxies da API
Desenvolvedores
  • Criar proxies de API usando as APIs ou a IU da Apigee híbrida
  • Implantar proxies de API no plano de ambiente de execução
  • Solucionar problemas dos proxies da API
  • Testar os proxies da API
 

Vantagens

A Apigee híbrida tem as seguintes vantagens:

Maior agilidade
Como o modelo híbrido é oferecido e executado em contêineres, é possível ter lançamentos graduais, escalonamento automático e outros benefícios operacionais de um sistema em contêiner.
Latência reduzida
Toda a comunicação com o plano de gerenciamento híbrido é assíncrona e não acontece como parte do processamento de solicitações da API do cliente.
Maior adoção da API
É possível processar APIs internas usando a Apigee, mas a latência e a eficiência reduzidas que você pode conseguir com o processamento das APIs internas com a híbrida são uma opção atraente. Parte dessa eficiência é alcançada porque o gateway de API é executado no local, próximo aos serviços de back-end. Além disso, se estiver na Apigee, é possível aumentar a adoção da Apigee por meio do processamento de APIs internas por meio de ambientes híbridos.
Maior controle
Muitas empresas estão começando a implantar uma estratégia híbrida. A capacidade de gerenciar ambientes de execução de APIs implantados em data centers particulares é um requisito fundamental para grandes empresas. Atualmente, o plano de execução híbrido pode ser implantado no Google Cloud ou no seu próprio data center.

Próxima etapa

Consulte o quadro geral, uma visão do processo de instalação híbrida.