Octavia Jobboard integration
Add parameters for configuring Octavia Jobboard for the amphorav2 provider. Jobboard for Octavia is enabled by the OctaviaEnableJobbard (default false), Octavia is configured by puppet and THT creates an additional database to store persistent objects managed by Octavia (dbname is octavia_persistence). Depends-On: https://review.opendev.org/c/openstack/puppet-tripleo/+/820668 Change-Id: Ia16b840ce63319375eddf860a4024c2ad47fab96
This commit is contained in:
parent
8e34b58d70
commit
3f55cbfbcf
@ -17,6 +17,7 @@ resource_registry:
|
||||
OS::TripleO::Services::OctaviaWorker: ../../deployment/octavia/octavia-worker-container-puppet.yaml
|
||||
OS::TripleO::Services::Pacemaker: ../../deployment/pacemaker/pacemaker-baremetal-puppet.yaml
|
||||
OS::TripleO::Services::PacemakerRemote: ../../deployment/pacemaker/pacemaker-remote-baremetal-puppet.yaml
|
||||
OS::TripleO::Services::Redis: ../../deployment/database/redis-container-puppet.yaml
|
||||
OS::TripleO::Services::SwiftDispersion: OS::Heat::None
|
||||
OS::TripleO::Services::SwiftProxy: OS::Heat::None
|
||||
OS::TripleO::Services::SwiftRingBuilder: OS::Heat::None
|
||||
|
@ -15,6 +15,7 @@ resource_registry:
|
||||
OS::TripleO::Services::OctaviaWorker: ../../deployment/octavia/octavia-worker-container-puppet.yaml
|
||||
OS::TripleO::Services::OsloMessagingNotify: ../../deployment/rabbitmq/rabbitmq-messaging-notify-shared-puppet.yaml
|
||||
OS::TripleO::Services::OsloMessagingRpc: ../../deployment/rabbitmq/rabbitmq-messaging-rpc-pacemaker-puppet.yaml
|
||||
OS::TripleO::Services::Redis: ../../deployment/database/redis-container-puppet.yaml
|
||||
OS::TripleO::Services::SwiftDispersion: OS::Heat::None
|
||||
OS::TripleO::Services::SwiftProxy: OS::Heat::None
|
||||
OS::TripleO::Services::SwiftRingBuilder: OS::Heat::None
|
||||
|
@ -11,6 +11,7 @@ resource_registry:
|
||||
OS::TripleO::Services::OctaviaHousekeeping: ../../deployment/octavia/octavia-housekeeping-container-puppet.yaml
|
||||
OS::TripleO::Services::OctaviaWorker: ../../deployment/octavia/octavia-worker-container-puppet.yaml
|
||||
OS::TripleO::Services::OsloMessagingRpc: ../../deployment/rabbitmq/rabbitmq-messaging-rpc-container-puppet.yaml
|
||||
OS::TripleO::Services::Redis: ../../deployment/database/redis-container-puppet.yaml
|
||||
OS::TripleO::Services::SwiftDispersion: OS::Heat::None
|
||||
OS::TripleO::Services::SwiftProxy: OS::Heat::None
|
||||
OS::TripleO::Services::SwiftRingBuilder: OS::Heat::None
|
||||
|
@ -287,6 +287,7 @@ outputs:
|
||||
octavia::db::mysql::user: {get_param: OctaviaUserName}
|
||||
octavia::db::mysql::host: '%'
|
||||
octavia::db::mysql::dbname: octavia
|
||||
octavia::db::mysql::persistence_dbname: octavia_persistence
|
||||
horizon:
|
||||
horizon::dashboards::octavia::policies: {get_param: OctaviaApiPolicies}
|
||||
# BEGIN DOCKER SETTINGS #
|
||||
@ -354,7 +355,7 @@ outputs:
|
||||
recurse: true
|
||||
- {get_attr: [OctaviaProviderConfig, role_data, kolla_permissions]}
|
||||
/var/lib/kolla/config_files/octavia_api_db_sync.json:
|
||||
command: "/usr/bin/bootstrap_host_exec octavia_api su octavia -s /bin/bash -c '/usr/bin/octavia-db-manage upgrade head'"
|
||||
command: "/usr/bin/bootstrap_host_exec octavia_api su octavia -s /bin/bash -c '/usr/bin/octavia-db-manage upgrade head && /usr/bin/octavia-db-manage upgrade_persistence'"
|
||||
config_files: *octavia_api_config_files
|
||||
permissions: *octavia_api_permissions
|
||||
metadata_settings: {get_attr: [OctaviaProviderConfig, role_data, metadata_settings]}
|
||||
|
@ -218,6 +218,18 @@ parameters:
|
||||
type: string
|
||||
description: Key to identify heartbeat messages for amphorae.
|
||||
hidden: true
|
||||
OctaviaEnableJobboard:
|
||||
default: false
|
||||
description: Enable jobboard for the amphorav2 driver, it enables flow resumption for the amphora driver.
|
||||
type: boolean
|
||||
OctaviaJobboardExpirationTime:
|
||||
default: 30
|
||||
description: Expiry of claimed jobs in jobboard.
|
||||
type: number
|
||||
RedisPassword:
|
||||
description: The password for the redis service account.
|
||||
type: string
|
||||
hidden: true
|
||||
|
||||
conditions:
|
||||
octavia_ca_cert_set:
|
||||
@ -237,7 +249,8 @@ outputs:
|
||||
value:
|
||||
service_name: octavia_base
|
||||
config_settings:
|
||||
octavia::logging::debug:
|
||||
map_merge:
|
||||
- octavia::logging::debug:
|
||||
if:
|
||||
- {get_param: OctaviaDebug}
|
||||
- true
|
||||
@ -328,6 +341,29 @@ outputs:
|
||||
- octavia_client_cert_set
|
||||
- {get_param: OctaviaClientCert}
|
||||
octavia::controller::heartbeat_key: {get_param: OctaviaHeartbeatKey}
|
||||
- if:
|
||||
- {get_param: OctaviaEnableJobboard}
|
||||
- octavia::task_flow::jobboard_enabled: {get_param: OctaviaEnableJobboard}
|
||||
octavia::task_flow::jobboard_backend_hosts: "%{hiera('redis_vip')}"
|
||||
octavia::task_flow::jobboard_backend_password: {get_param: RedisPassword}
|
||||
octavia::task_flow::jobboard_expiration_time: {get_param: OctaviaJobboardExpirationTime}
|
||||
octavia::task_flow::persistence_connection:
|
||||
make_url:
|
||||
scheme: {get_param: [EndpointMap, MysqlInternal, protocol]}
|
||||
username: {get_param: OctaviaUserName}
|
||||
password: {get_param: OctaviaPassword}
|
||||
host: {get_param: [EndpointMap, MysqlInternal, host]}
|
||||
path: /octavia_persistence
|
||||
query:
|
||||
if:
|
||||
- {get_param: EnableSQLAlchemyCollectd}
|
||||
- read_default_file: /etc/my.cnf.d/tripleo.cnf
|
||||
read_default_group: tripleo
|
||||
plugin: collectd
|
||||
collectd_program_name: octavia
|
||||
collectd_host: localhost
|
||||
- read_default_file: /etc/my.cnf.d/tripleo.cnf
|
||||
read_default_group: tripleo
|
||||
update_tasks: &ensure_start_up_files
|
||||
- name: make sure that post-deploy.conf exists before restarting containers on update or upgrade
|
||||
when: step|int == 5
|
||||
|
Loading…
Reference in New Issue
Block a user