Skip to content

Maintenance

Updates

Do security updates of the system frequently. We recommend to do it at least once per week. Before update please be sure that latest backup is available and working.

Official documentation how to run only security updates https://wiki.debian.org/UnattendedUpgrades

Resource monitoring

Easy Software has good experience with Prometheus. Therefore, the node_exporter is a part of the VM since the 1.3. 2022.

The official very basic documentation for Node Exporter and Prometheus is at https://prometheus.io/docs/guides/node-exporter/ The best quickstart grafana dashboard is at https://grafana.com/grafana/dashboards/1860

Depending on your usage you should tune the VM resource settings, for example increase amount of RAM or number of cores provided to VM. All these configurations should be regularly done by your virtual environment administrator.

Node exporter listens on port 9100.

Disable node_exporter

node_exporter could by disabled by running:

systemctl stop node_exporter.service
systemctl disable node_exporter.service
systemctl mask node_exporter.service
It prevents to start node exporter after next reboot…

If you need full environment support from Easy Software (security and performance optimizations, backuping, monitoring, etc), we recommend to transfer to our Cloud solutions.

Data backups

The preconfigured backuping that is present in the VM is a working example, that needs to be fit to your infrastructure and has to be monitored. Please keep in mind, that a proper backup should be: * checked after backup process finished (check at least the size of the backup) * kept in a safe place * distant from the running environment (at least in a different city) * restored once in a while to test your ability to perform recovery

The application stores data in two places, so don’t forget to backup both of them.

DB

Database backup can be very easily done incorrectly. The best and the most secure way how to do backups of mysql database is via database dump as you can see in the example script. It makes version independent backups, that could be restored whole or allows you to get only part of the old data.

Example:

mysqldump --add-drop-tables --routines --triggers --flush-logs $DATABASE_NAME > path/to/file_where_db_will_be_stored.sql

Copying files from /var/lib/mysql is an INCORRECT way of saving DB backups.

Files

Every uploaded file/attachment in the application is stored in /home/easy/$APP_NAME/current/files. The whole content of this directory should be backed up. In this case, you can simply copy the contents.

Security policies

The VM contains SSH keys for Easy Software engineers in home/easy/.ssh/authorized_keys. Also, the rules for the iptables firewall in /etc/iptables allow access of an Easy Software IP address.

Both of these policies are meant for eventual remote support by our staff on your request. The access policies are fully under your control.

Automatic tasks

All automatic tasks are scheduled by CRON and Sidekiq, which starts scheduled jobs every 5m. We recommend don’t to run these jobs in shorter intervals due to their high performance requirements. To make any changes, you can edit them by running command below under user easy

crontab -e