Configuration Management

   


Configuration management is normally associated with the development process, in which vast amounts of source code, documentation, and test packs are stored in a repository. It provides a control mechanism for all changes that are subsequently made, as well as a facility to revert to previous versions of code, if necessary.

In reality, though, it isn't just the development section that can make use of configuration management ”a number of other uses could be of value to the system manager. Some of these are listed here:

  • System administration scripts

  • System documentation

  • Important system configuration files

The Need for Configuration Control

With business-critical systems and applications, it is imperative that some control mechanism exists to manage changes made to systems (particularly live production systems), even though any changes should have been thoroughly tested on nonproduction systems before implementation.

The use of a configuration control package such as the Source Code Control System (SCCS), bundled with the Solaris operating environment, provides the facility to track changes made to a program or file. Equally important, however, a configuration control package provides a history, a documented evolution of how the program or file became what it is now and the changes made along the way. If inline documentation has also been present, normally in the form of comments, this will include an explanation of why a specific change was made or a reference to the request that initiated the change.

Keeping Track of Changes

Using SCCS as an example, a new version of a file is created and managed each time it is updated. This new version is stored in a specified subdirectory ”by default, it is named SCCS. Each file present in the directory is prefixed with s., so the script called sys_monitor.ksh, for example, would be stored as s.sys_monitor.ksh within SCCS.

Consider a real-life Solaris example. Whenever an important system file is changed (such as /etc/system, which contains kernel configuration information), it is recommended practice to make a copy of the file, as an obvious precaution. A common scenario is to copy the file to, say, /etc/system.bak. When a subsequent change is made, the history is lost because the file is overwritten. By storing the versions of the file in a control system such as SCCS, the history is preserved and can easily be referred to. SCCS maintains a check-in and check-out control so that if a file is retrieved for editing, it is said to be checked out, similar to a rental system. As a result, no one else can change the file until it is checked in again.

It Could Affect Others

If no form of configuration management is used, a new system manager or new member of staff joining the system administration team will have difficulty seeing how and why previous changes were made to either configuration files or administration shell scripts, for example. Configuration management provides a fully traceable history that can be used for familiarization purposes and for investigating future problems.

This is also an important aspect to consider if files or scripts are being shared with other departments ”the disaster recovery documentation is a good example. In this instance, the correct version of the documentation can easily be identified to ensure that all parties are using the current version.

Finally, the documentation for a specific system should highlight the facilities available on the system, who uses them, and approximately how many users there are. This information can be used to see at a glance the effect on the business if this system is taken out of service or fails for any reason. The documentation also can provide useful input when attempting to prioritize systems by their importance to the business functions.


   
Top


Solaris System Management
Solaris System Management (New Riders Professional Library)
ISBN: 073571018X
EAN: 2147483647
Year: 2001
Pages: 101
Authors: John Philcox

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net