Administration, monitoring & backups

How to maintain Toucan

Monitoring

When you are in an On-Premise mode, we recommend you to monitor the following parts:

System

Be sure the system is ok by monitoring:

  • free disk space on all partitions
  • load average of the server
  • disk IO
  • CPU,memory and SWAP usage
  • RAID state
  • hardware health

Of course, thresholds directly depend of your own monitoring policy.

Services

Nginx

You should monitor:

  • nginx process is up and running
  • port 80 and 443 are available and opened

(of course if you choosed another web service, the monitoring approach - like Apache or Lighttpd - is still the same)

Supervisor

You should monitor:

  • supervisor process is up and running
  • The Toucan Toco app launched and managed by supervisor is in a running state (cf: supervisorctl status api-toucan)
  • check the number of launched processes is consistent with the supervisor configuration

Mongo

You should monitor that:

  • the mongo process is up and running
  • the mongo port (usually 27017) is available and opened from the node where the Toucan Toco app is installed
  • a basic user auth could be completed

Redis

You should monitor that:

  • the redis process is up and running
  • the redis port (usually 6379) is available and opened from the node where the Toucan Toco app is installed

Toucan Toco App

You should monitor:

  • https://toucantocoapp.yourdomain.com/ returns a 200 HTTP status
  • https://toucantocoapp.yourdomain.com/status returns a 200 HTTP status

Logs

All logs should be monitored (via ELK stack, Logentries,…) to prevent segfault, OOM killer, unexpected behaviors.

How To Monitor

All we described above, could be monitored by usual Nagios, Zabbix, Shinken, Munin, Collectd plugins.

Backup and restore

You need to backup and export:

Choose storage place and retention duration according to your own backup policy.

If one day you need to restore from scratch the Toucan Toco app, you will only need to reinstall the last Toucan Toco package and restore the Mongo databases.