Template: Server Maintenance Checklist
This checklist will help you to keep track of your server maintenance tasks. Use a separate list for each server that you are responsible for. This checklist template is kept generic to accommodate many different server systems (Windows/Linux/etc).
Please log in to copy this checklist into your account.
Don't have an account yet? Checkpanel offers easy to use checklists for items that you want to check frequently. Know when each item was last tested. Report failures with details. Set reminders. Collaborate.
Is there enough free disk space available on the server or is it in risk of running out? You should always make sure that there is a safety margin.
Once a disk runs full it can (and will) cause a variety of sometimes hard to track issues. For examples user sessions might fail randomly and databases might throw cryptic errors - to just name a few possibilities.
Making sure that the backup system is working is probably the most important server maintenance task. Backups should cover everything that you need to recover in the case of an emergency.
If you are backing up selectively instead of the whole system, make sure that you selection still covers every important bit of data.
Also make sure that the backups include all volatile data. Databases might not be reliably backuped by a simple file system backup. You need to write a database dump to disk before creating the file system backup.
The backup frequency depends on your use case. For most production servers, you will want to run backups at least daily. Highly critical systems which generate lots of new data throughout the day can even be backed up several times throughout the day.
Check all important logs and look for entries which indicate trouble.
Tools like logwatch (on Linux) can help you comb through the plethora of server maintenance logs and even send you frequent digests via email.
Most server administrators have monitoring solutions in place to automatically alert them of certain issues. For example, Checkpanel's automatic checks will frequently try to access a specified URL and alert you if it is not reachable. Other tools like Nagios monitor the internal state of your systems. You should frequently check if the server monitoring tools which are set up are still working as intended.
Types of Server Maintenance
The number of server systems is so large that we could probably fill a whole section with checklist templates for each. The generic server maintenance checklist above is a great starting point but you will have to add more checks depending on your specific system.
Linux Server Maintenance
It should be fairly easy to adopt the generic tasks of this checklist to your needs for Linux server maintenance. However, if you are looking for comprehensive linux maintenance information, here are some great resources:
- Lifehacker: What Kind of Maintenance Do I Need to Do On My Linux PC?
- Serverfault: What are a regular maintenance you need to perform on your Linux server?
Database Maintenance / SQL Maintenance Plans
Databases require some additional maintenance on top of the maintenance of the host server. With MySQL, MS SQL, PostgreSQL and other systems you will have to frequently optimize/shrink tables and rotate logs. Most of these maintenance tasks are extremely repetitive and should be handled by automated scripts. Still, it is wise to frequently check if these tasks are still being executed as planned.
Windows Server Maintenance
Again, most of the generic checks on this checklist will be easy to apply to a windows server. Some further information can be found at Microsoft's TechNet: Common Administrative Tasks.