Versions Compared

Key

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


Warning
titleUnder Construction

This site is currently under construction. Contained Information is subject to change.

Introduction

A jtel ACD consists of a minimum 2 of virtual machines and may grow to sizes of 30 or more, in concurrence with for example 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. The following page describes the various possible scenarios for proper shutdown and startup procedures, depending on the systems architecture. 

Info

Shutting down and starting your jtel ACD back up is not part of the jtel service contract and may incur service fees as a result. For further information, or to book a service appointment, please contact us at service@jtel.de 

Glossary

AliasSignifies
acd-dbmDatabase Master
acd-dbm1First Database Master
acd-dbm2Second Database Master
acd-dbsDatabase Slave
acd-dbs1First Database Slave
acd-dbs2Second Database Slave
acd-dbrReporting Database
acd-lbThe Load Balancer
acd-lb1First Load Balancer
acd-lb2Second Load Balancer
acd-storeThe File Storage

acd-tel1
...
acd-telN

The Telephony Machine(s)

Numbered from 1 ... N

acd-jb1
...
acd-jbN

The Webserver Machine(s)

Numbered from 1 ... N

Simple V1 (One Linux Machine contains all components)

MachineShutdownStartup
acd-store/lb/dbm/dbs/dbr/jbFirstFirst
acd-telLastLast

Simple V2 (Two Linux Machines)

MachineShutdownStartup
acd-store/lb/jbFirstFirst
acd-dbm/dbs/dbrSecondSecond
acd-telLastLast

Simple V3

MachineShutdownStartup
acd-store/lb/FirstFirst
acd-dbm/dbs/dbrSecondSecond
acd-jb

acd-telLastLast

Master-Slave

Redundant

Start Up

Dependencies

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

  • The Storage
  • 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.

Order

A non-redundant solution is assumed in the following. The operation of a redundant solution requires extra schooling.

This results in the following starting order:

  1. Storage (Separates Storage acd-store or Load-Balancer acd-lb). 
    Wait until Storage is up.
  2. With separate storage, now start the load balancer acd-lb.
    There is no need to wait here.
  3.  acd-dbm - Database Master .
    Wait until DB-Master is up.
  4.  acd-dbs -  Database Slave- .
    Wait until DB slave is up.
  5. Boot acd-jb1 ... acd-jb(x) aswell as acd-tel1 ... acd-tel(x)

Checks

  1. Log on to the Web via the load balancer. 
    1. Log on OK?
      If Not, check /home/jtel/jboss-(version)/standalone/log/server.log
    2. ESSENTIAL: Logo visible in the web application?
      If not, the storage is not up. Check with mount on the web servers. If necessary restore mount /home/jtel/shared Mount.
  2. Call System.
    1. Calls are put through?
      If not, check the telephony server.
      Look for red messages in the telephony server and act accordingly.
    2. Calls are signalled in the Agent Home or Mini Client?
      If not, check the Hazelcast cluster (PlatformListener for telephony and web server).

Shutdown

Order

Shutting down is done in the reverse order:

  1. Shutdown All Webservers acd-jb1 ... acd-jb(x) and Telephony servers acd-tel1 ... acd-tel(x) 
    Finish step or make sure that the computers are really shutting down before continuing.
  2. Shut down database slave acd-dbs.
  3. Shut down database master acd-dbm.
  4. Shut down load balancer acd-lb.
  5. For separate storage, shut down acd-store.

It is not absolutely necessary to wait between the individual steps, just step 1 should be completed before continuing.

Startup and Shutdown - Redundant components

If the entire system is shut down, some components may not be immediately available or manual intervention may be necessary.

Storage (Redundant) - CentOS

Warning

This checklist is not viable for installations that use the new DRBD construct of Primary/Secondary. It is viable only for constructs that use Primary/Primary

Shut down (only one)

Always shut down one after the other.

With:

Translations Ignore


Code Block
pcs status 


determine which node is Primary.

On the Secondary Node:

Translations Ignore


Code Block
drbdadm secondary jtelshared
shutdown now


Then shut down the Primary Node.

Translations Ignore


Code Block
shutdown now


Boot up (only one)

After booting the Secondary Node, check the status. It should be Secondary and UpToDate

Translations Ignore


Code Block
pcs status 


Check Sync status with :

Translations Ignore


Code Block
cat /proc/drbd


After the sync is done, if necessary, and is ready:

Translations Ignore


Code Block
drbdadm primary jtelshared


Check status with: It should be Primary/Primary + UpToDate/UpToDate

Translations Ignore


Code Block
cat /proc/drbd


Shut down (both)

With:

Translations Ignore


Code Block
pcs status


determine which node is active (the node on which Samba and the virtual IP is running). This is the Primary Node

Set the secondary Node to secondary with:

Translations Ignore


Code Block
drbdadm secondary jtelshared
shutdown now


On the Secondary Node first, then Primary:

Translations Ignore


Code Block
shutdown now



Start up (both)

Boot the Primary Node first

Check DRBD sync Status and pcs cluster status

Check with:

Translations Ignore


Code Block
pcs status
cat /proc/drbd


The Primary Node should be primary, and Secondary Node should be secondary. Disc should be UpToDate


Then on Secondary Node

Translations Ignore


Code Block
drbdadm primary jtelshared


Check with: 
Translations Ignore


Code Block
cat /proc/drbd


Both nodes should be set to Primary/Primary + UpToDate/UpToDate

Then check if everything works a final time:


Translations Ignore


Code Block
pcs status
cat /proc/drbd




...