15.9. Suppression du basculement IP
Lors de la configuration initiale du basculement IP, les nœuds de travail du cluster sont modifiés avec une règle iptables
qui autorise explicitement les paquets multicast sur 224.0.0.18
pour Keepalived. En raison de la modification des nœuds, la suppression du basculement IP nécessite l'exécution d'un travail pour supprimer la règle iptables
et supprimer les adresses IP virtuelles utilisées par Keepalived.
Procédure
Facultatif : identifiez et supprimez tous les scripts de contrôle et de notification qui sont stockés sous forme de cartes de configuration :
Identifier si des pods pour le basculement IP utilisent une carte de configuration comme volume :
$ oc get pod -l ipfailover \ -o jsonpath="\ {range .items[?(@.spec.volumes[*].configMap)]} {'Namespace: '}{.metadata.namespace} {'Pod: '}{.metadata.name} {'Volumes that use config maps:'} {range .spec.volumes[?(@.configMap)]} {'volume: '}{.name} {'configMap: '}{.configMap.name}{'\n'}{end} {end}"
Exemple de sortie
Namespace: default Pod: keepalived-worker-59df45db9c-2x9mn Volumes that use config maps: volume: config-volume configMap: mycustomcheck
Si l'étape précédente a fourni les noms des cartes de configuration utilisées comme volumes, supprimez les cartes de configuration :
oc delete configmap <configmap_name> $ oc delete configmap <configmap_name>
Identifier un déploiement existant pour le basculement IP :
$ oc get deployment -l ipfailover
Exemple de sortie
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE default ipfailover 2/2 2 2 105d
Supprimer le déploiement :
oc delete deployment <ipfailover_deployment_name>
Supprimez le compte de service
ipfailover
:$ oc delete sa ipfailover
Exécutez un travail qui supprime la règle des tables IP ajoutée lors de la configuration initiale du basculement IP :
Créez un fichier tel que
remove-ipfailover-job.yaml
dont le contenu est similaire à l'exemple suivant :apiVersion: batch/v1 kind: Job metadata: generateName: remove-ipfailover- labels: app: remove-ipfailover spec: template: metadata: name: remove-ipfailover spec: containers: - name: remove-ipfailover image: quay.io/openshift/origin-keepalived-ipfailover:4.12 command: ["/var/lib/ipfailover/keepalived/remove-failover.sh"] nodeSelector: kubernetes.io/hostname: <host_name> <.> restartPolicy: Never
<.> Exécutez la tâche pour chaque nœud de votre cluster qui a été configuré pour le basculement IP et remplacez le nom d'hôte à chaque fois.
Exécuter le travail :
$ oc create -f remove-ipfailover-job.yaml
Exemple de sortie
job.batch/remove-ipfailover-2h8dm created
Vérification
Confirmez que le travail a supprimé la configuration initiale du basculement IP.
$ oc logs job/remove-ipfailover-2h8dm
Exemple de sortie
remove-failover.sh: OpenShift IP Failover service terminating. - Removing ip_vs module ... - Cleaning up ... - Releasing VIPs (interface eth0) ...