Affichage des résultats 1 à 4 sur 4

Discussion: Failover avec deux serveurs Asterisk

  1. #1
    Membre Junior
    Date d'inscription
    juin 2016
    Messages
    12
    Downloads
    0
    Uploads
    0

    Failover avec deux serveurs Asterisk

    Salut la communauté,
    J'ai quelques questions sur le fonctionnement et la mise en place d'une redondance avec deux PABX.

    1- Supposons que nous avons deux PABX avec un switch failover par exemple.
    Les configurations bien sur doivent être identiques sur les des serveurs.
    Est-ce qu'on doit obligatoirement configurer le secondaire ou c'est le système qui va se charger de copier les configurations du primaire sur le secondaire, un peut comme avec les DNS?

    2- En cas de défaillance du primaire, le secondaire prend le relais, comment est géré le cas de l'adresse IP du serveur?
    Il y a t-il un mécanisme qui permet au secondaire de récupérer l'adresse du primaire? Ou on doit reconfigurer les clients?

    Merci

  2. #2
    Asterisk Fan Avatar de fastm3
    Date d'inscription
    août 2010
    Localisation
    Corbeil Essonnes (91)
    Messages
    1 302
    Downloads
    1
    Uploads
    1
    google drbd heartbeat devrait te donner des pistes pour une possibilité.
    Note que si tu ne veux pas tout reinventer. Des distribs facilitent la tache pour cela ( xivo par exemple mais pas testé )
    Apres , un simple backup grace aux telephones qui ont un serveur de backup peut aussi etre suffisant quelque fois.
    Francois.

  3. #3
    Membre Senior
    Date d'inscription
    novembre 2013
    Localisation
    Bordeaux
    Messages
    427
    Downloads
    0
    Uploads
    0
    Pour ce qui est de la bascule des téléphones, je te conseille de regarder aussi du coté de DNS-SRV. Il n'est pas obligatoire de passer par une IP partagée.

    Le plus chiant gérer sera les appels entrants.
    Il faudra décider si tu as un même trunk sip sur les deux serveurs mais qu'il n'est actif que d'un coté à la fois ou éventuellement avoir un compte sip différant par serveur mais un opérateur capable d'envoyer l'appel sur le compte du serveur backup si le principal est déconnecté.

    Je donne un exemple simple mais sale pour dupliquer une conf entre deux freepbx mais en étant connecté à l'opérateur avec un compte sip différant

    Export sur la prod

    Code:
    #!/bin/sh
    # sert a dupliquer la configuration locale pour l'envoyer vers le serveur de secours
    
    # Copie: la base asterisk mysql, la base interne asterisk, le repertoire /etc/asterisk
    # et les fichiers son 
    SQLUSER=asteriskuser
    SQLPASS=xxxxxxx
    
    TMP=/data/tmp
    
    DESTDISTANT=transfert_data@secours:
    
    # copie des repertoires
    
    ( cd /etc && tar czf $TMP/astconfig.tar.gz asterisk )
    ( cd /var/www/html/admin && tar czf $TMP/freepbxmodules.tar.gz modules ) 
    ( cd /var/lib/asterisk &&  tar czf $TMP/moh.tar.gz moh* )
    ( cd /var/lib/asterisk/sounds  &&  tar czf $TMP/snd_custom.tar.gz custom) 
    
    # sauvegarde mysql
    mysqldump -u $SQLUSER --password=$SQLPASS asterisk > $TMP/asterisk.sql
    
    # sauvegarde astdb
    php /usr/local/scripts/bascule/dumpastdb_pra.php
    
    
    ( cd $TMP && scp astdb.dump asterisk.sql freepbxmodules.tar.gz astconfig.tar.gz moh.tar.gz snd_custom.tar.gz  $DESTDISTANT )

    import sur le secours

    Code:
    # importe dans la conf asterisk les données de prod, mais désative les trunks
    export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    
    
    SQLUSER=asteriskuser
    SQLPASS=xxxxx
    
    DATADIR=/home/transfert_data
    
    # import des fichiers de conf 
    tar zxpf $DATADIR/astconfig.tar.gz -C /etc
    tar zxpf $DATADIR/freepbxmodules.tar.gz -C /var/www/html/admin/
    tar zxpf $DATADIR/moh.tar.gz -C /var/lib/asterisk
    tar zxpf $DATADIR/snd_custom.tar.gz -C /var/lib/asterisk/sounds
    
    
    # import astdb
    /usr/local/scripts/bascule/restore_prodastdb.php
    
    
    # converti les comptes des trunks en change login mot de passe
    #axialys
    sed -i 's/username_trunk1/username_trunk2/g'  $DATADIR/asterisk.sql
    sed -i 's/pass_trunk1/pass_trunk2/g'  $DATADIR/asterisk.sql
    
    # importbase mysql
    mysql -u $SQLUSER --password=$SQLPASS asterisk < $DATADIR/asterisk.sql
    
    
    # relance asterisk
    amportal a reload

  4. #4
    Membre Junior
    Date d'inscription
    juin 2016
    Messages
    12
    Downloads
    0
    Uploads
    0
    Désolé pour le retard. Merci à vous
    Je vais suivre vos pistes et voir ce que çà va donner.
    Merci Tanguyd pour l'exemple.

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •