NMS Frameworks
An
NMS framework
is an application that is designed to be the
Typically, an NMS framework application provides the following base functionality:
A network management framework may provide some or all of the capabilities shown in Figure 9-1. The first and most important quality to look for in an NMS framework is the capability to integrate with other applications. With network management, you need the capability to combine best-in-class applications that are appropriate for your particular network. The goal of integration is to tie various applications into a seamless whole and reduce redundant functionality. Some of the criteria that you will want to use to determine the best NMS framework for your environment include the following (the more important criteria are higher up in the list):
Often, network administrators will also expect the NMS framework to provide many other capabilities such as a knowledge base, network discovery, availability monitoring, and event collection. With a flexible tool, the network administrator can choose to use the capabilities built into the NMS framework and yet be able to choose another tool for a specific area if they determine that a more capable tool is required for their environment.
An issue with integrating products together is that it can be hard to find versions of each tool that all support each other. And once you do find an assemblage of tools that work together, it can be difficult to upgrade to newer versions. Hopefully,
Some of the available NMS frameworks, spanning a wide range of prices and capabilities include the following (in alphabetical order):
|
Knowledge Base Tools
You learned in Chapter 3, "Developing the Network Knowledge Base," that a knowledge base helps consolidate the data that you maintain about your network. As shown in Figure 9-1, it is the central piece in your NMS. Although we show one central knowledge base in this figure, the information that makes up your knowledge base can be implemented in many ways, and
You will probably use a mixture of tools and techniques to implement a knowledge base. You can use the information stored in several commercially available tools that have a database and tie them together using scripts or tools you develop or buy.
Alternatively, you may choose to implement a central repository for your knowledge base that you can use to feed all of your network management tools. Most NMS frameworks and tools have interfaces or APIs (application programming interfaces) that allow you to integrate these tools into your
As mentioned in Chapter 3, developing and using a knowledge base
Some people may feel intimidated by the thought of knowledge bases and custom programming, but if you can clearly
The way you collect the information and the way you store it will depend upon the tool(s) you select to manage your network. For example, you may choose to use a tool that collects information about your network through its
Instead, you can extract the information collected by such a tool and combine it with your knowledge of your network. From the data and knowledge, you can then produce a knowledge base that is tailored to your environment. Automating the task of data collection and coordination tasks can make the
The following criteria should be
See Chapter 3 for details on how a knowledge base might be structured. Bear in mind that you want to develop a schema that can accommodate the growth and change in your network. In addition to flat files, spreadsheets, and databases, some of the following tools are useful, either as a central repository or as contributors to the knowledge base:
Here is an example of how to take advantage of the knowledge contained in an application and integrate it with your network knowledge base. The user-tracking portion of Campus Manager provides a wealth of information about end nodes in a network, including the following:
This last item is
User tracking also supports the capability to have the user annotate fields with username and notes, which could be used to store custom data of pretty much any type. Unfortunately, there is not an easy method to programmatically insert data into these fields. User tracking includes facilities for searching and exporting this information from a GUI interface as well as exporting the data from the CLI. You could export this data as a comma-separated file or through XML, and then import it into your knowledge base. This knowledge then could be used in the following way:
|