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 ulteriori informazioni, vedi Routing e base di percorsi nella sezione Informazioni 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 Applicazione delle modifiche a virtualhosts. 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, quindi puoi creare 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 di virtualhosts di modifiche in corso...

Se aggiungi o modifichi solo virtualhosts e nient'altro, puoi applicare queste modifiche con il flag ‑‑settings. Si applica 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

Poi 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 a 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 o il certificato vengono utilizzati per fornire una comunicazione sicura con il gateway in entrata e deve essere compatibile con gli alias host utilizzati nel gruppo di ambiente specificato.

Sta a te decidere come generare le coppie di chiavi/certificati TLS appropriate per la tua configurazione ibrida. I seguenti argomenti vengono forniti solo a titolo di esempio, pensati principalmente per provare o testare una nuova installazione ibrida se non è possibile ottenere Credenziali TLS in un altro modo: