Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Sv translation
languageen

Introduction

A jtel ACD consists of a minimum of 2 virtual machines and may grow to sizes of 30 or more, depending on redundancy or performance requirements. Based on a systems architecture, there are certain dependencies between the services, so a clean startup and shutdown is required and only done in a certain order to prevent problems during and after startup. The following pages describe the general parameters, as well as some of the various possible scenarios for proper shutdown and startup procedures, depending on the systems architecture. 

Info
titleOn Premise

Caution for on premise jtel ACD systems:

Shutting down and starting the virtual machines of your jtel System is not part of the jtel service contract and may incur service fees as a result, if assistance from jtel is required. For further information, or to book a service appointment, please contact us at service@jtel.de 

Page Layout

The pages are split into a parent and child pages. This parent page contains general information. The child pages each contain information about the specific procedure, depending on the sizing of the system. The sizing variants are Small, Medium and Large

Redundancy - Controlled Failovers

If you wish to shutdown only one side of your redundant jtel cluster, the following child page provides a guide for this procedure  Shutdown/Startup Procedure - Redundancy - Controlled Failover and Failback

This procedure is useful for cases where one of your VM-Hosts must be shutdown, but your jtel ACD is required to maintain service during this time. 

jtel System Dependencies

All services of the platform are dependent on two central entities:

  • The Storage(s)
  • The Database(s)

To boot the solution, the storage should always be booted first. If this is external to the solution, continue with the next step. Otherwise, the computer (or in case of redundancy - both computers) is started on which the storage is located. This is usually the load balancer, but for larger systems a separate storage machine could have been implemented. Afterwards, the master database is booted. As soon as its is finished, the slave can be started up. Finally, the telephony servers and web servers can be started up in any order, even simultaneously.

Redundant Systems

Shutting down redundant clusters is generally easier than starting them back up. If problems occur after starting back up, some components must be checked:

Database:

  • MySQL Replication between all replication partners

Load Balancing:

  • pcs cluster status

Storage:

  • pcs cluster status
  • drbd status

Checks after starting a system

To ensure proper system functionality after a boot, tests are required. Follow the guideline on this page: System Health Check

Machines and Shutdown Priorities

Info

The Hostnames of an ACDs jtel virtual machines may not be in concurrence with the aliases displayed below.


AliasSignifiesShutdown PriorityStartup Priority
acd-dbmDatabase MasterThirdThird
acd-dbm1First Database MasterThirdThird
acd-dbm2Second Database MasterThirdThird
acd-dbsDatabase SlaveSecondFourth
acd-dbs1First Database SlaveSecondFourth
acd-dbs2Second Database SlaveSecondFourth
acd-dbrReporting DatabaseSecondFourth
acd-lbThe Load BalancerFourthSecond
acd-lb1First Load BalancerFourthSecond
acd-lb2Second Load BalancerFourthSecond
acd-storeThe File StorageLastFirst

acd-tel1 ... acd-telN

The Telephony Machine(s) Numbered from 1 ... NFirstLast

acd-jb1 ... acd-jbN

The Webserver Machine(s) Numbered from 1 ... NFirstLast
acd-apiThe REST-APIFirstLast
acd-chatChat and or WhatsAppFirstLast
acd-chatbotChatbot FirstLast


Sv translation
languagede


Warning
titleAlt

Diese Seite ist veraltet und aktuell nur in englischer Version verfügbar.

Hoch- und Runterfahren

Alle Systeme sind so gestaltet, dass Sie hochfahren und alle Dienste selbstständig starten.

Dennoch ergeben sich gewisse Abhängigkeiten zwischen den Diensten, sodass ein sauberes Hoch- und Herunterfahren am besten geschieht, wenn eine gewisse Reihenfolge betrachtet wird. 

Hochfahren

Abhängigkeiten

Alle Dienste der Plattform sind von zwei zentrale Entitäten abhängig:

  • Das Storage
  • Die Datenbank(en)

Für das Hochfahren der Lösung, sollte immer zuerst das Storage hochgefahren werden. Wenn dies Extern zur Lösung ist, dann fährt man mit den nächsten Schritt fort. Ansonsten, wird der Rechner (oder bei Redundanz - beide Rechner) gestartet auf den das Storage ist. Dies ist in der Regel der Load-Balancer, bei größere Systeme kann jedoch eine separate Storage-Maschine implementiert worden sein.

Anschließend, wird die Master Datenbank hochgefahren. Sobald dieser oben ist, kann der Slave hochgefahren werden.

Zum Schluss können die Telefonieserver und Webserver in einer beliebigen Reihenfolge, auch gleichzeitig, hochgefahren werden.

Reihenfolge

Im Folgenden wird von einer nicht redundante Lösung ausgegangen. Der Betrieb einer redundanten Lösung bedarf eine gesonderte Schulung.

Somit ergibt sich folgende Startreihenfolge:

  1. Storage (Separates Storage acd-store oder Load-Balancer acd-lb). 
    Warten bis Storage oben ist.
  2. Bei separater Storage, nun den Load-Balancer acd-lb hochfahren.
    Hier muss nicht gewartet werden.
  3. acd-dbm - Datenbankmaster - hochfahren.
    Warten bis DB-Master oben ist.
  4. acd-dbs - Datenbankslave - hochfahren.
    Warten bis DB-Slave oben ist.
  5. acd-jb1 ... acd-jb(x) sowie acd-tel1 ... acd-tel(x) hochfahren.

Prüfungen

  1. Am Web über den Load-Balancer anmelden. 
    1. Anmeldung OK?
      Wenn nicht, /home/jtel/jboss-(version)/standalone/log/server.log prüfen.
    2. GANZ WICHTIG: Logo in der Webanwendung sichtbar?
      Wenn nicht, ist das Storage nicht oben. Mit mount auf den Webservern prüfen. Ggf. mit mount /home/jtel/shared Mount wiederherstellen.
  2. System anrufen.
    1. Anrufe werden durchgestellt?
      Wenn nicht, Telefonieserver prüfen.
      Nach rote Meldungen im Telefonieserver schauen und entsprechend handeln.
    2. Anrufe werden im Agent-Home bzw. Mini-Client signalisiert?
      Wenn nicht, Hazelcast-Cluster (PlatformListener auf Telefonie, sowie Webserver) prüfen.

Herunterfahren

Reihenfolge

Das Herunterfahren geschieht in der umgekehrten Reihenfolge:

  1. Alle Webserver acd-jb1 ... acd-jb(x) und Telefonieserver acd-tel1 ... acd-tel(x) herunterfahren.
    Schritt fertigstellen bzw. sicherstellen dass die Rechner wirklich am herunterfahren sind bevor man weitermacht.
  2. Datenbank Slave acd-dbs herunterfahren.
  3. Datenbank Master acd-dbm herunterfahren.
  4. Load Balancer acd-lb herunterfahren.
  5. Bei separater Storage, acd-store herunterfahren.

Zwischen den einzelnen Schritten ist es nicht zwingend notwendig zu warten, ledeglich Schritt 1 sollte insgesamt abgeschlossen sein bevor man fortfährt.

Hoch- und Runterfahren - Redundante Komponeten

Wenn das gesamte System heruntergefahren wird, kann es sein, dass manche Komponenten nicht sofort verfügbar sind, bzw. dass ein manueller Eingriff notwendig ist.

Storage (Redundant)

Runterfahren (nur einer)

Immer eins nacheinander herunterfahren.

Mit:

Translations Ignore


Code Block
pcs status 


feststellen welcher Node aktiv ist.

Auf den anderen node:

Translations Ignore


Code Block
drbdadm down jtelshared


Dann diesen Node herunterfahren.

Hochfahren (nur einer)

Wurde nur ein Node neu gestartet, dann kann der Betrieb wieder aufgenommen werden indem man auf den Secondary folgendes nach dem Neustart eingibt:

Translations Ignore


Code Block
drbdadm up jtelshared


Sync status prüfen mit:
Translations Ignore


Code Block
cat /proc/drbd


Nachdem der Sync ggf. erfolgt ist, und fertig ist:

Translations Ignore


Code Block
drbdadm primary jtelshared


Runterfahren (beide)

Mit:

Translations Ignore


Code Block
pcs status


feststellen welcher Node aktiv ist (der Node auf den das Samba sowie die virtuelle IP läuft). Dies ist der Primary Node. 

Mit:

Translations Ignore


Code Block
pcs cluster stop --all


den Cluster auf inaktiv setzen.

Auf auf den Secondary zuerst, dann Primary:

Translations Ignore


Code Block
drbdadm down jtelshared

shutdown now



Hochfahren (beide)

Beide nodes booten.

Auf beide Nodes (Primary zuerst):

Translations Ignore


Code Block
drbdadm up jtelshared


Prüfen mit:

Translations Ignore


Code Block
cat /proc/drbd


Beide Nodes sollten auf Secondary stehen, aber kein Sync sollte erfolgen.

 


Dann auf beide Nodes (Primary zuerst):

Translations Ignore


Code Block
drbdadm primary jtelshared


Prüfen mit: 
Translations Ignore


Code Block
cat /proc/drbd


Beide Nodes sollten auf Primary stehen, aber kein Sync sollte erfolgen.

Dann auf den Primary:

Translations Ignore


Code Block
pcs cluster start --all

pcs resource 
cleanup 
cleanup 



Dann prüfen ob alles läuft:

Translations Ignore


Code Block
pcs status
 




Sv translation
languagedefr


Warning
titleAncien

Cette page est obsolète et n'est actuellement disponible qu'en version anglaise.

Démarrage et fermeture

Tous les systèmes sont conçus pour démarrer et faire démarrer tous les services indépendamment.

Toutefois, il existe certaines dépendances entre les services, de sorte qu'un démarrage et un arrêt propres sont mieux réalisés lorsqu'une certaine commande est envisagée. 

Démarrage

Dépendances

Tous les services de la plate-forme dépendent de deux entités centrales :

  • Le stockage
  • Base(s) de données

Pour démarrer la solution, le stockage doit toujours être démarré en premier. Si cela est externe à la solution, passez à l'étape suivante. Sinon, l'ordinateur (ou en cas de redondance - les deux ordinateurs) est démarré sur lequel se trouve le stockage. Il s'agit généralement de l'équilibreur de charge, mais pour les systèmes plus importants, une machine de stockage distincte aurait pu être implémentée.

Ensuite, la base de données principale est lancée. Dès qu'elle est terminée, l'esclave peut être démarré.

Enfin, les serveurs de téléphonie et les serveurs web peuvent être démarrés dans n'importe quel ordre, même simultanément.

Ordre

Une solution non redondante est supposée dans ce qui suit. Le fonctionnement d'une solution redondante nécessite une formation supplémentaire.

Il en résulte l'ordre de départ suivant :

Hoch- und Runterfahren

Alle Systeme sind so gestaltet, dass Sie hochfahren und alle Dienste selbstständig starten.

Dennoch ergeben sich gewisse Abhängigkeiten zwischen den Diensten, sodass ein sauberes Hoch- und Herunterfahren am besten geschieht, wenn eine gewisse Reihenfolge betrachtet wird. 

Hochfahren

Abhängigkeiten

Alle Dienste der Plattform sind von zwei zentrale Entitäten abhängig:

  • Das Storage
  • Die Datenbank(en)

Für das Hochfahren der Lösung, sollte immer zuerst das Storage hochgefahren werden. Wenn dies Extern zur Lösung ist, dann fährt man mit den nächsten Schritt fort. Ansonsten, wird der Rechner (oder bei Redundanz - beide Rechner) gestartet auf den das Storage ist. Dies ist in der Regel der Load-Balancer, bei größere Systeme kann jedoch eine separate Storage-Maschine implementiert worden sein.

Anschließend, wird die Master Datenbank hochgefahren. Sobald dieser oben ist, kann der Slave hochgefahren werden.

Zum Schluss können die Telefonieserver und Webserver in einer beliebigen Reihenfolge, auch gleichzeitig, hochgefahren werden.

Reihenfolge

Im Folgenden wird von einer nicht redundante Lösung ausgegangen. Der Betrieb einer redundanten Lösung bedarf eine gesonderte Schulung.

Somit ergibt sich folgende Startreihenfolge:

  • Storage (Separates Storage acd-store oder Load-Balancer acd-lb). 
    Warten bis Storage oben ist.
  • Bei separater Storage, nun den Load-Balancer acd-lb hochfahren.
    Hier muss nicht gewartet werden.
  • acd-dbm - Datenbankmaster - hochfahren.
    Warten bis DB-Master oben ist.
  • acd-dbs - Datenbankslave - hochfahren.
    Warten bis DB-Slave oben ist.
  • acd-jb1 ... acd-jb(x) sowie 
    1. Stockage (Stockage séparé acd-store ou Load-Balancer acd-lb). 
      Attendez que le stockage soit terminé.
    2. Avec un stockage séparé, démarrez maintenant l'équilibreur de charge acd-lb.
      Il n'est pas nécessaire d'attendre ici.
    3.  acd-dbm - Base de données principale .
      Attendez que le DB-Master soit en place.
    4.  acd-dbs -  Base de données Esclave- .
      Attendez que l'esclave de la DB soit en place.
    5. Démarrer acd-jb1 ... acd-jb(x) ainsi que
    1. acd-tel1 ... acd-tel(x)
     hochfahren.

    Prüfungen

    Am Web über den Load-Balancer anmelden

    Vérifications

    1. Connectez-vous au Web via l'équilibreur de charge
    Anmeldung
      1. Connexion OK ?
    Wenn nicht, 
      1. Si ce n'est pas le cas, cochez /home/jtel/jboss-(version)/standalone/log/server.log
     prüfen.
    GANZ WICHTIG
      1. ESSENTIEL: Logo
    in der Webanwendung sichtbar
      1. visible dans l'application web ?
    Wenn nicht, ist das Storage nicht oben. Mit mount auf den Webservern prüfen. Ggf. mit 
      1. Sinon, le stockage n'est pas en place. Vérifiez avec le montage sur les serveurs web. Si nécessaire, restaurez la monture mount /home/jtel/shared
     Mount wiederherstellen
      1. .
    System anrufen
    1. Système d'appel.
      1. Anrufe werden durchgestellt?
        Wenn nicht, Telefonieserver prüfen.
        Nach rote Meldungen im Telefonieserver schauen und entsprechend handeln.
      2. Anrufe werden im Agent-Home bzw. Mini-Client signalisiert?
        Wenn nicht, Hazelcast-Cluster (PlatformListener auf Telefonie, sowie Webserver) prüfen.
      3. Herunterfahren

        Reihenfolge

        Das Herunterfahren geschieht in der umgekehrten Reihenfolge:

        Alle Webserver 
          1. Les appels sont passés ?
            Si ce n'est pas le cas, vérifiez le serveur de téléphonie.
            Recherchez les messages rouges dans le serveur de téléphonie et agissez en conséquence.
          2. Les appels sont signalés dans la maison de l'agent ou du mini-client ?
            Si ce n'est pas le cas, vérifiez le cluster Hazelcast (PlatformListener pour la téléphonie et le serveur web).

        Shutdown

        Ordre

        La fermeture se fait dans l'ordre inverse :

        1. Fermer tous les serveurs web acd-jb1 ... acd-jb(x)
         und Telefonieserver 
        1.  et les serveurs de téléphonie acd-tel1 ... acd-tel(x) 
        herunterfahren.
        Schritt fertigstellen bzw. sicherstellen dass die Rechner wirklich am herunterfahren sind bevor man weitermacht.

        1. Terminez l'étape ou assurez-vous que les ordinateurs sont vraiment en train de s'éteindre avant de continuer.
        2. Arrêter l'esclave des bases de données acd-dbs.
        3. Fermer la base de données principale acd-dbm.
        4. Éteindre l'équilibreur de charge acd-lb.
        5. Pour un stockage séparé, fermer acd-store.

        Il n'est pas absolument nécessaire d'attendre entre les différentes étapes, il suffit de terminer l'étape 1 avant de continuer.

        Démarrage et arrêt - Composants redondants

        Si l'ensemble du système est arrêté, certains composants peuvent ne pas être immédiatement disponibles ou une intervention manuelle peut être nécessaire.

        Storage (Redundant) - CentOS

        Warning

        Cette liste de contrôle n'est pas viable pour les installations qui utilisent la nouvelle construction DRBD de primaire/secondaire. Il n'est viable que pour les constructions qui utilisent le primaire/primaire.

        Arrêt (un seul)

        Toujours fermer l'un après l'autre.

        Avec:

        Translations Ignore


        Code Block
        pcs status 


        déterminer quel nœud est Primaire.

        Sur le Nœud Secondaire :

        Translations Ignore


        Code Block
        drbdadm secondary jtelshared shutdown now


        Ensuite, arrêtez le Noeud Primaire.

        Translations Ignore


        Code Block
        shutdown now


        Démarrer (un seul)

        Après avoir démarré le Noeud Secondaire ,vérifiez son état. Il doit être secondaire et actualisé.

        Translations Ignore


        Code Block
        pcs status 


        Vérifiez le statut de sync avec :

        Translations Ignore


        Code Block
        cat /proc/drbd


        Après la synchronisation est fait, si nécessaire, et est prêt :

        Translations Ignore


        Code Block
        drbdadm primary jtelshared


        Vérifiez le statut avec : Il devrait être Primaire/Primaire + UpToDate/UpToDate

        Translations Ignore


        Code Block
        cat /proc/drbd


        Arrêter (les deux)

        Avec:

        Translations Ignore


        Code Block
        pcs status


        déterminer quel nœud est actif (le nœud sur lequel Samba et l'IP virtuel fonctionnent). C'est le Nœud primaire

        Définissez le nœud secondaire comme secondaire avec :

        Translations Ignore


        Code Block
        drbdadm secondary jtelshared shutdown now


        Sur le nœud secondaire d'abord, puis le Primaire :

        Translations Ignore


        Code Block
        shutdown now



        Démarrage (les deux)

        Démarrer le Noeud Primaire d'abord

        Vérifier l'état de la synchronisation DRBD et l'état du cluster pcs.

        Vérifier Avec

        Translations Ignore


        Code Block
        pcs status cat /proc/drbd 


        Le Noeud primaire devrait être primaire, et le Noeud Secondaire devrait être secondaire. Le disque doit être UpToDate


        Puis, sur le Nœud Secondaire

        Translations Ignore


        Code Block
        drbdadm primary jtelshared


        Vérifier Avec 
        Translations Ignore


        Code Block
        cat /proc/drbd


        Les deux noeuds doivent être réglés sur Primaire/Primaire + UpToDate/UpToDate

        Vérifiez ensuite si tout fonctionne : pour la dernière fois :


        Translations Ignore


        Code Block
        pcs status cat /proc/drbd
      4. Datenbank Slave acd-dbs herunterfahren.
      5. Datenbank Master acd-dbm herunterfahren.
      6. Load Balancer acd-lb herunterfahren.
      7. Bei separater Storage, acd-store herunterfahren.
      8. Zwischen den einzelnen Schritten ist es nicht zwingend notwendig zu warten, ledeglich Schritt 1 sollte insgesamt abgeschlossen sein bevor man fortfährt.

        Hoch- und Runterfahren - Redundante Komponeten

        Wenn das gesamte System heruntergefahren wird, kann es sein, dass manche Komponenten nicht sofort verfügbar sind, bzw. dass ein manueller Eingriff notwendig ist.

        Storage (Redundant)

        Runterfahren (nur einer)

        Immer eins nacheinander herunterfahren.

        Mit:

        pcs status 

        feststellen welcher Node aktiv ist.

        Auf den anderen node:

        drbdadm down jtelshared

        Dann diesen Node herunterfahren.

        Hochfahren (nur einer)

        Wurde nur ein Node neu gestartet, dann kann der Betrieb wieder aufgenommen werden indem man auf den Secondary folgendes nach dem Neustart eingibt:

        drbdadm up jtelshared

        Sync status prüfen mit:

        cat /proc/drbd

        Nachdem der Sync ggf. erfolgt ist, und fertig ist:

        drbdadm primary jtelshared

        Runterfahren (beide)

        Mit:

        pcs status

        feststellen welcher Node aktiv ist (der Node auf den das Samba sowie die virtuelle IP läuft). Dies ist der Primary Node. 

        Mit:

        pcs cluster stop --all

        den Cluster auf inaktiv setzen.

        Auf auf den Secondary zuerst, dann Primary:

        drbdadm down jtelshared
        shutdown now

        Hochfahren (beide)

        Beide nodes booten.

        Auf beide Nodes (Primary zuerst):

        drbdadm up jtelshared

        Prüfen mit:

        cat /proc/drbd

        Beide Nodes sollten auf Secondary stehen, aber kein Sync sollte erfolgen.

        Dann auf beide Nodes (Primary zuerst):

        drbdadm primary jtelshared

        Prüfen mit: 

        cat /proc/drbd

        Beide Nodes sollten auf Primary stehen, aber kein Sync sollte erfolgen.

        Dann auf den Primary:

        pcs cluster start --all
        pcs resource cleanup 

        Dann prüfen ob alles läuft:

        pcs status