From e5bdf368d5c802a40a8a82cae806fcc89ec12734 Mon Sep 17 00:00:00 2001 From: Ivo Jimenez Date: Tue, 18 Aug 2015 18:15:41 -0700 Subject: [PATCH] Adds documentation about components of a Ceph Lab --- README.rst | 17 ++++++----- docs/COMPONENTS.rst | 67 ++++++++++++++++++++++++++++++++++++++++++++ docs/cephlab.png | Bin 0 -> 66728 bytes docs/cephlab.svg | 4 +++ 4 files changed, 81 insertions(+), 7 deletions(-) create mode 100644 docs/COMPONENTS.rst create mode 100644 docs/cephlab.png create mode 100644 docs/cephlab.svg diff --git a/README.rst b/README.rst index 30a1d35aa..fd0d96390 100644 --- a/README.rst +++ b/README.rst @@ -40,19 +40,22 @@ Provided Utilities * ``teuthology-updatekeys`` - Update SSH host keys for a mchine * ``teuthology-worker`` - Worker daemon to monitor the queue and execute jobs +For a description of the distinct services that utilities interact with see +:ref:`components`. Installation ============ -See, :ref:`installation_and_setup`. + +See :ref:`installation_and_setup`. Infrastructure ============== -This examples in this document are based on the lab machine configuration -used by the Red Hat Ceph development and quality assurance teams. Other -instances of ceph being used in a development or testing environment may -differ from these examples. +These examples in this document are based on the lab machine configuration used +by the Red Hat Ceph development and quality assurance teams (see +:ref:`lab_setup`). Other instances of a Ceph Lab being used in a +development or testing environment may differ from these examples. Test configuration @@ -162,7 +165,7 @@ To see the status of all machines, use the ``--list`` option. This can be restricted to particular machines as well:: ./virtualenv/bin/teuthology-lock --list machine1 machine2 - + Choosing machines for a job --------------------------- @@ -264,7 +267,7 @@ new tasks in this directory. Many of these tasks are used to run shell scripts that are defined in the ceph/ceph-qa-suite. -If machines were locked as part of the run (with the --lock switch), +If machines were locked as part of the run (with the --lock switch), teuthology normally leaves them locked when there is any task failure for investigation of the machine state. When developing new teuthology tasks, sometimes this behavior is not useful. The ``unlock_on_failure`` diff --git a/docs/COMPONENTS.rst b/docs/COMPONENTS.rst new file mode 100644 index 000000000..9e1313564 --- /dev/null +++ b/docs/COMPONENTS.rst @@ -0,0 +1,67 @@ +=================== +Ceph Lab Components +=================== + +The distinct hardware/software components that a lab is composed of and the way +they interact between them is described here. In general, a lab is composed of +a scheduler (a.k.a. master node), worker(s), package builder +(`gitbuilder `__), job database (`paddles +`__), job archive, a web UI (`pulpito +`__) and test nodes. + +| +| + +.. image:: cephlab.png + :align: center + :alt: Components of a Ceph Lab. + +| +| + +In the figure above, every service appears on a separate machine but this is +not a requirement (see :ref:`lab_setup` for an alternative setup). Jobs are +submitted to the scheduler, which are then processed by workers. One worker +processes and keeps track of a job (one at a time). The output of the job (logs +and files associated to an execution) is stored in the archive, which +is a path in the file system where the worker is running. The job database +contains information about the status of jobs and test nodes, as well as +results of executions (# of tests passed, failed, etc.). All this information +can be visualized in ``pulpito``, the web UI. For an example, see Ceph +community's Lab `here `__. + +Test nodes can be grouped in classes (referred to as ``machine-type``), +allowing teuthology schedule jobs across multiple hardware setups, +provided they're visible to the master node. + +Life of a Teuthology Job +======================== + +The teuthology scheduler exposes a work queue (using `beanstalkd +`__) where jobs are submitted. The life of a +job begins when ``teuthology-suite`` is executed, which is when a job is +prepared and queued (``teuthology-schedule`` is implicitly invoked). When a job +is created (or whenever the status of a job is changed, e.g. from queued to +started), information about the job is recorded in ``paddles``'s internal +database. Depending on the requirements (in terms of requested machines), the +scheduler eventually determines when a job can get executed. At this point the +master communicates with ``teuthology-worker``, which in turn invokes +``teuthology`` (the command). ``teuthology`` checks the lock status of the +requested machines (``teuthology-lock``) by querying ``paddles``, acquires +locks of the nodes if they are available and proceeds to execute the job +(execute every task in the YAML job description). If no machines are available, +the job gets back into the queue. Results from the job are stored in the +archive directory of the worker for forensic analysis. + +Since `QA suites `__ usually +specify ``install`` and ``ceph`` tasks, we briefly describe what they do. When +a suite is scheduled (via ``teuthology-suite``), the branch that is being +worked against has to be specified (e.g. a git ``SHA`` or ``ref``). Packages +for the given branch and distro are probed on gitbuilder to see if they exist. +Once this and other sanity checks pass, the job is created and scheduled. Once +the job initializes, the ``install`` task pulls and installs Ceph packages from +``gitbuilder``. The installation task might also be preceded by a ``kernel`` +task which first reboots testnodes (and optionally installs) into a specified +kernel. The ``ceph`` task subsequently configures and launches the cluster. At +this point, Ceph is ready to receive requests from other tasks (such as +``rados``). diff --git a/docs/cephlab.png b/docs/cephlab.png new file mode 100644 index 0000000000000000000000000000000000000000..374fb13e52e09484d7547d2ec29316dc2de10442 GIT binary patch literal 66728 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 + + + -- 2.47.3