File: multi_region.rst

package info (click to toggle)
murano 1%3A6.0.0-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 10,644 kB
  • sloc: python: 34,127; sh: 717; pascal: 269; makefile: 83
file content (61 lines) | stat: -rw-r--r-- 2,072 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
.. _multi-region:

=============================
Support for OpenStack regions
=============================
Murano supports multi-region deployment. If OpenStack setup has several regions
it is possible to choose the region to deploy an application.

There is the new option in the murano configuration file:

*  `home_region` - default region name used to get services
   endpoints. The region where murano-api resides.

Now murano has two possible ways to deploy apps in different regions:

1. Deploy an application in the current murano region.
2. Associate environments with regions.

Deploy an app in the current region
===================================
Each region has a copy of murano services and its own RabbitMQ for api to
engine communication. In this case application will be deployed to the same
region that murano run in.

.. seealso::

    :ref:`multi_region`

Associate environments with regions
===================================
Murano services are in one region but environments can be associated with
different regions. There are two new properties in the class
`io.murano.Environment`:

*  `regionConfigs` - a dict with RabbitMQ settings for each region. The
   structure of the agentRabbitMq part of the dict is identical to [rabbitmq]
   section in the `murano.conf` file. For example:

   .. code-block:: yaml

       regionConfigs:
         RegionOne:
           agentRabbitMq:
             host: 192.1.1.1
             login: admin
             password: admin

   User can store such configs as YAML or JSON files. These config files must
   be stored in a special folder that is configured in [engine] section of
   `murano.conf` file under `class_configs` key and must be named using
   %FQ class name%.json or %FQ class name%.yaml pattern.

*  `region` - region name to deploy an app. It can be passed when creating
   environment via CLI:

   .. code-block:: console

       murano environment-create environment_name --region RegionOne

   If it is not specified a value from `home_region` option of `murano.conf`
   file will be used.