summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRyota MIBU <r-mibu@cq.jp.nec.com>2017-02-07 10:31:05 +0000
committerRyota MIBU <r-mibu@cq.jp.nec.com>2017-02-10 02:08:21 +0000
commite171b396ce87322f2dc5ef0719419144774e43d7 (patch)
tree9845ba1ca8590d0537d4391cb82c4e6785d99305
parent4ca434ef8df820f0eb3a8f12931352838ed25ed3 (diff)
improve installation manual (add congress config)
JIRA: DOCTOR-85 Change-Id: I17d5a5c393cc92013a1cf82f6a0f76c360ab7c02 Signed-off-by: Ryota MIBU <r-mibu@cq.jp.nec.com>
-rw-r--r--docs/installationprocedure/feature.configuration.rst59
1 files changed, 58 insertions, 1 deletions
diff --git a/docs/installationprocedure/feature.configuration.rst b/docs/installationprocedure/feature.configuration.rst
index 519b4e03..3ddc409c 100644
--- a/docs/installationprocedure/feature.configuration.rst
+++ b/docs/installationprocedure/feature.configuration.rst
@@ -4,10 +4,26 @@
Doctor Configuration
====================
+OPNFV installers install most components of Doctor framework including
+OpenStack Nova, Neutron and Cinder (Doctor Controller) and OpenStack
+Ceilometer and Aodh (Doctor Notifier) except Doctor Monitor.
+
+After major components of OPNFV are deployed, you can setup Doctor functions
+by following instructions in this section. You can also learn detailed
+steps in setup_installer() under `doctor/tests`_.
+
+.. _doctor/tests: https://gerrit.opnfv.org/gerrit/gitweb?p=doctor.git;a=tree;f=tests;
+
Doctor Inspector
----------------
-Doctor Inspector is suggested to be placed in one of the controller nodes,
+You need to configure one of Doctor Inspector below.
+
+**Doctor Sample Inspector**
+
+Sample Inspector is intended to show minimum functions of Doctor Inspector.
+
+Doctor Sample Inspector suggested to be placed in one of the controller nodes,
but it can be put on any host where Doctor Monitor can reach and access
the OpenStack Controller (Nova).
@@ -23,9 +39,50 @@ Then, you can configure Doctor Inspector as follows:
INSPECTOR_PORT=12345
python inspector.py $INSPECTOR_PORT > inspector.log 2>&1 &
+**Congress**
+
+OpenStack `Congress`_ is a Governance as a Service (previously Policy as a
+Service). Congress implements Doctor Inspector as it can inspect a fault
+situation and propagate errors onto other entities.
+
+.. _Congress: https://wiki.openstack.org/wiki/Congress
+
+Congress is deployed by OPNFV installers. You need to enable doctor
+datasource driver and set policy rules. By the example configuration below,
+Congress will force down nova compute service when it received a fault event
+of that compute host. Also, Congress will set the state of all VMs running on
+that host from ACTIVE to ERROR state.
+
+.. code-block:: bash
+
+ openstack congress datasource create doctor doctor
+
+ openstack congress policy rule create \
+ --name host_down classification \
+ 'host_down(host) :-
+ doctor:events(hostname=host, type="compute.host.down", status="down")'
+
+ openstack congress policy rule create \
+ --name active_instance_in_host classification \
+ 'active_instance_in_host(vmid, host) :-
+ nova:servers(id=vmid, host_name=host, status="ACTIVE")'
+
+ openstack congress policy rule create \
+ --name host_force_down classification \
+ 'execute[nova:services.force_down(host, "nova-compute", "True")] :-
+ host_down(host)'
+
+ openstack congress policy rule create \
+ --name error_vm_states classification \
+ 'execute[nova:servers.reset_state(vmid, "error")] :-
+ host_down(host),
+ active_instance_in_host(vmid, host)'
+
Doctor Monitor
--------------
+**Doctor Sample Monitor**
+
Doctor Monitors are suggested to be placed in one of the controller nodes,
but those can be put on any host which is reachable to target compute host and
accessible by the Doctor Inspector.