Information Technology Reference
In-Depth Information
Empower users. Automation often makes it possible for a non-SA to do a task.
Automation turns a task that only an expert can do into one that an end user can do
using a self-service tool. In the example in Section 12.2.3 , someone from the hu-
man resources department is now able to provision new accounts without the in-
volvement of system administrators. Delegation saves time and resources.
Reduce user wait time. Manual processes can be done only when an SA is avail-
able. Automation can be running all day and all night, and will usually have com-
pleted a task before an SA would have been available to start it. Even if automa-
tion were slower than a person doing the same task, the net user wait time would
likely be shorter.
Reduce system administrator wait time. Many manual processes involve doing
one step, then waiting some time before the next step can proceed—for example,
waiting for new data to propagate through a system or waiting for a machine to re-
boot. A process like this is said be full of “hurry up and wait” steps. If the wait is
long, an SA may be able to fill the time with other work. However, this is often in-
efficient. All too often, we start working on something else, get distracted, and for-
get to return to the first task or lose context. Computers are better at waiting than
people are.
For example, building software packages can be very complex. A good tool will, when the
user enters one command, compile the software, run unit tests, build the package, and pos-
sibly more. Automation, however, should eliminate the need for someone to run the tool.
Buildbotisasystemthatcontinuouslymonitorsasourcecoderepositoryforchanges.After
any change, the software is checked out, built, packaged, and tested. If all tests pass, the
new package is placed in a repository so it is available to be deployed. The latest working
package is always available. Many packages may be created and never used, but since no
SA effort is involved, there is no additional cost, assuming that the CPU cycles are avail-
able. In addition, the automated build process should give the developers immediate feed-
back about any automated tests that fail, resulting in faster bug fixes and better software
(see Chapter 9 ) .
Another example involves configuring new machines. A good tool for machine config-
uration is run by a system administrator, perhaps with a few parameters like hostname and
IP address, and the result is a fully configured machine. Automation, however, would be
appliedwhereeachfreshlyinstalledmachinelooksupitshostnameinadirectoryorextern-
al database to find its function. It then configures the machine's OS, installs various pack-
ages, configures them, and starts the services the machine is intended to run. The manual
steps are eliminated, such that machines come to life on their own.
Search WWH ::




Custom Search