|
|
@ -0,0 +1,183 @@ |
|
|
|
A brief introduction to configure Tricircle service. Only the |
|
|
|
configuration items for Tricircle will be described here. Logging, |
|
|
|
messaging, database, keystonemiddleware etc configuration which are |
|
|
|
generated from OpenStack Oslo library, will not be described here. Since |
|
|
|
these configuration items are common to Nova, Cinder, Neutron. Please |
|
|
|
refer to corresponding description from Nova, Cinder or Neutron. |
|
|
|
|
|
|
|
---------------- |
|
|
|
Common options |
|
|
|
---------------- |
|
|
|
In the common configuration options, the group of "client" need to be |
|
|
|
configured in Admin API, XJob, Local Plugin and Central Plugin. The |
|
|
|
"tricircle_db_connection" should be configured in Admin API, XJob and |
|
|
|
Central Plugin. |
|
|
|
|
|
|
|
.. _Common: |
|
|
|
|
|
|
|
.. list-table:: Description of common configuration options |
|
|
|
:header-rows: 1 |
|
|
|
:class: config-ref-table |
|
|
|
|
|
|
|
* - Configuration option = Default value |
|
|
|
- Description |
|
|
|
* - **[DEFAULT]** |
|
|
|
- |
|
|
|
* - ``tricircle_db_connection`` = ``None`` |
|
|
|
- (String) database connection string for Tricircle, for example, mysql+pymysql://root:password@127.0.0.1/tricircle?charset=utf8 |
|
|
|
* - **[client]** |
|
|
|
- |
|
|
|
* - ``admin_password`` = ``None`` |
|
|
|
- (String) password of admin account, needed when auto_refresh_endpoint set to True, for example, password. |
|
|
|
* - ``admin_tenant`` = ``None`` |
|
|
|
- (String) tenant name of admin account, needed when auto_refresh_endpoint set to True, for example, demo. |
|
|
|
* - ``admin_tenant_domain_name`` = ``Default`` |
|
|
|
- (String) tenant domain name of admin account, needed when auto_refresh_endpoint set to True. |
|
|
|
* - ``admin_user_domain_name`` = ``Default`` |
|
|
|
- (String) user domain name of admin account, needed when auto_refresh_endpoint set to True. |
|
|
|
* - ``admin_username`` = ``None`` |
|
|
|
- (String) username of admin account, needed when auto_refresh_endpoint set to True. |
|
|
|
* - ``auth_url`` = ``http://127.0.0.1:5000/v3`` |
|
|
|
- (String) keystone authorization url, for example, http://$service_host:5000/v3 |
|
|
|
* - ``auto_refresh_endpoint`` = ``True`` |
|
|
|
- (Boolean) if set to True, endpoint will be automatically refreshed if timeout accessing endpoint. |
|
|
|
* - ``ew_bridge_cidr`` = ``100.0.0.0/9`` |
|
|
|
- (String) cidr pool of the east-west bridge network, for example, 100.0.0.0/9 |
|
|
|
* - ``identity_url`` = ``http://127.0.0.1:35357/v3`` |
|
|
|
- (String) keystone service url, for example, http://$service_host:35357/v3 |
|
|
|
* - ``neutron_timeout`` = ``60`` |
|
|
|
- (Integer) timeout for neutron client in seconds. |
|
|
|
* - ``ns_bridge_cidr`` = ``100.128.0.0/9`` |
|
|
|
- (String) cidr pool of the north-south bridge network, for example, 100.128.0.0/9 |
|
|
|
* - ``top_pod_name`` = ``None`` |
|
|
|
- (String) region name of Central Neutron in which client needs to access, for example, CentralRegion. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
------------------------------ |
|
|
|
Tricircle Admin API settings |
|
|
|
------------------------------ |
|
|
|
|
|
|
|
Tricircle Admin API servers for managing the mapping between OpenStack instances |
|
|
|
and availability zone, retrieving object uuid routing and exposing API for |
|
|
|
maintenance. The following items should be configured in Tricircle's api.conf. |
|
|
|
|
|
|
|
.. _Tricircle-Admin_API: |
|
|
|
|
|
|
|
.. list-table:: Description of Tricircle Admin API configuration options |
|
|
|
:header-rows: 1 |
|
|
|
:class: config-ref-table |
|
|
|
|
|
|
|
* - Configuration option = Default value |
|
|
|
- Description |
|
|
|
* - **[DEFAULT]** |
|
|
|
- |
|
|
|
* - ``api_workers`` = ``1`` |
|
|
|
- (Integer) The port to bind to |
|
|
|
* - ``auth_strategy`` = ``keystone`` |
|
|
|
- (String) The type of authentication to use |
|
|
|
* - ``bind_host`` = ``0.0.0.0`` |
|
|
|
- (String) The host IP to bind to |
|
|
|
* - ``bind_port`` = ``19999`` |
|
|
|
- (Integer) The port to bind to |
|
|
|
|
|
|
|
----------------------- |
|
|
|
Tricircle XJob settings |
|
|
|
----------------------- |
|
|
|
|
|
|
|
Tricircle XJob serves for receiving and processing cross OpenStack |
|
|
|
functionality and other async jobs from Admin API or Tricircle Central |
|
|
|
Neutron Plugin. The following items should be configured in Tricircle's |
|
|
|
xjob.conf. |
|
|
|
|
|
|
|
.. _Tricircle-Xjob: |
|
|
|
|
|
|
|
.. list-table:: Description of Tricircle XJob configuration options |
|
|
|
:header-rows: 1 |
|
|
|
:class: config-ref-table |
|
|
|
|
|
|
|
* - Configuration option = Default value |
|
|
|
- Description |
|
|
|
* - **[DEFAULT]** |
|
|
|
- |
|
|
|
* - ``periodic_enable`` = ``True`` |
|
|
|
- (Boolean) Enable periodic tasks |
|
|
|
* - ``periodic_fuzzy_delay`` = ``60`` |
|
|
|
- (Integer) Range of seconds to randomly delay when starting the periodic task scheduler to reduce stampeding. (Disable by setting to 0) |
|
|
|
* - ``report_interval`` = ``10`` |
|
|
|
- (Integer) Seconds between nodes reporting state to datastore |
|
|
|
* - ``host`` = ``tricircle.xhost`` |
|
|
|
- (String) The host name for RPC server, each node should have different host name. |
|
|
|
* - ``job_run_expire`` = ``180`` |
|
|
|
- (Integer) Running job is considered expires after this time, in seconds |
|
|
|
* - ``workers`` = ``1`` |
|
|
|
- (Integer) Number of workers |
|
|
|
* - ``worker_handle_timeout`` = ``1800`` |
|
|
|
- (Integer) Timeout for worker's one turn of processing, in seconds |
|
|
|
* - ``worker_sleep_time`` = ``60`` |
|
|
|
- (Float) Seconds a worker sleeps after one run in a loop |
|
|
|
|
|
|
|
------------------------------- |
|
|
|
Networking settings for Tricircle |
|
|
|
------------------------------- |
|
|
|
To make the networking automation work, two plugins need to be configured: |
|
|
|
Tricircle Central Neutron Plugin and Tricircle Local Neutron Plugin. |
|
|
|
|
|
|
|
================================ |
|
|
|
Tricircle Central Neutron Plugin |
|
|
|
================================ |
|
|
|
The Tricircle Central Neutron Plugin serves for tenant level L2/L3 networking |
|
|
|
automation across multiple OpenStack instances. The following items should be |
|
|
|
configured in central Neutron's neutron.conf. |
|
|
|
|
|
|
|
.. _Central Neutron: |
|
|
|
|
|
|
|
.. list-table:: Description of Central Neutron configuration options |
|
|
|
:header-rows: 1 |
|
|
|
:class: config-ref-table |
|
|
|
|
|
|
|
* - Configuration option = Default value |
|
|
|
- Description |
|
|
|
* - **[DEFAULT]** |
|
|
|
- |
|
|
|
* - ``core_plugin`` = ``None`` |
|
|
|
- (String) core plugin central Neutron server uses, should be set to tricircle.network.central_plugin.TricirclePlugin |
|
|
|
* - **[tricircle]** |
|
|
|
- |
|
|
|
* - ``bridge_network_type`` = ``shared_vlan`` |
|
|
|
- (String) Type of l3 bridge network, this type should be enabled in tenant_network_types and is not local type, for example, shared_vlan. |
|
|
|
* - ``network_vlan_ranges`` = ``None`` |
|
|
|
- (String) List of <physical_network>:<vlan_min>:<vlan_max> or <physical_network> specifying physical_network names usable for VLAN provider and tenant networks, as well as ranges of VLAN tags on each available for allocation to tenant networks, for example,bridge:2001:3000. |
|
|
|
* - ``tenant_network_types`` = ``local,shared_vlan`` |
|
|
|
- (String) Ordered list of network_types to allocate as tenant networks. The default value "local" is useful for single pod connectivity. For example, local and shared_vlan. |
|
|
|
* - ``type_drivers`` = ``local,shared_vlan`` |
|
|
|
- (String) List of network type driver entry points to be loaded from the tricircle.network.type_drivers namespace. For example, local and shared_vlan. |
|
|
|
|
|
|
|
|
|
|
|
=============================== |
|
|
|
Tricircle Local Neutron Plugin |
|
|
|
=============================== |
|
|
|
|
|
|
|
The Tricircle Local Neutron Plugin serves for cross Neutron networking |
|
|
|
automation triggering. It is a shim layer between real core plugin and |
|
|
|
Neutron API server. The following items should be configured in local |
|
|
|
Neutron's neutron.conf |
|
|
|
|
|
|
|
.. _Local Neutron: |
|
|
|
|
|
|
|
.. list-table:: Description of Local Neutron configuration options |
|
|
|
:header-rows: 1 |
|
|
|
:class: config-ref-table |
|
|
|
|
|
|
|
* - Configuration option = Default value |
|
|
|
- Description and Example |
|
|
|
* - **[DEFAULT]** |
|
|
|
- |
|
|
|
* - ``core_plugin`` = ``None`` |
|
|
|
- (String) core plugin local Neutron server uses, should be set to tricircle.network.local_plugin.TricirclePlugin |
|
|
|
* - **[tricircle]** |
|
|
|
- |
|
|
|
* - ``central_neutron_url`` = ``None`` |
|
|
|
- (String) Central Neutron server url, for example, http://$service_host:9696 |
|
|
|
* - ``real_core_plugin`` = ``None`` |
|
|
|
- (String) The core plugin the Tricircle local plugin will invoke, for example, neutron.plugins.ml2.plugin.Ml2Plugin |