Introduction
In a delivery oriented world, systems often get built without documentation. This happens, especially in smaller IT organizations. Here's the gist (this can be written better),
- Wait too long and you are constantly catching up.
- Use a Knowledge Management System
- This Section Provides a Good Template to Organize Your Information
- Don't Wait to Get Your Template Perfect Before Documenting
Without proper server documentation, management of a server becomes more onerous and difficult. The documentation should describe what the server is used for, who owns it, the SLAs, and the software and versions it is running. Having a common template makes it easier to fill in the particular attributes of a server. I envision some sort of automated task that would run on every server to collect the requisite details and send them to a common space where the information is aggregated and a server documentation page is automatically generated, It would solved the current problem of missing or outdated information whenever server documentation is prepared manually. It would guarantee consistency and facilitate currency and correctness. The server documentaion page would also describe the applications, ownership, SLAs and any other pertinent information necessary for it's proper maintenance.
Server Information Template
Descriptor | Description |
---|---|
Server Name | the physical name of the server (not the domain name) |
Environment | eg. Test, Pre-Prod, Prod, Backup |
IP Addresses | |
Operating System | |
Operating System Version | latest release and patch level |
SLA | |
Restart Schedule | |
Software1 | ie. Apache Web server |
Software1 Version | ie version # |
Software1 Instance | multi-instance support, 0,1,2? |
SoftwareX | ie. Apache Tomcat server |
SoftwareX Version | |
Business Continuity | Disaster Recovery Procedure |
Server Log | Links to log of server changes. |
Hand in hand with the collection of server details, automation could be enhanced to gather status about the the software that is installed on the server such as it's state (running or not running). This information would be sent to a system dashboard where that the information is refreshed on a periodically to provide the foundations of server monitoring. Here is some information that could be collected:
HTTP errors, number of running HTTP processes, web server state, database connections, inbound/outbound network connections etc, etc. to name but a few.
Server Log
Changes to servers should be kept in a central log. Make sure to get going on this right away. For example, this server itself uses a very simple almost free-form server log. Roderick, put a template down here.
System Dashboard
At a minimal you should have a system dashboard to describe your systems. Listed here are different dashboards with varying amount of details. New data is added as the business grows and at the same time, data is removed and assumed as processes are established.
Start-up
Server Name | Backups Established | SSL Expiry | Services |
---|---|---|---|
RGH1V00APP | No | 2015-03-01 | Apache 2.x Web Server |
Server Name should link to the actual change log file for the server.
Medium to Large Business
...
Enterprise Class
...
Enterprise Government
...