Ce guide explique comment supprimer la solution de démarrage rapide de l'application Web Java pour le partage de grands volumes de données. Vous pouvez utiliser ce guide pour supprimer un déploiement existant de la solution.
L'application Web Java pour le partage de grands volumes de données ne peut plus être déployée à partir de la console Google Cloud et n'est plus prise en charge.
Coût
Pour obtenir une estimation du coût des ressources Google Cloud utilisées par la solution d'application Web Java pour le partage de grands volumes de données, consultez l'estimation précalculée dans le Simulateur de coût Google Cloud.
Utilisez l'estimation comme point de départ pour calculer le coût de votre déploiement. Vous pouvez modifier l'estimation afin qu'elle reflète les modifications de configuration que vous avez apportées aux ressources utilisées dans la solution.
L'estimation précalculée est basée sur des hypothèses pour certains facteurs, y compris les suivants :
- Emplacements Google Cloud où les ressources sont déployées.
- La durée d'utilisation des ressources.
Vous pouvez également examiner les coûts d'utilisation des ressources que vous avez déployées. Pour en savoir plus, consultez la page Afficher les rapports de facturation et l'évolution des coûts.
Obtenir les autorisations IAM requises
Pour supprimer un déploiement existant, vous devez disposer des autorisations IAM (Identity and Access Management) listées dans le tableau suivant. Si vous disposez du rôle de base roles/owner
pour le projet dans lequel la solution est déployée, vous disposez déjà de toutes les autorisations nécessaires. Si vous ne disposez pas du rôle roles/owner
, demandez à votre administrateur de vous accorder ces autorisations (ou des rôles qui les incluent).
Autorisation IAM requise | Rôle prédéfini incluant les autorisations requises |
---|---|
|
Administrateur Service Usage ( roles/serviceusage.serviceUsageAdmin ) |
|
Administrateur de compte de service ( roles/iam.serviceAccountAdmin ) |
|
Administrateur de projet IAM ( roles/resourcemanager.projectIamAdmin ) |
config.deployments.create config.deployments.list |
Administrateur Cloud Infrastructure Manager ( roles/config.admin ) |
Compte de service créé pour la solution
Lorsque vous lancez le processus de suppression via la console, un compte de service est créé pour déployer la solution en votre nom (et pour supprimer le déploiement ultérieurement si vous le souhaitez). Certaines autorisations IAM sont attribuées temporairement à ce compte de service. En d'autres termes, les autorisations sont révoquées automatiquement une fois les opérations de déploiement et de suppression de la solution terminées. Nous vous recommandons de supprimer le compte de service après avoir supprimé le déploiement, comme décrit plus loin dans ce guide.
Afficher les rôles attribués au compte de service
Ces rôles sont listés ici si un administrateur de votre projet ou de votre organisation Google Cloud a besoin de ces informations.
roles/storage.admin
roles/datastore.owner
roles/appengine.appAdmin
roles/compute.admin
roles/compute.networkAdmin
roles/cloudtrace.admin
roles/iam.serviceAccountUser
roles/run.admin
roles/monitoring.admin
roles/vpcaccess.admin
Supprimer le déploiement
Lorsque vous n'avez plus besoin du déploiement de la solution, supprimez-le pour éviter de continuer à payer des frais pour les ressources que vous avez créées.
Supprimer le projet
Si vous avez déployé la solution dans un nouveau projet Google Cloud et si vous n'avez plus besoin du projet, supprimez-le en procédant comme suit :
- Dans la console Google Cloud, accédez à la page Gérer les ressources.
- Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
- Lorsque vous y êtes invité, saisissez l'ID du projet, puis cliquez sur Arrêter.
Si vous décidez de conserver le projet, supprimez le compte de service créé pour cette solution, comme décrit dans la section suivante.
Supprimer via la console
Si vous supprimez le déploiement de la solution via la console, la base de données Firestore ne sera pas supprimée. Pour supprimer cette base de données, supprimez le projet comme décrit précédemment.
Suivez cette procédure si vous avez déployé la solution via la console.
Dans la console Google Cloud, accédez à la page Déploiements de solutions.
Sélectionnez le projet contenant le déploiement que vous souhaitez supprimer.
Recherchez le déploiement que vous souhaitez supprimer.
Cliquez sur
Actions, puis sélectionnez Supprimer.Saisissez le nom du déploiement, puis cliquez sur Confirmer.
Le champ État indique Suppression.
Si la suppression échoue, consultez les conseils de dépannage de la section Erreur lors de la suppression d'un déploiement.
Lorsque vous n'avez plus besoin du projet Google Cloud que vous avez utilisé pour la solution, vous pouvez le supprimer. Pour en savoir plus, consultez la section Facultatif : supprimer le projet.
Suppression à l'aide de la CLI Terraform
Si vous supprimez le déploiement de la solution à l'aide de la CLI Terraform, la base de données Firestore ne sera pas supprimée. Pour supprimer cette base de données, supprimez le projet comme décrit précédemment.
Suivez cette procédure si vous avez déployé la solution à l'aide de la CLI Terraform.
Dans Cloud Shell, assurez-vous que le répertoire de travail actuel est
$HOME/cloudshell_open/terraform-large-data-sharing-java-webapp/infra
. Si ce n'est pas le cas, accédez à ce répertoire :Supprimez les ressources provisionnées par Terraform :
terraform destroy
Terraform affiche la liste des ressources qui seront supprimées.
Lorsque vous êtes invité à effectuer les actions, saisissez
yes
.Terraform affiche des messages de progression. Une fois toutes les ressources supprimées, Terraform affiche le message suivant :
Destroy complete!
Si la suppression échoue, consultez les conseils de dépannage de la section Erreur lors de la suppression d'un déploiement.
Lorsque vous n'avez plus besoin du projet Google Cloud que vous avez utilisé pour la solution, vous pouvez le supprimer. Pour en savoir plus, consultez la section Facultatif : supprimer le projet.
Facultatif : supprimer le compte de service
Si vous avez supprimé le projet que vous avez utilisé pour la solution, ignorez cette section.
Comme mentionné précédemment dans ce guide, lorsque vous avez déployé la solution, un compte de service a été créé en votre nom. Certaines autorisations IAM ont été accordées temporairement au compte de service. Autrement dit, les autorisations ont été révoquées automatiquement après la fin des opérations de déploiement et de suppression de la solution, mais le compte de service n'est pas supprimé. Nous vous recommandons de supprimer ce compte de service.
Si vous avez déployé la solution via la console Google Cloud, accédez à la page Déploiements de solutions. (Si vous êtes déjà sur cette page, actualisez le navigateur.) Un processus est déclenché en arrière-plan pour supprimer le compte de service. Aucune autre action n'est nécessaire.
Si vous avez déployé la solution à l'aide de la CLI Terraform, procédez comme suit :
Dans Google Cloud Console, accédez à la page Comptes de service.
Sélectionnez le projet que vous avez utilisé pour la solution.
Sélectionnez le compte de service que vous souhaitez supprimer.
L'ID d'adresse e-mail du compte de service créé pour la solution est au format suivant :
goog-sc-DEPLOYMENT_NAME-NNN@PROJECT_ID.iam.gserviceaccount.com
L'ID d'adresse e-mail contient les valeurs suivantes :
- DEPLOYMENT_NAME : nom du déploiement.
- NNN : nombre aléatoire à trois chiffres.
- PROJECT_ID : ID du projet dans lequel vous avez déployé la solution.
Cliquez sur Supprimer.
Résoudre les erreurs
Les actions à effectuer pour diagnostiquer et résoudre les erreurs dépendent de la méthode de déploiement et de la complexité de l'erreur.
Erreur lors de la suppression d'un déploiement
Dans certains cas, les tentatives de suppression d'un déploiement peuvent échouer :
- Après avoir déployé une solution via la console, si vous modifiez une ressource provisionnée par la solution et que vous essayez de supprimer le déploiement, la suppression peut échouer. Le champ État de la page Déploiements de solutions indique Échec. Le journal Cloud Build affiche la cause de l'erreur.
- Après avoir déployé une solution à l'aide de la CLI Terraform, si vous modifiez une ressource à l'aide d'une interface autre que Terraform (par exemple, la console), et que vous essayez de supprimer le déploiement, la suppression peut échouer. Les messages dans le résultat de la commande
terraform destroy
indiquent la cause de l'erreur.
Examinez les journaux et les messages d'erreur, identifiez et supprimez les ressources à l'origine de l'erreur, puis essayez à nouveau de supprimer le déploiement.
Si un déploiement effectué à partir de la console n'est pas supprimé et si vous ne pouvez pas diagnostiquer l'erreur à l'aide du journal Cloud Build, vous pouvez supprimer le déploiement à l'aide de la CLI Terraform, comme décrit dans la section suivante.
Supprimer un déploiement effectué à partir de la console à l'aide de la CLI Terraform
Cette section explique comment supprimer un déploiement effectué à partir de la console si des erreurs se produisent lorsque vous essayez de le supprimer via la console. Dans cette approche, vous téléchargez la configuration Terraform du déploiement que vous souhaitez supprimer, puis vous supprimez le déploiement à l'aide de la CLI Terraform.
Identifiez la région dans laquelle le code Terraform, les journaux et d'autres données du déploiement sont stockés. Cette région peut être différente de celle que vous avez sélectionnée lors du déploiement de la solution.
Dans la console Google Cloud, accédez à la page Déploiements de solutions.
Sélectionnez le projet contenant le déploiement que vous souhaitez supprimer.
Dans la liste des déploiements, identifiez la ligne correspondant au déploiement que vous souhaitez supprimer.
Cliquez sur
Afficher tout le contenu de la ligne.Dans la colonne Emplacement, notez le deuxième emplacement, comme indiqué dans l'exemple suivant :
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Créez des variables d'environnement pour l'ID de projet, la région et le nom du déploiement que vous souhaitez supprimer :
export REGION="REGION" export PROJECT_ID="PROJECT_ID" export DEPLOYMENT_NAME="DEPLOYMENT_NAME"
Dans ces commandes, remplacez les éléments suivants :
- REGION : emplacement que vous avez noté précédemment dans cette procédure.
- PROJECT_ID : ID du projet dans lequel vous avez déployé la solution.
- DEPLOYMENT_NAME : nom du déploiement que vous souhaitez supprimer.
Obtenez l'ID de la dernière révision du déploiement que vous souhaitez supprimer :
export REVISION_ID=$(curl \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://config.googleapis.com/v1alpha2/projects/${PROJECT_ID}/locations/${REGION}/deployments/${DEPLOYMENT_NAME}" \ | jq .latestRevision -r) echo $REVISION_ID
Le résultat ressemble à ce qui suit :
projects/PROJECT_ID/locations/REGION/deployments/DEPLOYMENT_NAME/revisions/r-0
Obtenez l'emplacement Cloud Storage de la configuration Terraform pour le déploiement :
export CONTENT_PATH=$(curl \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://config.googleapis.com/v1alpha2/${REVISION_ID}" \ | jq .applyResults.content -r) echo $CONTENT_PATH
Voici un exemple de résultat de cette commande :
gs://PROJECT_ID-REGION-blueprint-config/DEPLOYMENT_NAME/r-0/apply_results/content
Téléchargez la configuration Terraform de Cloud Storage vers Cloud Shell :
gsutil cp -r $CONTENT_PATH $HOME cd $HOME/content/infra
Attendez que le message
Operation completed
s'affiche, comme illustré dans l'exemple suivant :Operation completed over 45 objects/268.5 KiB
Initialisez Terraform :
terraform init
Attendez que le message suivant s'affiche :
Terraform has been successfully initialized!
Supprimez les ressources déployées :
terraform destroy
Terraform affiche la liste des ressources qui seront supprimées.
Si des avertissements concernant des variables non déclarées s'affichent, ignorez-les.
Lorsque vous êtes invité à effectuer les actions, saisissez
yes
.Terraform affiche des messages de progression. Une fois toutes les ressources supprimées, Terraform affiche le message suivant :
Destroy complete!
Supprimez l'artefact de déploiement :
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://config.googleapis.com/v1alpha2/projects/${PROJECT_ID}/locations/${REGION}/deployments/${DEPLOYMENT_NAME}?force=true&delete_policy=abandon"
Attendez quelques secondes, puis vérifiez que l'artefact de déploiement a été supprimé :
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://config.googleapis.com/v1alpha2/projects/${PROJECT_ID}/locations/${REGION}/deployments/${DEPLOYMENT_NAME}" \ | jq .error.message
Si le résultat indique
null
, attendez quelques secondes, puis exécutez à nouveau la commande.Une fois l'artefact de déploiement supprimé, un message s'affiche comme illustré dans l'exemple suivant :
Resource 'projects/PROJECT_ID/locations/REGION/deployments/DEPLOYMENT_NAME' was not found
Étapes suivantes
- Découvrez d'autres solutions de démarrage rapide.
- Découvrez comment Sharechat utilise Cloud CDN pour distribuer du contenu de haute qualité et à faible latence aux utilisateurs, à tout moment et n'importe où.
- Consultez la présentation de Cloud CDN.
- Découvrez les bonnes pratiques pour Cloud CDN