Use case: Asked to provide a 'network diagram' prior to provisioning, along with the details of what is needed for provisioning (servers, how the servers relate to each other, cpu/ram/disk reqs, etc). Tools to make this easier to document and create this information, and provide more 'usefulness' by feeding into a runtime NMS to watch/monitor as they are provisioned, and after provisioned normal SLA/monitoring/alerts is the desired outcome.
But I feel like I'm missing something as there isn't anything like this, but looking to the experts for advice! (i.e. nagios was my first attempt)
My hope was to find a tool that can assist with design time, and be able to feed or upgrade to handle runtime (from a simplified single-site point of view):
Design time
Collect the list of servers that I enter
Map relations between the servers (parents/etc)
create a diagram of planned servers and their relations.
create export/data in various formats to, hopefully, auto-populate any provision/requisition forms. The latter will always be custom, but wanted to share the intent.
(optional) add in any common specs, such as minimum cpu, ram, base diskspace, attached diskspace, operating system,.... depending on the capability of the tool to detect and verify if met or not met (and for use in provision/requisition above).
auto-sorting based on parent relations for order-of-install. Possibly provide a default 'expected service type' for faster groupings and different display (swimlane?) options (infrastructure, database, application, proxy, etc)
Runtime
take the data from design time as-is, show all the above but show them as 'planned' or 'offline' servers until actually provisioned (from a DNS name point of view by default).
When a server has issues that has relations, to show how this impacted other servers.
normal SLA/notification/monitoring features.
Bonus
- if there is a way to handle 'physical' vs 'logical' (vmware server instances vs vmware host server, physical servers without virtualization, etc)
The interoperability of design and runtime seems to be something that, from a tools option point of view, I can't put my finger on. Any suggestions?