Add YAML formatted description of current model structure to documentation Change-Id: I82d543974169231fb0b7f34993eb97954996789b
		
			
				
	
	
		
			94 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
Architecture Data Model
 | 
						|
=======================
 | 
						|
 | 
						|
Overview
 | 
						|
--------
 | 
						|
 | 
						|
We want to introduce unified data structure which contains all information
 | 
						|
necessary to inspect, analyze, describe and visualize OpenStack architecture.
 | 
						|
 | 
						|
Architecture data model serves multiple actual and potential use cases.
 | 
						|
 | 
						|
Diagnostics
 | 
						|
^^^^^^^^^^^
 | 
						|
 | 
						|
Architecture data model provides necessary data for the configuration analysis
 | 
						|
and diagnostics tool (**Rubick**).
 | 
						|
 | 
						|
Deployment
 | 
						|
^^^^^^^^^^
 | 
						|
 | 
						|
Arhictecture data model must include all information necessary to deployment
 | 
						|
systems (e.g. **Fuel** or **TripleO**). We will implement simple conversion
 | 
						|
tools which will allow to configure these deployment systems and effectively
 | 
						|
support 'portable' clouds.
 | 
						|
 | 
						|
Benchmarking
 | 
						|
^^^^^^^^^^^^
 | 
						|
 | 
						|
This model could be reused by **Rally** project to compare benchmarking
 | 
						|
results for different architectures. Definitions of architectures must be
 | 
						|
comparable and portable, which is exactly what architecture model aimed to
 | 
						|
solve.
 | 
						|
 | 
						|
Upgrade
 | 
						|
^^^^^^^
 | 
						|
 | 
						|
Upgrade system could potentially utilize the model just in the way the
 | 
						|
Deployment systems do. In addition, existing clouds could be inspected and
 | 
						|
described for subsequent upgrade using this model.
 | 
						|
 | 
						|
Tech Support
 | 
						|
^^^^^^^^^^^^
 | 
						|
 | 
						|
The model suits as base for questionaire to assess existing installations for
 | 
						|
support contract pricing purposes.
 | 
						|
 | 
						|
Hardening
 | 
						|
^^^^^^^^^
 | 
						|
 | 
						|
The model could be used to perform automated/guided hardening of OpenStack
 | 
						|
architecture and configuration. This is achieved through use of 'best practice'
 | 
						|
rulesets for the inspection of cloud.
 | 
						|
 | 
						|
Expert system
 | 
						|
^^^^^^^^^^^^^
 | 
						|
 | 
						|
The model could be used as a part of production/reactive rules system capable
 | 
						|
of automated reporting and handling of operational errors, based on combination
 | 
						|
of *base* status of the cloud, logging messages and notifications.
 | 
						|
 | 
						|
Data Format
 | 
						|
-----------
 | 
						|
 | 
						|
This section proposes data model format which allows to describe an OpenStack
 | 
						|
installation. The model includes data regarding physical infrastructure, logical
 | 
						|
topology of services and mapping between the two.
 | 
						|
 | 
						|
Current model of OpenStack architecture used in Rubick is defined in module
 | 
						|
``rubick/model.py``. This module contains following classes in hierarchy below:
 | 
						|
 | 
						|
  OpenStack:
 | 
						|
    hosts:
 | 
						|
      - Host: hostname1
 | 
						|
        components:
 | 
						|
          - Service: NovaApiComponent
 | 
						|
            config:
 | 
						|
              - key: value
 | 
						|
              - ...
 | 
						|
          - Service: KeystoneComponent
 | 
						|
            config:
 | 
						|
              - key: value
 | 
						|
              - ...
 | 
						|
          - ...
 | 
						|
        filesystem:
 | 
						|
          - resource1: FileResource
 | 
						|
          - resource2: DirectoryResource
 | 
						|
          - ...
 | 
						|
      - Host: hostname2
 | 
						|
        components:
 | 
						|
          - ...
 | 
						|
        filesystem:
 | 
						|
          - ...
 | 
						|
      - ...
 |