.. Bombardier documentation master file, created by sphinx-quickstart on Thu Dec 31 08:26:26 2009.
   You can adapt this file completely to your liking, but it should at least
   contain the root `toctree` directive.

=================
Bombardier client
=================

What is this thing?
===================

This package is called the "Bombardier Client," and its purpose is to
provide some facilities for the Bombardier Server to make it easier
for the server to do its job.  If you're a stickler for terminology,
then, it's not really a client at all, since is not used to connect to
a server.

The way in which it does act like a client is that you're going to
install this software on all the machines that you want to enable for
use in your Bombardier environment. Don't worry, installing the client
does not start any services on the target machines, nor does it create
any users or do anything else nefarious.  It simply installs some
Python libraries that the root user will be able to take advantage of
for the purpose of running commands via ssh.


What do I do with it?
=====================

A typical network that provides services to end-users has a series of
isolated networks (DMZs) with servers on those networks.  The
Bombardier Server is the central point of configuration management and
configuration control.  It retains information about what software all
the other servers in the network should have installed and how all
those systems should be configured.  To avoid confusion in
terminology, all the servers that the Bombardier Server controls and
manages are called "machines."  Software is delivered to and
configured on machines by the Bombardier Server through the use of
packages.

All communication from the server to the client is done via OpenSSH. No
special protocols or weird client-server software needs to be
installed or managed.

For a machine to participate in the Bombardier network, it must have
three things happen:

 * There must be a configuration file on the Bombardier Server for
   that machine, which contains at least the following information:

   * The IP address of the machine

   * The user that the server should connect to (via SSH)

   * The platform of the remote machine (currently 'linux', which
     should work with most POSIX systems, including cygwin)

 * It must be "enabled" on the server, which means that the server has
   exchanged SSH keys with the mahine.

 * It must have this Bombardier Client installed on it.


How do I install it?
====================

Manual Install
--------------

The Bomabardier Server should be able to do all the installation work
for you on all of the machines within the network.  To see how to
install the Bombardier Client using the server, read the Bombardier
CLI documentation.  You should only need to install the client
yourself manually if Something Went Wrong.

If you are going to install the package manually, you need the
following prerequisites:

 * Python (this needs to be at version 2.4 or higher)

 * SetupTools (http://pypi.python.org/pypi/setuptools)

Once you have setuptools installed under Python, you'll simply need to
type::


   easy_install bombardier_client


Indices and tables
==================

* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

