Supprimer des environnements

Cet article explique comment supprimer des environnements dans Apigee hybrid. Consultez également la page À propos des environnements et des groupes d'environnements.

À propos de la suppression d'environnements

La suppression d'un environnement est l'inverse de la création d'un environnement et comprend les tâches suivantes :

  • Supprimez les composants d'exécution de l'environnement de votre cluster et supprimez l'environnement de votre fichier de remplacement.
  • Supprimez l'environnement du plan de gestion à l'aide de l'UI Apigee ou de l'API Delete Environments.

Comment supprimer un environnement

Supposons que vous disposez de deux environnements, test et prod. Dans votre fichier de remplacement, les définitions pourraient ressembler à ceci :

...
envs:
  - name: test
    serviceAccountPaths:
      synchronizer: "your_keypath/PROJECT_ID-apigee-synchronizer.json"
      runtime: "your_keypath/PROJECT_ID-apigee-runtime.json"
      udca: "your_keypath/PROJECT_ID-apigee-udca.json"
  - name: prod
    serviceAccountPaths:
      synchronizer: "your_keypath/PROJECT_ID-apigee-synchronizer.json"
      runtime: "your_keypath/PROJECT_ID-apigee-runtime.json"
      udca: "your_keypath/PROJECT_ID-apigee-udca.json"
...

Pour supprimer l'environnement prod, procédez comme suit :

  1. Obtenez vos identifiants d'authentification gcloud :
    TOKEN=$(gcloud auth print-access-token)
  2. Par précaution, dissociez l'environnement de chaque groupe d'environnements auquel il est associé. Cela empêche le trafic d'être acheminé vers l'environnement avant que vous ne supprimiez ses composants d'exécution.
    1. Répertoriez les rattachements du groupe d'environnements et notez l'name (ID de rattachement) du rattachement dont l'environment est prod :

      Sans résidence des données

      curl -H "Authorization: Bearer $TOKEN" \
        "https://apigee.googleapis.com/v1/organizations/ORG_NAME/envgroups/ENV_GROUP/attachments"

      Résidence des données

      curl -H "Authorization: Bearer $TOKEN" \
        "https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/ORG_NAME/envgroups/ENV_GROUP/attachments"

      Le résultat ressemble à ce qui suit :

      {
        "environmentGroupAttachments": [
          {
            "name": "f6f2958f-a0a1-4260-b9e9-80eead82ff1d",
            "environment": "prod",
            "createdAt": "1789700385118",
            "environmentGroupId": "ENV_GROUP"
          }
        ]
      }
    2. Supprimez le rattachement :

      Sans résidence des données

      curl -X DELETE -H "Authorization: Bearer $TOKEN" \
        "https://apigee.googleapis.com/v1/organizations/ORG_NAME/envgroups/ENV_GROUP/attachments/ATTACHMENT_ID"

      Avec résidence des données

      curl -X DELETE -H "Authorization: Bearer $TOKEN" \
        "https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/ORG_NAME/envgroups/ENV_GROUP/attachments/ATTACHMENT_ID"

    Où :

    • ORG_NAME est le nom de votre organisation Apigee.
    • ENV_GROUP est le nom du groupe d'environnements.
    • ATTACHMENT_ID est l'élément name du rattachement renvoyé à l'étape précédente. Il s'agit d'un ID généré, et non du nom de l'environnement.
    • CONTROL_PLANE_LOCATION est l'emplacement du plan de contrôle de votre organisation si vous utilisez la résidence des données.

    Répétez ces étapes pour chaque groupe d'environnements auquel l'environnement est associé.

  3. Effectuez une simulation pour tester la suppression des composants d'exécution :
    helm delete ENV_RELEASE_NAME -n APIGEE_NAMESPACE --dry-run
    
    • ENV_RELEASE_NAME est le nom avec lequel vous avez déjà installé le chart apigee-env pour cet environnement. Il s'agit souvent du nom de l'environnement. Pour lister les noms de versions dans votre espace de noms, exécutez helm list -n APIGEE_NAMESPACE.
    • APIGEE_NAMESPACE est l'espace de noms dans lequel vous avez installé Apigee hybrid, apigee par défaut.

    L'option --dry-run simule la désinstallation sans rien supprimer, et son résultat est identique à celui de la désinstallation réelle. Contrairement à helm upgrade, helm delete n'accepte pas de valeur pour --dry-run, telle que --dry-run=server. Exemple :

    helm delete prod -n apigee --dry-run
    release "prod" uninstalled
  4. Si le dry run est correct, supprimez les composants d'exécution :
    helm delete ENV_RELEASE_NAME -n APIGEE_NAMESPACE
    
  5. Ouvrez votre fichier de remplacement et supprimez la définition d'environnement prod de envs, ne laissant que la définition test. Exemple :
    ...
    envs:
      - name: test
        serviceAccountPaths:
          synchronizer: "your_keypath/PROJECT_ID-apigee-synchronizer.json"
          runtime: "your_keypath/PROJECT_ID-apigee-runtime.json"
          udca: "your_keypath/PROJECT_ID-apigee-udca.json"
    ...
  6. Enregistrez le fichier.
  7. Supprimez l'environnement du plan de gestion. Vous pouvez utiliser l'interface utilisateur d'Apigee ou l'API Delete environments.

    UI Apigee

    1. Dans la console Google Cloud , accédez à la page Apigee > Gestion > Environnements.

      Accéder à la page Environnements

    2. Sélectionnez le projet de votre organisation Apigee.
    3. Sur la ligne de l'environnement prod, cliquez sur Actions > Supprimer.

    API

    Sans résidence des données :

    curl -X DELETE -H "Authorization: Bearer $TOKEN" \
      "https://apigee.googleapis.com/v1/organizations/ORG_NAME/environments/prod"

    Avec résidence des données :

    curl -X DELETE -H "Authorization: Bearer $TOKEN" \
      "https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/ORG_NAME/environments/prod"

    L'appel renvoie une opération de longue durée. La suppression peut prendre quelques minutes.