Configurar hosts virtuais

Neste tópico, abordamos a propriedade de configuração virtualhosts. Os hosts virtuais permitem que a Apigee híbrida processe solicitações de API para hostaliases associados a um grupo de ambiente. Para mais informações, consulte Caminhos de roteamento e base no tópico Sobre ambientes e grupos de ambiente.

...
virtualhosts:
  - name: my-env-group
    sslCertPath: ./certs/fullchain.pem
    sslKeyPath: ./certs/privkey.key
...

Quando uma chamada de proxy de API chega, ela é encaminhada para os aliases de host do grupo de ambientes em que o proxy da API está implantado.

Para instruções sobre como aplicar virtualhosts ao cluster, consulte Como aplicar alterações de hosts virtuais. Para ver informações sobre como configurar o TLS, consulte Como configurar o TLS e o mTLS na entrada do Istio.

Como adicionar vários hosts virtuais

A propriedade virtualhosts[] é uma matriz e, portanto, você pode criar mais de uma.

...
virtualhosts:
  - name: my-env-group-1
    sslCertPath: ./certs/fullchain1.pem
    sslKeyPath: ./certs/privkey1.key

  - name: my-env-group-2
    sslCertPath: ./certs/fullchain2.pem
    sslKeyPath: ./certs/privkey2.key
...

Para ver informações sobre como configurar o TLS, consulte Como configurar o TLS e o mTLS na entrada do Istio.

Como aplicar alterações virtualhosts

Se você adicionar ou alterar apenas a propriedade virtualhosts e nada mais, poderá aplicar essas mudanças com a sinalização ‑‑settings. Isso se aplica apenas à apigeectl. Para o Helm, estamos aplicando apigee-virtualhost com a variável adequada.

Helm

helm upgrade ENV_GROUP_NAME apigee-virtualhost/ \
  --namespace apigee \
  --atomic \
  --set envgroup=ENV_GROUP_NAME \
  -f OVERRIDES_FILE.yaml

apigeectl

$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml ‑‑settings virtualhosts

Se você modificar as configurações virtualhosts e env, será necessário aplicar as mudanças sem usar ENV_GROUP_NAME apigee-virtualhost/ para o Helm e ‑‑settings virtualhosts para apigeectl. Saiba como atualizar o cluster:

Helm

Execute o upgrade do helm para cada ambiente que você quer atualizar.

helm upgrade ENV_NAME apigee-env/ \
    --namespace apigee \
     --atomic \
     --set env=ENV_NAME \
     -f OVERRIDES_FILE.yaml

Em seguida, faça upgrade do gráfico apigee-virtualhost:

helm upgrade ENV_GROUP_NAME apigee-virtualhost/ \
    --namespace apigee \
    --atomic \
    --set envgroup=ENV_GROUP_NAME \
    -f OVERRIDES_FILE.yaml

apigeectl

$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --env ENV_NAME

ou para atualizar o componente para todos os ambientes:

$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --all-envs

Em seguida, aplique as mudanças ao virtualhost:

$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml settings virtualhosts

Certificados e chaves TLS

A propriedade virtualhost requer uma chave TLS e um certificado. A chave/certificado são usados para fornecer uma comunicação segura com o gateway de entrada e precisam ser compatíveis com os aliases de host usados no grupo de ambiente especificado.

Você decide como gerar pares de certificado/chave TLS adequados para sua configuração híbrida. Os tópicos a seguir são fornecidos apenas como exemplos, destinados principalmente a avaliar ou testar uma nova instalação híbrida, se não for possível obter credenciais TLS de outra maneira: