diff --git a/doc/images/classes_No_Name.png b/doc/images/classes_No_Name.png new file mode 100644 index 0000000..7124c56 Binary files /dev/null and b/doc/images/classes_No_Name.png differ diff --git a/doc/images/mvp0_demo_preparation_plan.png b/doc/images/mvp0_demo_preparation_plan.png new file mode 100644 index 0000000..94aa3bf Binary files /dev/null and b/doc/images/mvp0_demo_preparation_plan.png differ diff --git a/doc/images/openstack_integration.png b/doc/images/openstack_integration.png new file mode 100644 index 0000000..041fc1f Binary files /dev/null and b/doc/images/openstack_integration.png differ diff --git a/doc/images/packages_No_Name.png b/doc/images/packages_No_Name.png new file mode 100644 index 0000000..2def6f3 Binary files /dev/null and b/doc/images/packages_No_Name.png differ diff --git a/doc/mvp0_demo_preparation_plan.uml b/doc/mvp0_demo_preparation_plan.uml deleted file mode 100644 index e495a93..0000000 --- a/doc/mvp0_demo_preparation_plan.uml +++ /dev/null @@ -1,28 +0,0 @@ -frame "Peter" { - [network emulation] - cloud { - [demo scenario] - } -} -frame "Sergey" { - [network emulation] --> [salt bootstrap] - [salt bootstrap] --> [nodes discovery] -} - -frame "Max" { - [config files collector] - [config-inspector] -up-> [demo scenario] -} -frame "Ilya" { - [tripleo-image-elements] --> [os-collect-config] - [tripleo-heat-templates] --> [os-collect-config] -} -frame "Kirill" { - [rules editing engine] <-- [config-inspector] - [rules editing engine] --> [demo scenario] -} -[nodes discovery] --> nodelist -nodelist --> [config files collector] -[config files collector] --> JSON -JSON --> [config-inspector] -[os-collect-config] --> JSON diff --git a/doc/openstack_integration.rst b/doc/openstack_integration.rst index 758e9bf..2198f0f 100644 --- a/doc/openstack_integration.rst +++ b/doc/openstack_integration.rst @@ -2,44 +2,46 @@ == Overview +OpenStack cloud life cycle consists of 2 distinct phases: + +* initial deployment and +* operation maintenance + +Success of the *initial deployment* stage means that upfront installation and +configuration of the OpenStack platform is successful. Multiple projects work in +that area: TripleO+Tuskar, Fuel, Packstack, Devstack to name a few. Most of +these projects are pretty good in what they are doing, but once you installed +and kicked off the cloud, things begin to change. + +On the other hand, *operation maintenance* phase is more or less abundant of +community-driven projects aimed to increase reliablility of cloud and +resilience which allows to support the SLA at reasonably high level (think your +favourite number of nines). + +== Proposal Summary + +With this proposal we want to introduce a project aimed to enhance and simplify +operatinal maintenance of OpenStack cloud. Project provides service which uses +rule-based engine (```lettuce```) to inspect configurations of OpenStack +platform and find all kinds of architecture- and configuration-level glitches +and inconsistencies. + +This engine will be eventually used to provide hints and best practices to +increase reliability and operational resilience of the cloud. + == Integration Points === TripleO integration points -:: +.. image:: images/openstack_integration.png -package "Metadata services" { - [Heat] - [CFN] - [EC2] -} +This diagram shows integration points between OpenStack and config-validator: -frame "TripleO" { - package "diskimage-builder" { - [tripleo-image-elements] -- nova.conf - [tripleo-image-elements] -- keystone.conf - [tripleo-image-elements] -- glance.conf - } - [os-collect-config] <-- [Heat] - [os-collect-config] <-- [CFN] - [os-collect-config] <-- - [EC2] - [os-collect-config] - -left-> JSON - JSON --> - [os-refresh-config] -} - -frame "Tuskar" { - [Tuskar] -right- Tuskar_API -} - -[Tuskar] --> HOT -HOT --> [Heat] - -cloud { - [Config Validator] << DarkKnight >> -} - -JSON -up-> [Config Validator] -[tripleo-image-elements] -up-> [Config Validator] +* Source configuration data from **metadata services** +* Reuse **data collection methods** from TripleO program +* Create **configuration models** of all OpenStack services with default values of + the parameters and extended typization +* Use configuration files templates from TripleO program to define **actual + state** of configuration in configuration models +* Populate **architecture data model** with collected data +* Run **validator inspections** on the diff --git a/doc/openstack_integration.txt b/doc/openstack_integration.txt new file mode 100644 index 0000000..7faa7dc --- /dev/null +++ b/doc/openstack_integration.txt @@ -0,0 +1,35 @@ +@startuml + +package "Metadata services" { + [Heat] + [CFN] + [EC2] +} + +frame "TripleO" { + package "diskimage-builder" { + [tripleo-image-elements] -- nova.conf + [tripleo-image-elements] -- keystone.conf + [tripleo-image-elements] -- glance.conf + } + [Heat] --> [os-collect-config] + [CFN] --> [os-collect-config] + [EC2] --> [os-collect-config] + [os-collect-config] -left-> JSON + JSON --> [os-refresh-config] +} + +frame "Tuskar" { + [Tuskar] -right- Tuskar_API +} + +cloud { + [Config Validator] << Dark Knight >> +} + +[Tuskar] --> HOT +HOT --> [Heat] +JSON -up-> [Config Validator] +[tripleo-image-elements] -up-> [Config Validator] + +@enduml