Aller au contenu principal

Changer l'adresse IP d'un serveur BlueMind

Le présent document décrit la marche à suivre pour modifier l'adresse IP d'un serveur BlueMind.

opération sensible

Cette procédure est volontairement peu détaillée afin d'être réservée à des administrateurs expérimentés qui maîtrisent les opérations sensibles réalisées.

Procédure de changement d'adresse IP

Fichiers impactés

La commande suivante permet d'identifier les fichiers impactés par ce changement : grep -lir <old_ip> /etc

On considère dans les commandes ci-après:

  • <old_ip> est l'ancienne adresse IP,
  • <new_ip> est la nouvelle

Procédure :

  1. Stopper BlueMind :
    bmctl stop
    systemctl mask bluemind.target
  2. Démarrer postgresql :
    systemctl start postgresql
  3. Mettre à jour les informations en base de données :

    💡 En cas de demande de mot de passe, saisir le mot de passe de la base de données. Il peut se trouver dans le fichier /etc/bm/bm.ini.

    export new_ip=xx.xx.xxx.xxx
    export old_ip=xx.xx.xxx.xxx
    export fqdn=$(grep ${old_ip} /etc/hosts | awk '{print $2}');
    sudo -Hu postgres psql bj -c "update t_server set ip = '${new_ip}',fqdn = '${fqdn}' where ip = '${old_ip}'; update t_systemconf set configuration = configuration || hstore('host','${new_ip}') || hstore('hz-member-address', '${new_ip}') || hstore('mynetworks', '${new_ip}') || hstore('redis-bootstrap-address', '${new_ip}');"
  4. Mettre à jour la configuration réseau du serveur avec la nouvelle IP
  5. Mettre à jour le fichier /etc/hosts
    sed -i "s/${old_ip}/${new_ip}/g" /etc/hosts
  6. Modifier le fichier /etc/bm/bm.ini et remplacer l'adresse des paramètres "host" et "hz-member-address" par la nouvelle adresse IP
    sed -i "s/${old_ip}/${new_ip}/g" /etc/bm/bm.ini
  7. Redémarrer la machine:
    reboot
  8. Relancer BlueMind et le node :
    systemctl unmask bluemind.target
    bmctl start
    systemctl restart bm-node
  9. Supprimer et re-créer les realms keycloak :
    bm-cli auth reconfigure
    systemctl restart bm-keycloak
  10. Modifier l'arborescence de /var/backups/bluemind pour renommer le dossier /var/backups/bluemind/dp_spool/rsync/<old_ip> avec la nouvelle adresse IP

Reconfiguration du système

Manuellement

  1. Reconfigurer le pare-feu :
    sed -i "s/${old_ip}/${new_ip}/g" /etc/init.d/bm-iptables
    systemctl restart bm-iptables.service
  2. Reconfigurer postfix :
    sed -i "s/${old_ip}/${new_ip}/g" /etc/postfix/main.cf /etc/postfix/transport-flat
    postmap /etc/postfix/transport-flat
    mv /etc/postfix/transport-flat.db /etc/postfix/transport.db
  3. Lancer la reconfiguration de l'outil de supervision bm-tick :
    kapacitor list tasks |  awk '{print $1}' | grep -v ID | xargs -I {} kapacitor delete tasks {}
    bm-cli tick reconfigure

Via l'AdminConsole

Se connecter à la console d'administration de BlueMind en tant qu'utilisateur admin0@global.virt puis :

  1. Se rendre dans la partie Sécurité > Gestion du pare-feu et cliquer immédiatement sur le bouton "Enregistrer" pour forcer la régénération des règles du pare-feu BlueMind
  2. Se rendre dans la partie Gestion du Système > Maintenance des mails, cliquer sur le bouton "Exécuter" pour re-générer les tables de routage de mails Postfix
  3. Se rendre dans la partie Gestion du Système > Configuration Système et remplacer l'ancienne adresse IP du champ "Mes réseaux" par la nouvelle adresse ou plage d'adresse pour laquelle on souhaite être relais ouvert avant de cliquer sur le bouton "Enregistrer"
  4. Lancer la reconfiguration de l'outil de supervision bm-tick :
    kapacitor list tasks |  awk '{print $1}' | grep -v ID | xargs -I {} kapacitor delete tasks {}
    bm-cli tick reconfigure

Pour aller plus loin

Consultez la documentation BlueMind en relation