Configura gli host virtuali

Questo argomento illustra la proprietà di configurazione virtualhosts. Gli host virtuali consentono ad Apigee hybrid di gestire le richieste API agli hostalias associati a un gruppo di ambienti. Per saperne di più, consulta Routing e percorsi di base nell'argomento Informazioni su ambienti e gruppi di ambienti.

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

Quando arriva una chiamata al proxy API, viene indirizzata agli alias host del gruppo di ambienti in cui è stato eseguito il deployment del proxy API.

Per istruzioni su come applicare virtualhosts al cluster, consulta Applicare le modifiche ai virtualhost. Per informazioni sulla configurazione di TLS, consulta Configurazione di TLS e mTLS sul gateway in entrata Istio.

Aggiunta di più host virtuali

La proprietà virtualhosts[] è un array, pertanto puoi crearne più di uno.

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

Per informazioni sulla configurazione di TLS, consulta Configurazione di TLS e mTLS sul gateway in entrata Istio.

Applicazione delle modifiche virtualhosts

Se aggiungi o modifichi solo la proprietà virtualhosts e nient'altro, puoi applicare queste modifiche con il flag ‑‑settings. Questo vale solo per apigeectl; per Helm, applichiamo apigee-virtualhost con la variabile appropriata.

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 modifichi le impostazioni virtualhosts e env, devi applicare le modifiche senza utilizzare ENV_GROUP_NAME apigee-virtualhost/ per Helm e ‑‑settings virtualhosts per apigeectl. Ecco come aggiornare il cluster:

Helm

Esegui helm upgrade per ogni ambiente che vuoi aggiornare.

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

Esegui l'upgrade del grafico 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

In alternativa, per aggiornare il componente per tutti gli ambienti:

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

Quindi applica le modifiche al virtualhost:

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

Chiavi e certificati TLS

La proprietà virtualhost richiede una chiave e un certificato TLS. La chiave/il certificato vengono utilizzati per fornire una comunicazione sicura con il gateway di ingresso e devono essere compatibili con gli alias host utilizzati nel gruppo di ambienti specificato.

Sta a te decidere come generare le coppie di chiavi/certificati TLS appropriate per la tua configurazione ibrida. I seguenti argomenti sono forniti solo come esempi e sono destinati principalmente a provare o testare una nuova installazione ibrida se non è possibile ottenere le credenziali TLS in un altro modo: