Sobre os ambientes

Um ambiente fornece um contexto isolado ou "sandbox" para executar proxies de API. Em uma única organização, é possível criar vários ambientes. Para mais informações, consulte Sobre ambientes e grupos de ambiente.

O código a seguir mostra um exemplo de configuração em que vários ambientes são definidos. Observe que os ambientes prod e test têm aliases de host diferentes:

namespace: my-namespace
org: my-organization
...
envs:
  - name: test
    serviceAccountPaths:
      synchronizer: "your_keypath/synchronizer-manager-service-account.json
      udca: "your_keypath/analytic-agent-service-account.json

  - name: prod
    serviceAccountPaths:
      synchronizer: "your_keypath/synchronizer-manager-service-account.json
      udca: "your_keypath/analytic-agent-service-account.json
...
  • Adicione uma propriedade virtualhosts que mapeie o routingRules para o(s) ambiente(s).
    virtualhosts:
      - name: default
        hostAliases: ["api.example.com"]
        sslCertPath: ./certs/fullchain.pem
        sslKeyPath: ./certs/privkey.pem
        routingRules:
          - env: test
    virtualhosts:
      - name: external
        hostAliases: ["apiprod.example.com"]
        sslCertPath: ./certs/fullchain.pem
        sslKeyPath: ./certs/privkey.pem
        routingRules:
          - env: prod

    Suponha que um proxy com o caminho base /foo1 esteja implantado no ambiente test. Você pode chamar o proxy da seguinte maneira:

    curl -k https://api.example.com/foo1

    Quando essa chamada atinge a entrada, a entrada sabe enviá-la para o processador de mensagens associado ao ambiente test, que processa a solicitação.

    Da mesma forma, se foo1 também for implantado no ambiente prod, será possível fazer uma solicitação de proxy como essa para o alias de host apiprod.mydomain.net:

    curl -k https://apiprod.example.com/foo1

    E a chamada é roteada pela entrada para o MP associado a esse host.

    Antipadrão: implante todos os proxies em um ambiente híbrido.

    Prática recomendada: crie vários ambientes e implante um número limitado de proxies em cada um. É possível criar regras de roteamento que especificam para quais ambientes rotear caminhos de base de proxy de API específicos. Para detalhes, consulte Configuração do host virtual.

    Limitar o número de implantações de proxy

    Para híbridos, o fato de que muitos ambientes podem compartilhar o mesmo host virtual significa que você precisa pensar cuidadosamente sobre como gerenciar as implantações de proxy em qualquer ambiente. No híbrido, a prática recomendada é criar vários ambientes e implantar um número limitado de proxies para cada um.

    Quantos proxies você precisa implantar em um ambiente? Não há uma resposta definida para essa pergunta: No entanto, a tabela a seguir fornece orientações gerais sobre por que é uma boa ideia limitar o número de proxies implantados em cada ambiente e o que você precisa considerar ao gerenciar implantações de proxy:

    Problema a ser considerado Descrição
    Tempo de inicialização do processador de mensagens Há uma correlação direta entre o tempo que um processador de mensagens (MP, na sigla em inglês) leva para inicializar e o número de proxies implantados nesse MP. Em um ambiente de escalonamento automático do Kubernetes, um aumento no tempo de inicialização pode ser um problema. Quanto mais proxies implantados no MP, mais tempo levará para que esse MP apareça se precisar ser escalonado ou recriado.
    Como escalonar o desempenho Se você tiver vários proxies implantados em um ambiente e um deles receber muito tráfego para que seja escalonado automaticamente, todos os proxies nesse ambiente serão escalonados com ele. O efeito de desempenho no escalonamento de vários proxies com um único proxy de alto tráfego pode ser um problema.
    Vizinho barulhento Se você tiver vários proxies implantados no mesmo ambiente e um proxy falhar, todos os proxies no ambiente serão desativados enquanto os MPs são reiniciados. Ao limitar o número de proxies implantados em um ambiente, você minimiza o impacto de um único proxy falhar.

    Referência de configuração de ambiente

    Para uma lista completa dos elementos de configuração do ambiente, consulte envs na Referência da propriedade de configuração.

    Como trabalhar com ambientes

    Para mais informações sobre a configuração, consulte os seguintes tópicos: