Aller au contenu

Décommissionnement#

Warning

Cette documentation a été écrite pour l'ancienne plateforme NGOTALPHA

Elle doit être revue et corrigée.

L'ensemble des actions suivantes doivent être tracées dans un CAASCHR.

Décommissionnement d'une instance de YACE#

L'opération s'effectue en trois étapes :

  1. suppression du mot de passe dans Vault infra
  2. suppression des données dans Caascad-Zones
  3. réinstallation du composant YACE et de ses Prometheus-Rules avec Trackbone

Suppression des AK/SK dans Vault infra.#

Authentification au Vault infra#

INFRA_ZONE_NAME="" # infra-stg | infra-prd
export VAULT_ADDR="https://vault.${INFRA_ZONE_NAME}.caascad.com"
vault login -method oidc

Suppression des AK/SK dans Vault infra#

ZONE=""
YACE_ACCOUNT_NAME=$(sd get zones | jq -r ".\"${ZONE}\".monitoring.yace[].account_name")
YACE_ACCOUNT_ID=$(sd get zones | jq -r ".\"${ZONE}\".monitoring.yace[].account_id")
# Vérification avant la suppression dans Vault
echo "secret/zones/fe/${ZONE}/yace-client/${YACE_ACCOUNT_NAME}-${YACE_ACCOUNT_ID}"
# Si les variables sont correctes
vault delete "secret/zones/fe/${ZONE}/yace-client/${YACE_ACCOUNT_NAME}-${YACE_ACCOUNT_ID}"

Suppression des données dans Caascad-Zones#

Modification du fichier ~/git/caascad/terraform/envs-ng/zones/caascad_zones/zones_cloudavenue.cue#

Création une branche dans le repository envs-ng.

Suppression des données dans la clé .${ZONE}.monitoring.yace

Vérification et génération des fichiers de zones

cd ~/git/caascad/terraform/envs-ng/zones/caascad_zones
cue vet -c
cd ../../
generate-static-zones-files
cat ~/git/caascad/terraform/envs-ng/gen/zones_static/zones.json | jq '."${ZONE}".monitoring.yace'

Si les Vérifications sont OK, vous pouvez demander la review de votre MR et fermer votre CAASCHR.

Réinstallation de YACE et des Prometheus-Rules#

ZONE=""
cd ~/git/caascad/terraform/envs-ng/contexts/ngotalpha
trackbone apply -z ${ZONE} -c yace-client
trackbone apply -z ${ZONE} -c prometheus-rules

Note

Un déploiement consiste à déployer tous les yaces déclarés. En ayant supprimé la déclaration d'un yace, la réinstallation aura pour effet de supprimer ce yace devenu non déclaré.

Décommissionnement du multi YACE#

L'opération s'effectue en trois étapes :

  1. désinstallation du composant YACE avec Trackbone
  2. suppression du mot de passe dans Vault infra
  3. suppression des données dans Caascad-Zones
  4. réinstallation des Prometheus-Rules avec Trackbone

Désinstallation de YACE#

ZONE=""
cd ~/git/caascad/terraform/envs-ng/contexts/ngotalpha
trackbone destroy -z ${ZONE} -c yace-client

Suppression du mot de passe dans Vault infra.#

Authentification au Vault infra#

INFRA_ZONE_NAME="" # infra-stg | infra-prd
export VAULT_ADDR="https://vault.${INFRA_ZONE_NAME}.caascad.com"
vault login -method oidc

Suppression des AK/SK dans Vault infra#

ZONE=""
YACE_ACCOUNT_NAME=$(sd get zones | jq -r ".\"${ZONE}\".monitoring.yace[].account_name")
YACE_ACCOUNT_ID=$(sd get zones | jq -r ".\"${ZONE}\".monitoring.yace[].account_id")
# Vérification avant la suppression dans Vault
echo "secret/zones/fe/${ZONE}/yace-client/${YACE_ACCOUNT_NAME}-${YACE_ACCOUNT_ID}"
# Si les variables sont correctes
vault delete "secret/zones/fe/${ZONE}/yace-client/${YACE_ACCOUNT_NAME}-${YACE_ACCOUNT_ID}"

Suppression des données dans Caascad-Zones#

Modification du fichier ~/git/caascad/terraform/envs-ng/zones/caascad_zones/zones_cloudavenue.cue#

Création une branche dans le repository envs-ng.

Suppression des données dans la clé .${ZONE}.monitoring.yace

Vérification et génération des fichiers de zones

cd ~/git/caascad/terraform/envs-ng/zones/caascad_zones
cue vet -c
cd ../../
generate-static-zones-files
cat ~/git/caascad/terraform/envs-ng/gen/zones_static/zones.json | jq '."${ZONE}".monitoring.yace'

Réinstallation des Prometheus-Rules avec Trackbone#

Note

Un déploiement consiste à déployer toutes les Prometheus-Rules déclarées. En ayant supprimé la déclaration d'un YACE, la réinstallation aura pour effet de supprimer les Prometheus-Rules inutiles.

cd ~/git/caascad/terraform/envs-ng/contexts/ngotalpha
trackbone apply -z ${ZONE} -c prometheus-rules

Vérification et merge de la branche dans envs-ng#

Vérifier le plan trackbone#

Plan du déploiement :

cd ~/git/caascad/terraform/envs-ng/contexts/ngotalpha
trackbone plan -z ${ZONE} -c yace-client
La sortie du plan :
FATAL No targets found.

Ce message d'erreur indique que le décommissionnement de YACE est terminé.

Si tout est OK, vous pouvez demander la review de votre MR et fermer votre CAASCHR.