Gruppo di ambienti mancante per l'host virtuale

Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Non esiste una documentazione Apigee Edge equivalente per questo argomento.

Sintomo

Un ApigeeIssue con Reason AIS_VIRTUALHOST_MISSING_ENVGROUP viene visualizzato quando si visualizzano le risorse nello spazio dei nomi apigee.

Messaggi di errore

Dopo aver eseguito kubectl -n apigee get apigeeissues, viene visualizzato il seguente errore:

NAME                     SEVERITY   REASON                             DOCUMENTATION                                                                                  AGE
vhost-missing-eg-my-eg   ERROR      AIS_VIRTUALHOST_MISSING_ENVGROUP   https://cloud.google.com/apigee/docs/api-platform/troubleshoot/playbooks/vh-missing-env-group   5h18m

Causa: gruppo di ambienti mancante in Virtualhost

Uno dei virtualhosts definiti in overrides.yaml non ha il EnvironmentGroup corrispondente.

Diagnosi

Esegui questo comando:

kubectl -n apigee describe apigeeissue ISSUE_NAME

Dove ISSUE_NAME è il nome del problema. Ad esempio, vhost-missing-eg-my-eg.

Viene restituito un risultato simile al seguente:

Name:         vhost-missing-eg-my-eg
Namespace:    apigee
Labels:       ais-reason=AIS_VIRTUALHOST_MISSING_ENVGROUP
Annotations:  <none>
API Version:  apigee.cloud.google.com/v1alpha1
Kind:         ApigeeIssue
Metadata:
  Creation Timestamp:  2023-04-05T14:29:38Z
  Generation:          1
  Managed Fields:
    API Version:  apigee.cloud.google.com/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:spec:
        .:
        f:details:
        f:documentation:
        f:reason:
        f:severity:
    Manager:         apigeewatcher
    Operation:       Update
    Time:            2023-04-05T14:29:38Z
  Resource Version:  28195
  UID:               f7b62eb3-3f84-4a37-9ba8-9a0e1e9c3454
Spec:
  Details:        Expected EnvironmentGroup "my-eg" in ApigeeOrganization "my-org" for ApigeeRouteConfig "my-org-my-eg"
  Documentation:  https://cloud.google.com/apigee/docs/api-platform/troubleshoot/playbooks/vh-missing-env-group
  Reason:         AIS_VIRTUALHOST_MISSING_ENVGROUP
  Severity:       ERROR
Events:           <none>
Spec:
  Details:        Expected EnvironmentGroup "my-eg" in ApigeeOrganization "my-org" for ApigeeRouteConfig "my-org-my-eg"

I contenuti di Spec.Details spiegano il nome di EnvironmentGroup che dovrebbe esistere.

Risoluzione

  1. Utilizza il comando describe ApigeeIssue per visualizzare il nome di EnvironmentGroup che dovrebbe esistere:
    kubectl -n apigee describe apigeeissues ISSUE_NAME

    Dove ISSUE_NAME è il nome del problema. Ad esempio, vhost-missing-eg-my-eg.

    In questo esempio, il gruppo di ambienti my-eg è previsto nell'organizzazione Apigee my-org.

  2. Utilizza uno dei seguenti metodi per risolvere il problema:
    1. Crea il gruppo di ambienti:
      1. Crea un gruppo di ambienti.
      2. Aggiungi un ambiente.
      3. Crea un proxy.
      4. Esegui il deployment di un proxy in quell'ambiente.
    2. Elimina il gruppo di ambienti:
      1. Apri overrides.yaml in un editor di testo.
      2. Elimina il gruppo di ambienti rimosso da virtualhosts.
      3. Salva il file overrides.yaml.
      4. Applica nuovamente il file overrides.yaml utilizzando il comando Helm:

        Prova:

        helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          --set envgroup=ENV_GROUP \
          -f overrides.yaml \
          --dry-run=server
        

        Assicurati di includere tutte le impostazioni mostrate, incluso --atomic in modo che l'azione venga annullata in caso di errore.

        La tua installazione potrebbe essere stata configurata o meno utilizzando un ENV_GROUP_RELEASE_NAME diverso da ENV_GROUP. Per informazioni sulle impostazioni, vedi Installare Apigee Hybrid utilizzando Helm.

        Installa il grafico:

        helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \
          --namespace APIGEE_NAMESPACE \
          --atomic \
          --set envgroup=ENV_GROUP \
          -f overrides.yaml
        

        Riprova e verifica che il messaggio di errore non venga più restituito.

Deve raccogliere informazioni diagnostiche

Se il problema persiste anche dopo aver seguito le istruzioni riportate sopra, raccogli le seguenti informazioni diagnostiche e poi contatta l'assistenza clienti Google Cloud:

  1. L'ID progetto Google Cloud .
  2. Il nome dell'organizzazione Apigee hybrid.
  3. Il campo Spec.Details di ApigeeIssue.