Merge "Add configuration guide in the Tricircle"
This commit is contained in:
commit
07468d25c2
|
@ -48,6 +48,7 @@ detailed in the LICENSE file.
|
||||||
* Wiki: https://wiki.openstack.org/wiki/tricircle
|
* Wiki: https://wiki.openstack.org/wiki/tricircle
|
||||||
* Installation guide: http://docs.openstack.org/developer/tricircle/installation-guide.html
|
* Installation guide: http://docs.openstack.org/developer/tricircle/installation-guide.html
|
||||||
* Tricircle Admin API documentation: http://docs.openstack.org/developer/tricircle/api_v1.html
|
* Tricircle Admin API documentation: http://docs.openstack.org/developer/tricircle/api_v1.html
|
||||||
|
* Configuration guide: http://docs.openstack.org/developer/tricircle/configuration.html
|
||||||
* Source: http://git.openstack.org/cgit/openstack/tricircle
|
* Source: http://git.openstack.org/cgit/openstack/tricircle
|
||||||
* Bugs: http://bugs.launchpad.net/tricircle
|
* Bugs: http://bugs.launchpad.net/tricircle
|
||||||
* Blueprints: https://blueprints.launchpad.net/tricircle
|
* Blueprints: https://blueprints.launchpad.net/tricircle
|
||||||
|
|
|
@ -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
|
|
@ -14,10 +14,12 @@ Contents:
|
||||||
readme
|
readme
|
||||||
usage
|
usage
|
||||||
installation-guide
|
installation-guide
|
||||||
|
configuration
|
||||||
api_v1
|
api_v1
|
||||||
contributing
|
contributing
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Indices and tables
|
Indices and tables
|
||||||
==================
|
==================
|
||||||
|
|
||||||
|
|
|
@ -353,7 +353,7 @@ class XManagerTest(unittest.TestCase):
|
||||||
expired_job = {
|
expired_job = {
|
||||||
'id': uuidutils.generate_uuid(),
|
'id': uuidutils.generate_uuid(),
|
||||||
'type': 'fake_resource',
|
'type': 'fake_resource',
|
||||||
'timestamp': datetime.datetime.now() - datetime.timedelta(0, 120),
|
'timestamp': datetime.datetime.now() - datetime.timedelta(0, 200),
|
||||||
'status': constants.JS_Running,
|
'status': constants.JS_Running,
|
||||||
'resource_id': fake_id,
|
'resource_id': fake_id,
|
||||||
'extra_id': constants.SP_EXTRA_ID
|
'extra_id': constants.SP_EXTRA_ID
|
||||||
|
|
|
@ -49,7 +49,7 @@ common_opts = [
|
||||||
cfg.IntOpt('worker_handle_timeout', default=1800,
|
cfg.IntOpt('worker_handle_timeout', default=1800,
|
||||||
help=_("Timeout for worker's one turn of processing, in"
|
help=_("Timeout for worker's one turn of processing, in"
|
||||||
" seconds")),
|
" seconds")),
|
||||||
cfg.IntOpt('job_run_expire', default=60,
|
cfg.IntOpt('job_run_expire', default=180,
|
||||||
help=_("Running job is considered expires after this time, in"
|
help=_("Running job is considered expires after this time, in"
|
||||||
" seconds")),
|
" seconds")),
|
||||||
cfg.FloatOpt('worker_sleep_time', default=0.1,
|
cfg.FloatOpt('worker_sleep_time', default=0.1,
|
||||||
|
|
Loading…
Reference in New Issue