File ardana-octavia-8.0+git.1590100427.cf4cc8f.obscpio of Package ardana-octavia
07070100000000000081A40000000000000000000000015EC701CB00000034000000000000000000000000000000000000003B00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/.copyrightignore.copyrightignore
roles/octavia-common/files/sudoers
07070100000001000081A40000000000000000000000015EC701CB00000083000000000000000000000000000000000000003500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/.gitreview[gerrit]
host=gerrit.suse.provo.cloud
port=29418
project=ardana/octavia-ansible.git
defaultremote=ardana
defaultbranch=stable/pike
07070100000002000081A40000000000000000000000015EC701CB0000279F000000000000000000000000000000000000003200000000ardana-octavia-8.0+git.1590100427.cf4cc8f/LICENSE
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
07070100000003000081A40000000000000000000000015EC701CB0000059D000000000000000000000000000000000000004100000000ardana-octavia-8.0+git.1590100427.cf4cc8f/_octavia-configure.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: OCT-API:OCT-HMX
become: yes
roles:
- octavia-common
tasks:
- include: roles/octavia-common/tasks/configure.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-api
tasks:
- include: roles/octavia-api/tasks/configure.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-worker
tasks:
- include: roles/octavia-common/tasks/tls_deploy.yml
- include: roles/octavia-worker/tasks/configure.yml
- hosts: OCT-HMX
become: yes
roles:
- octavia-common
- octavia-health-manager
tasks:
- include: roles/octavia-health-manager/tasks/configure.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-housekeeping
tasks:
- include: roles/octavia-housekeeping/tasks/configure.yml
07070100000004000081A40000000000000000000000015EC701CB00000E32000000000000000000000000000000000000004700000000ardana-octavia-8.0+git.1590100427.cf4cc8f/_octavia-guest-configure.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
# Read the values set by execution of service-guest-image.yml
- hosts: OCT-API
tasks:
- set_fact:
SRC_GUEST_IMAGE_DIR: "{{ hostvars.localhost.src_guest_image_tempdir.stdout}}"
- hosts: OCT-API
tasks:
- set_fact:
GUEST_IMAGE_METADATA: "{{ hostvars.localhost.guest_image_metadata.ansible_facts.metadata }}"
SERVICE_NAME: "{{ hostvars.localhost.guest_image_metadata.ansible_facts.service }}"
PRODUCT: "{{ hostvars.localhost.guest_image_metadata.ansible_facts.product }}"
IMAGE_NAME: "{{ hostvars.localhost.guest_image_metadata.ansible_facts.name }}"
when: deployer_media_legacy_layout | bool
- hosts: OCT-API
tasks:
- set_fact:
SRC_GUEST_IMAGE_FILE_NAME: "{{ hostvars.localhost.src_octavia_image_file_name.stdout }}"
when: not (deployer_media_legacy_layout | bool)
- hosts: OCT-API
tasks:
- set_fact:
SERVICE_NAME: "{{ SRC_GUEST_IMAGE_FILE_NAME.split('-')[1] }}"
IMAGE_NAME: "{{ SRC_GUEST_IMAGE_FILE_NAME.split('.')[0] }}"
IMAGE_VERSION: "{{ SRC_GUEST_IMAGE_FILE_NAME.split('-')[-1][:5] }}"
when: not (deployer_media_legacy_layout | bool)
# Copy the image file to OCT-API and upload it to glance
- hosts: OCT-API
roles:
- service-guest-image
- ses_common
- octavia-common
vars:
GLANCE_CLIENT: glance
openstack_project_name: "{{ octavia_project_name }}"
openstack_username: "{{ octavia_admin_user }}"
openstack_password: "{{ octavia_admin_password }}"
openstack_auth_url: "{{ octavia_auth_endpoint }}"
openstack_user_domain_name: "{{ octavia_user_domain_name }}"
openstack_project_domain_name: "{{ octavia_project_domain_name }}"
openstack_endpoint_type: "{{ octavia_endpoint_type }}"
openstack_ca_file: "{{ octavia_ca_file }}"
openstack_insecure: False
tasks:
- include: roles/service-guest-image/tasks/copy_image_file.yml
when: SERVICE_NAME == 'octavia'
- include: roles/ses_common/tasks/_include_setup.yml
- include: roles/service-guest-image/tasks/upload_image.yml
ansible_python_interpreter: "{{ GLA_CLI.vars.glance_client_python_interpreter }}"
when: SERVICE_NAME == 'octavia'
# Configure Octavia for the new image id
- hosts: OCT-API
become: yes
roles:
- octavia-common
vars:
octavia_amp_image_id: "{{service_guest_image_id.stdout}}"
tasks:
- include: roles/octavia-common/tasks/configure.yml
when: SERVICE_NAME == 'octavia'
# Configure Octavia for the new image tag
- hosts: OCT-API
become: yes
roles:
- octavia-common
vars:
octavia_amp_image_tag: "amphora"
when: not (deployer_media_legacy_layout | bool)
tasks:
- include: roles/octavia-common/tasks/configure.yml
when: SERVICE_NAME == 'octavia' and not (deployer_media_legacy_layout | bool)
# Restart the services to pick up the image ID
- include: octavia-stop.yml
when: SERVICE_NAME == 'octavia'
- include: octavia-start.yml
when: SERVICE_NAME == 'octavia'
07070100000005000081A40000000000000000000000015EC701CB00000308000000000000000000000000000000000000003F00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/_octavia-install.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: OCT-API:OCT-HMX
become: yes
roles:
- octavia-common
tasks:
- include: roles/octavia-common/tasks/install.yml
07070100000006000081A40000000000000000000000015EC701CB000002E8000000000000000000000000000000000000004800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/_octavia-schedule-restart.yml#
# (c) Copyright 2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
# Schedule a restart of all octavia services using ardana_notify_... variables
- hosts: all
tasks:
- include: roles/octavia-common/tasks/_schedule_restart.yml07070100000007000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000003100000000ardana-octavia-8.0+git.1590100427.cf4cc8f/config07070100000008000081A40000000000000000000000015EC701CB00000603000000000000000000000000000000000000004600000000ardana-octavia-8.0+git.1590100427.cf4cc8f/config/octavia-symlinks.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# The following relative symlinks are created under the
# my_cloud/config directory.
---
symlinks:
"octavia/octavia-api.conf.j2": "roles/octavia-common/templates/octavia-api.conf.j2"
"octavia/octavia-api-logging.conf.j2": "roles/octavia-common/templates/octavia-api-logging.conf.j2"
"octavia/octavia-worker.conf.j2": "roles/octavia-common/templates/octavia-worker.conf.j2"
"octavia/octavia-worker-logging.conf.j2": "roles/octavia-common/templates/octavia-worker-logging.conf.j2"
"octavia/octavia-health-manager.conf.j2": "roles/octavia-common/templates/octavia-health-manager.conf.j2"
"octavia/octavia-hm-logging.conf.j2": "roles/octavia-common/templates/octavia-hm-logging.conf.j2"
"octavia/octavia-housekeeping.conf.j2": "roles/octavia-common/templates/octavia-housekeeping.conf.j2"
"octavia/octavia-hk-logging.conf.j2": "roles/octavia-common/templates/octavia-hk-logging.conf.j2"
07070100000009000081A40000000000000000000000015EC701CB00000D0F000000000000000000000000000000000000003D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/octavia-deploy.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: localhost
connection: local
roles:
- tls-trust
- octavia-common
tasks:
- include: roles/octavia-common/tasks/tls_bootstrap.yml
- include: roles/tls-trust/tasks/cert_csr.yml
- include: roles/tls-trust/tasks/cert_sign.yml
- include: roles/octavia-common/tasks/tls_copy.yml
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/keystone_conf.yml
ansible_python_interpreter: "{{ KEY_CLI.vars.keystone_client_python_interpreter }}"
- hosts: OCT-API:OCT-HMX
become: yes
roles:
- octavia-common
tasks:
- include: roles/octavia-common/tasks/install.yml
- include: roles/octavia-common/tasks/configure.yml
- include: roles/octavia-common/tasks/start.yml
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/db_configure.yml
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/set_nova_quotas.yml
ansible_python_interpreter: "{{ NOV_CLI.vars.nova_client_python_interpreter }}"
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/set_neutron_quotas.yml
ansible_python_interpreter: "{{ NEU_CLI.vars.neutron_client_python_interpreter }}"
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-api
tasks:
- include: roles/octavia-api/tasks/configure.yml
- include: roles/octavia-api/tasks/start.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-worker
tasks:
- include: roles/octavia-common/tasks/tls_deploy.yml
- include: roles/octavia-worker/tasks/configure.yml
- include: roles/octavia-worker/tasks/start.yml
- hosts: OCT-HMX
become: yes
roles:
- octavia-common
- octavia-health-manager
tasks:
- include: roles/octavia-health-manager/tasks/configure.yml
- include: roles/octavia-health-manager/tasks/start.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-housekeeping
tasks:
- include: roles/octavia-housekeeping/tasks/configure.yml
- include: roles/octavia-housekeeping/tasks/start.yml
# after everything is running, turn on monitoring
- hosts: OCT-API:OCT-HMX:&MON-AGN
roles:
- octavia-common
- { role: monasca-agent, run_mode: Use }
tasks:
- include: roles/octavia-common/tasks/setup_monasca_service_plugin.yml
# set up active check of octavia api via vip
- hosts: OCT-API:&MON-AGN
roles:
- octavia-common
- { role: monasca-agent, run_mode: Use }
tasks:
- include: roles/octavia-common/tasks/remote_monitor.yml
0707010000000A000081A40000000000000000000000015EC701CB000003B0000000000000000000000000000000000000005500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/octavia-reconfigure-credentials-change.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/keystone_change_pwd.yml
ansible_python_interpreter: "{{ KEY_CLI.vars.keystone_client_python_interpreter }}"
- include: _octavia-configure.yml
- include: octavia-start.yml
0707010000000B000081A40000000000000000000000015EC701CB00000700000000000000000000000000000000000000004200000000ardana-octavia-8.0+git.1590100427.cf4cc8f/octavia-reconfigure.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: localhost
connection: local
roles:
- tls-trust
- octavia-common
tasks:
- include: roles/octavia-common/tasks/tls_bootstrap.yml
- include: roles/tls-trust/tasks/cert_csr.yml
- include: roles/tls-trust/tasks/cert_sign.yml
- include: roles/octavia-common/tasks/tls_copy.yml
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/keystone_conf.yml
ansible_python_interpreter: "{{ KEY_CLI.vars.keystone_client_python_interpreter }}"
- include: _octavia-configure.yml
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/db_configure.yml
- hosts: OCT-API:OCT-HMX:&MON-AGN
roles:
- octavia-common
- { role: monasca-agent, run_mode: Use }
tasks:
- include: roles/octavia-common/tasks/setup_monasca_service_plugin.yml
# set up active check of octavia api via vip
- hosts: OCT-API:&MON-AGN
roles:
- octavia-common
- { role: monasca-agent, run_mode: Use }
tasks:
- include: roles/octavia-common/tasks/remote_monitor.yml
- include: octavia-start.yml
0707010000000C000081A40000000000000000000000015EC701CB0000028B000000000000000000000000000000000000003E00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/octavia-restart.yml#
# (c) Copyright 2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: _octavia-schedule-restart.yml
- include: octavia-start.yml
0707010000000D000081A40000000000000000000000015EC701CB00000552000000000000000000000000000000000000003C00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/octavia-start.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: OCT-API:OCT-HMX
become: yes
roles:
- octavia-common
tasks:
- include: roles/octavia-common/tasks/start.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-api
tasks:
- include: roles/octavia-api/tasks/start.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-worker
tasks:
- include: roles/octavia-worker/tasks/start.yml
- hosts: OCT-HMX
become: yes
roles:
- octavia-common
- octavia-health-manager
tasks:
- include: roles/octavia-health-manager/tasks/start.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-housekeeping
tasks:
- include: roles/octavia-housekeeping/tasks/start.yml
0707010000000E000081A40000000000000000000000015EC701CB00000483000000000000000000000000000000000000003D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/octavia-status.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: OCT-API
become: yes
roles:
- octavia-api
tasks:
- include: roles/octavia-api/tasks/status.yml
- hosts: OCT-API
become: yes
roles:
- octavia-worker
tasks:
- include: roles/octavia-worker/tasks/status.yml
- hosts: OCT-HMX
become: yes
roles:
- octavia-health-manager
tasks:
- include: roles/octavia-health-manager/tasks/status.yml
- hosts: OCT-API
become: yes
roles:
- octavia-housekeeping
tasks:
- include: roles/octavia-housekeeping/tasks/status.yml
0707010000000F000081A40000000000000000000000015EC701CB000004CB000000000000000000000000000000000000003B00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/octavia-stop.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-api
tasks:
- include: roles/octavia-api/tasks/stop.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-worker
tasks:
- include: roles/octavia-worker/tasks/stop.yml
- hosts: OCT-HMX
become: yes
roles:
- octavia-common
- octavia-health-manager
tasks:
- include: roles/octavia-health-manager/tasks/stop.yml
- hosts: OCT-API
become: yes
roles:
- octavia-common
- octavia-housekeeping
tasks:
- include: roles/octavia-housekeeping/tasks/stop.yml
07070100000010000081A40000000000000000000000015EC701CB0000063A000000000000000000000000000000000000003E00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/octavia-upgrade.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: octavia-status.yml
# Install new venv
- include: _octavia-install.yml
- hosts: localhost
connection: local
roles:
- tls-trust
- octavia-common
tasks:
- include: roles/octavia-common/tasks/tls_bootstrap.yml
- include: roles/tls-trust/tasks/cert_csr.yml
- include: roles/tls-trust/tasks/cert_sign.yml
- include: roles/octavia-common/tasks/tls_copy.yml
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/keystone_conf.yml
ansible_python_interpreter: "{{ KEY_CLI.vars.keystone_client_python_interpreter }}"
# Configure services in a new venv
- include: _octavia-configure.yml
- hosts: OCT-API
become: yes
roles:
- octavia-post-configure
tasks:
- include: roles/octavia-post-configure/tasks/db_configure.yml
# Restart services based on notifications set earlier
- include: octavia-start.yml
- include: octavia-status.yml
07070100000011000041ED0000000000000000000000085EC701CB00000000000000000000000000000000000000000000003000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles07070100000012000041ED0000000000000000000000055EC701CB00000000000000000000000000000000000000000000003C00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api07070100000013000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/defaults07070100000014000081A40000000000000000000000015EC701CB000002E6000000000000000000000000000000000000004E00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/defaults/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# This file will contain the default values for the octavia server
---
octavia_component: octavia-api
07070100000015000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004200000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/tasks07070100000016000081A40000000000000000000000015EC701CB00000471000000000000000000000000000000000000005000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/tasks/configure.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: ../../octavia-common/tasks/create_systemd_service.yml
octavia_service_cmd: "octavia-api"
octavia_service_cmd_args: "--config-file={{ octavia_conf_dir }}/octavia-api.conf"
- name: octavia-api | configure | set octavia log file ownership
become: yes
file:
path: "{{ octavia_log_dir }}/{{ item }}"
owner: "{{ octavia_user }}"
group: "{{ octavia_log_file_group }}"
mode: 0640
state: touch
with_items:
- octavia-api.log
- octavia-api-json.log
07070100000017000081A40000000000000000000000015EC701CB0000043F000000000000000000000000000000000000004C00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/tasks/start.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-api | start | Restart the octavia-api
service: name=octavia-api state=restarted
when: (ardana_notify_octavia_restart_required is defined and
ardana_notify_octavia_restart_required.changed) or
(ardana_notify_octavia_api_restart_required is defined and
ardana_notify_octavia_api_restart_required.changed)
- name: octavia-api | start | Start the octavia-api
service: name=octavia-api state=started
07070100000018000081A40000000000000000000000015EC701CB000002BE000000000000000000000000000000000000004D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/tasks/status.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: ../../octavia-common/tasks/_service_status.yml
07070100000019000081A40000000000000000000000015EC701CB000002E0000000000000000000000000000000000000004B00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/tasks/stop.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-api | stop | Stop the octavia-api
service: name=octavia-api state=stopped
0707010000001A000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004100000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/vars0707010000001B000081A40000000000000000000000015EC701CB00000283000000000000000000000000000000000000004A00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-api/vars/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
0707010000001C000041ED0000000000000000000000085EC701CB00000000000000000000000000000000000000000000003F00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common0707010000001D000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/defaults0707010000001E000081A40000000000000000000000015EC701CB00001A4D000000000000000000000000000000000000005100000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/defaults/main.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
mysql:
host: "{{ OCT_API.consumes_FND_MDB.vips.private[0].host }}"
octavia_user: "{{ OCT_API.consumes_FND_MDB.vars.accounts.octavia.username }}"
octavia_password: "{{ OCT_API.consumes_FND_MDB.vars.accounts.octavia.password | quote }}"
use_tls: "{{ OCT_API.consumes_FND_MDB.vips.private[0].use_tls }}"
ca: "?ssl_ca={{ trusted_ca_bundle }}"
keystone:
admin_tenant: "{{ KEY_API.vars.keystone_admin_tenant }}"
service_tenant: "{{ KEY_API.vars.keystone_service_tenant }}"
auth_uri: "{{ OCT_API.consumes_KEY_API.vips.private[0].url }}"
identity_uri: "{{ OCT_API.consumes_KEY_API.vips.private[0].url }}"
endpoint: "{{ OCT_API.consumes_KEY_API.vips.private[0].url }}/v3"
octavia_admin_user: "{{ OCT_API.consumes_KEY_API.vars.keystone_octavia_user }}"
octavia_admin_password: "{{ OCT_API.consumes_KEY_API.vars.keystone_octavia_password | quote }}"
octavia_project_name: "{{ OCT_API.consumes_KEY_API.vars.octavia_admin_project }}"
admin_user: "{{ KEY_API.vars.keystone_admin_user }}"
admin_password: "{{ KEY_API.vars.keystone_admin_pwd | quote }}"
default_domain_name: "{{ KEY_API.vars.keystone_default_domain }}"
admin_role: "{{ KEY_API.vars.keystone_admin_role }}"
neutron:
admin_user: "{{ OCT_API.consumes_KEY_API.vars.keystone_neutron_user }}"
admin_password: "{{ OCT_API.consumes_KEY_API.vars.keystone_neutron_password | quote }}"
endpoint: "{{ OCT_API.consumes_NEU_SVR.vips.private[0].url }}"
nova:
endpoint: "{{ OCT_API.consumes_NOV_API.vips.private[0].url }}/v2.1"
rabbit:
members: "{{ OCT_API.consumes_FND_RMQ.members.private }}"
userid: "{{ OCT.consumes_FND_RMQ.vars.accounts.octavia.username }}"
password: "{{ OCT.consumes_FND_RMQ.vars.accounts.octavia.password }}"
use_ssl: "{{ OCT.consumes_FND_RMQ.members.private[0].use_tls }}"
health_manager:
members: "{{ OCT_API.consumes_OCT_HMX.members.private }}"
heartbeat_key: "{{ OCT_API.consumes_OCT_HMX.vars.heartbeat_key }}"
octavia_db_connection: "mysql+pymysql://{{ mysql.octavia_user }}:{{ mysql.octavia_password | urlencode }}@{{ mysql.host }}/octavia{% if mysql.use_tls %}{{ mysql.ca }}{% endif %}"
# Other variables
octavia_endpoint_type: "internalURL"
installation_directory: "/usr/share"
octavia_user: "octavia"
octavia_group: "octavia"
octavia_log_file_group: "adm"
keystone_service_tenant: "{{ keystone.service_tenant }}"
keystone_admin_tenant: "{{ keystone.admin_tenant }}"
keystone_admin_user: "{{ keystone.admin_user }}"
keystone_admin_password: "{{ keystone.admin_password }}"
keystone_endpoint: "{{ keystone.endpoint }}"
neutron_endpoint: "{{ neutron.endpoint }}"
nova_endpoint: "{{ nova.endpoint }}"
keystone_default_domain: "{{ keystone.default_domain_name }}"
octavia_log_dir: "/var/log/octavia"
octavia_common_rundir: "/var/run/octavia"
octavia_project_domain_name: "{{ keystone.default_domain_name }}"
octavia_user_domain_name: "{{ keystone.default_domain_name }}"
octavia_project_name: "{{ keystone.octavia_project_name }}"
octavia_neutron_admin_role: "neutron_admin"
octavia_region_name: "{{ OCT.regions | first }}"
# Packages required by all roles
# Note: individual roles override this list during their respective installs
#required_packages:
# - ipset
# - iptables
## [DEFAULT]
octavia_bind_host: "{% if host.bind.OCT_API is defined %}{{ host.bind.OCT_API.internal.ip_address }}{% endif %}"
octavia_bind_port: "9876"
## [health_manager]
octavia_healthmanager_bind_host: "{{ octavia_bind_host }}"
octavia_healthmanager_port: "5555"
octavia_healthmanager_hosts: "{% for x in health_manager.members %}{{ x.ip_address }}:{{ x.port }}{%if not loop.last %},{% endif %}{% endfor %}"
octavia_heartbeat_key: "{{ health_manager.heartbeat_key }}"
octavia_heartbeat_interval: 30
octavia_health_check_interval: 9
### RabbitMQ
octavia_rabbit_hosts: "{% for x in rabbit.members %}{{ x.host }}:{{ x.port }}{%if not loop.last %},{% endif %}{% endfor %}"
octavia_rabbit_userid: "{{ rabbit.userid }}"
octavia_rabbit_password: "{{ rabbit.password }}"
octavia_rabbit_use_ssl: "{{ rabbit.use_ssl }}"
## [keystone_authtoken]
octavia_auth_endpoint: "{{ keystone.endpoint }}"
octavia_identity_uri: "{{ keystone.identity_uri }}"
octavia_admin_user: "{{ keystone.octavia_admin_user }}"
octavia_admin_password: "{{ keystone.octavia_admin_password }}"
octavia_ca_file: "{{ trusted_ca_bundle }}"
## [certificates]
octavia_ca_private_key_passphrase: "foobar"
octavia_ca_private_key: "{{ octavia_conf_dir }}/certs/private/cakey.pem"
octavia_ca_certificate: "{{ octavia_conf_dir }}/certs/cacert.pem"
## [haproxy_amphora]
octavia_server_ca: "{{ octavia_conf_dir}}/certs/cacert.pem"
octavia_client_ca: "{{ octavia_conf_dir}}/certs/client_ca.pem"
octavia_client_cert: "{{ octavia_conf_dir}}/certs/client.pem"
octavia_client_cert_monitoring: "{{ octavia_conf_dir}}/client_monitoring.pem"
octavia_key_path: "{{ octavia_conf_dir}}/.ssh/octavia_ssh_key"
# haproxy_template = /var/lib/octavia/custom_template
# The following may need to be an absolute location:
# base_log_dir = /logs
## [barbican]
neutron_admin_user: "{{ neutron.admin_user }}"
neutron_admin_password: "{{ neutron.admin_password }}"
octavia_mgmt_net: "{{ config_data.OCT.amp_network_name }}"
octavia_mgmt_sec_group: "lb-mgmt-sec-group"
octavia_nova_flavor_name: "m1.lbaas.amphora"
# This is set later once the image is unpacked
octavia_amp_image_id: ""
octavia_amp_image_tag: "amphora"
octavia_user_domain_name: "{{ keystone.default_domain_name }}"
octavia_project_domain_name: "{{ keystone.default_domain_name }}"
## variables needed by _write_conf.yml
write_conf_file_owner: "{{ octavia_user }}"
write_conf_file_group: "{{ octavia_group }}"
# tls stuff
tls_temp_dir: "/tmp/ardana_octavia_tls/"
tls_req_dir: "/tmp/ardana_octavia_tls/"
tls_req_file: "ardana-octavia-req"
tls_certs_dir: "/tmp/ardana_octavia_certs/"
tls_ca_cert_file: "cacert.pem"
tls_ca_key_file: "cakey.pem"
tls_index_file: "{{ tls_temp_dir }}/indext.txt"
tls_serial_file: "{{ tls_temp_dir }}/serial"
tls_cert_file: "{{ tls_certs_dir }}/client.pem"
tls_server_ca_file: "serverca_01.pem"
tls_server_ca_key_file: "servercakey.pem"
0707010000001F000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/files07070100000020000081A40000000000000000000000015EC701CB00000687000000000000000000000000000000000000005000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/files/cacert.pem-----BEGIN CERTIFICATE-----
MIIEpDCCA4ygAwIBAgIJAN1H61H2/+beMA0GCSqGSIb3DQEBBQUAMIGSMQswCQYD
VQQGEwJVUzELMAkGA1UECBMCQ0ExEjAQBgNVBAcTCVNhbiBEaWVnbzEMMAoGA1UE
ChMDSFBFMQ4wDAYDVQQLEwVDbG91ZDEmMCQGA1UEAxMdSGVsaW9uIE9jdGF2aWEg
Q2xpZW50IERlbW8gQ0ExHDAaBgkqhkiG9w0BCQEWDWxiYWFzQGhwZS5jb20wHhcN
MTYwMjE4MTY0NzM3WhcNMzYwMjEzMTY0NzM3WjCBkjELMAkGA1UEBhMCVVMxCzAJ
BgNVBAgTAkNBMRIwEAYDVQQHEwlTYW4gRGllZ28xDDAKBgNVBAoTA0hQRTEOMAwG
A1UECxMFQ2xvdWQxJjAkBgNVBAMTHUhlbGlvbiBPY3RhdmlhIENsaWVudCBEZW1v
IENBMRwwGgYJKoZIhvcNAQkBFg1sYmFhc0BocGUuY29tMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEA9LMukgQrFSyIwROGuvjHswfv0571kcXHm43/1fnU
/9MJNtrkt+p5xiNw+f1S6Oarkv7R5ALf1I8/G4J4RQCWYUBjiozz9d2MtrFAIM+G
JWIK7erzLQ85SWxN5/6or/E9WRrxocRRbbrB0+fNHm6RWtbIK0V5yjC3QxemQ975
H73F/Y1aIgfSjgjbuIwuUiy6/rl9WowDXsJY977ZsTrv4vJvklDo2bdy9zgZ1UNi
uKRGYwhFtuVwjOkl3G8OVIyciuOZrqiQ6RTI25VM6DV2M4+tGha6Ra8wSNbjT2Vp
Qxo4ywTJ5qSMm440QZCkvKUNUseewaI/I1dcSoJxeoX9pQIDAQABo4H6MIH3MB0G
A1UdDgQWBBR329ZEypvomN5ynDmoeVrsAXFXZTCBxwYDVR0jBIG/MIG8gBR329ZE
ypvomN5ynDmoeVrsAXFXZaGBmKSBlTCBkjELMAkGA1UEBhMCVVMxCzAJBgNVBAgT
AkNBMRIwEAYDVQQHEwlTYW4gRGllZ28xDDAKBgNVBAoTA0hQRTEOMAwGA1UECxMF
Q2xvdWQxJjAkBgNVBAMTHUhlbGlvbiBPY3RhdmlhIENsaWVudCBEZW1vIENBMRww
GgYJKoZIhvcNAQkBFg1sYmFhc0BocGUuY29tggkA3UfrUfb/5t4wDAYDVR0TBAUw
AwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAOb4yRfE5sekBxMoiXE/NAtH9rciHCKno
RZ3ysVJ3kXwV29S27ziPM+JEe8A8HO8jXVw8DQA2VcBlU2cBOgzeV1CLMg/83IpW
vAcEXdfodWc0E79UPleaEGd0tVLxMjzxBVpasvcojpJO3FH9lpg9wLXZA6TfxZ4C
dCGdr5BDLI1sZG4QQ+h+9hh0Tqhx6YFgHUnt3HhvGK/tZ2iNPnw3ZCY8BPzGSKGK
3k/6X23cgtSAaRz91mmsy/DMlpGkPyGLA2G8dT9Mz+iPTz8Qbn8EvCom31y6P5pn
htvSgd7wb/FVU+8JWRhs6QuzTdRT802K4xjs9v7Ukl1cMGzVGycwug==
-----END CERTIFICATE-----
07070100000021000081A40000000000000000000000015EC701CB0000068F000000000000000000000000000000000000004F00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/files/cakey.pem-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEA9LMukgQrFSyIwROGuvjHswfv0571kcXHm43/1fnU/9MJNtrk
t+p5xiNw+f1S6Oarkv7R5ALf1I8/G4J4RQCWYUBjiozz9d2MtrFAIM+GJWIK7erz
LQ85SWxN5/6or/E9WRrxocRRbbrB0+fNHm6RWtbIK0V5yjC3QxemQ975H73F/Y1a
IgfSjgjbuIwuUiy6/rl9WowDXsJY977ZsTrv4vJvklDo2bdy9zgZ1UNiuKRGYwhF
tuVwjOkl3G8OVIyciuOZrqiQ6RTI25VM6DV2M4+tGha6Ra8wSNbjT2VpQxo4ywTJ
5qSMm440QZCkvKUNUseewaI/I1dcSoJxeoX9pQIDAQABAoIBAQCz6Gl9AYOLdcq1
6d1M6kwo3NT/CggSvQ8c1zIZ6C0qScakhhtS/Rm7C6OsqQukILRUxvUaZuKaLReA
6lPyp5PovKZy318ejV0/lOJJPUqrgYH3mp5fqqm7yd0djKYJdZxdPuoYvXYA7yZC
3lJ45WIJH5Db/6Cjf129/k1H6U/QfQ5TuUro6j7B6JC0wl8BFF1FmrFoXdOWAKb4
qsl504857Ff5zDuZsanT36x1LN0XWwCeoRuqL0N5i61e+TLGJ771xq2GTn8yUYue
IuCBB/QAbkLSf7yAQE5wC8245rIvsoHgVNOIvVnLqQI34AH0AUvLdbZsPFmn20ry
NM0GRPkBAoGBAP7iuI99k29Ked+81IBP/tilcx0pUb9rOHOMFVJeJTggRT0/1gF/
wLDXQkmHHPK9SLfxK3rFQuS1LxgmaKDKwhj5i6l6f8zk9fSZhbR6PynxNSwkn1X8
MDYZVoR3K7a/StHkVNKT/FoHMOK7qJjeXD38rHKLJDuGLw9QefWT67qJAoGBAPXF
D4n7hHS1+3Cgs13pw6IzO/ezrPZG0s5gY67/n41FJOCDKsFoFvUZk6DYaGQktpl8
sRYzVIWXICc93+kD2TFr00Q/6VIk7esVkUgTo6TVvpUvxJV2x4nC5HqINbpi+Ot0
h3tlGVQ8tPjwyp/CjgHONrSDEbnOGG6RY+niV3M9AoGAE/uOYKGFt4ntOB9DwbOD
1VRTTAv7PriXOmfXHBgJbvcItp6UlpV/c93McptHJ7izRMiBkiR49BlIUepg9Yov
4WlfC7Bw6I1iwwRuORIEdbNVadqNK16UIQmngMcfBDrHEOGHzOKRPDWoHX58308/
iBSRKIHEG26PrfGvPhOUvZECgYEAklYJkJEQJyYMVt14r1x3Pebft/dl7yXwcy11
bUeLSuR2tq+jD5HYyYu3GTiBv88UYoOaNavOkdSQMo1m+yltcz3Oh36+gEi42Rb4
cEAxWf5jAhV1KcGVwfMnc8YSp64ypI+388MYt82FvAwzubhwMacFb6nzLf0HEx7C
rQo2I8kCgYEAiAufrajQCiRCU0sS2J+53rPmyRQrEP0upxhJmj6MMRMExVvED8VN
hkY3544VW4tKVCMZBtDUxxcYm90xDiQtuCFKCW1taaVFwPWg+VdlYpZFv01bJhz/
AKHmXMuZtDK7wl3YJdrom6w2o+M5EugmViUV8TF2+1gli0o/mCpMJxY=
-----END RSA PRIVATE KEY-----
07070100000022000081A40000000000000000000000015EC701CB00000687000000000000000000000000000000000000005500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/files/serverca_01.pem-----BEGIN CERTIFICATE-----
MIIEpDCCA4ygAwIBAgIJAI5jCsK04Z18MA0GCSqGSIb3DQEBBQUAMIGSMQswCQYD
VQQGEwJVUzELMAkGA1UECBMCQ0ExEjAQBgNVBAcTCVNhbiBEaWVnbzEMMAoGA1UE
ChMDSFBFMQ4wDAYDVQQLEwVDbG91ZDEmMCQGA1UEAxMdSGVsaW9uIE9jdGF2aWEg
U2VydmVyIERlbW8gQ0ExHDAaBgkqhkiG9w0BCQEWDWxiYWFzQGhwZS5jb20wHhcN
MTYwMjE4MTY1NjQzWhcNMzYwMjEzMTY1NjQzWjCBkjELMAkGA1UEBhMCVVMxCzAJ
BgNVBAgTAkNBMRIwEAYDVQQHEwlTYW4gRGllZ28xDDAKBgNVBAoTA0hQRTEOMAwG
A1UECxMFQ2xvdWQxJjAkBgNVBAMTHUhlbGlvbiBPY3RhdmlhIFNlcnZlciBEZW1v
IENBMRwwGgYJKoZIhvcNAQkBFg1sYmFhc0BocGUuY29tMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEAyhE+0IGAEpFnobw5DyOxw8jndPyR0MZRkIBCdYe4
7Dauf2dS5zNm0CmzplEBtudbxxgCF3YKavZqkPZQzsDfUxYr056vAnph3secQ1Gd
AzjC9SCuiIkzaG2E1ibjKg2KT8QXx+aUhGWbKUf2TRuN3OBAtoDiJskSmHAyvkpm
PLnMgJT+aGBibyBhSYF07WSKf3arI+WGJu5X3nH9VH5o17HwAOoLDNvVHQcXDg7q
VfWMFXH9MaG46Rox1LMN5kq9Ep3Elu0ec0Sap2wAts6BCWkM766N9jPz+iUDSBvf
AOezkZawmeNq/WaKZzdp3nd/cBQMABJu35NG0fRrFbWC8wIDAQABo4H6MIH3MB0G
A1UdDgQWBBTRQQSW794lYXblc87iSmOM72uvbzCBxwYDVR0jBIG/MIG8gBTRQQSW
794lYXblc87iSmOM72uvb6GBmKSBlTCBkjELMAkGA1UEBhMCVVMxCzAJBgNVBAgT
AkNBMRIwEAYDVQQHEwlTYW4gRGllZ28xDDAKBgNVBAoTA0hQRTEOMAwGA1UECxMF
Q2xvdWQxJjAkBgNVBAMTHUhlbGlvbiBPY3RhdmlhIFNlcnZlciBEZW1vIENBMRww
GgYJKoZIhvcNAQkBFg1sYmFhc0BocGUuY29tggkAjmMKwrThnXwwDAYDVR0TBAUw
AwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAGusB9CMZiPEwg2UbsNMxxNKqD7UF56g4
ojl1UCbd0LdWAfwraZIk4A2m50o5kPQw3To1N6qTOGr3rzT2GkktrbB+Tfaluorq
LYjfwzNj72T1QCJOfgvJZEgBgTBIfWkJXa8FDyBMiPnlHZhnbxU4uNf2kJcqAmF+
otbwMJg96+qEXC6nICN0N6vNARZvLKT1mQZZ3SIhXnzX53aBya0ma4zOWc29kkn6
uachCLGpU7uRvFaP7dgpu0WoRiwmbg2IVhtkavg8tT1gv4KNyHP2uUyHrH12FINS
0bWZodG5Ty3eCYyc2QaJWZFUbXwPZGaspFxHhiMfPKAQ3AxjvD2CwQ==
-----END CERTIFICATE-----
07070100000023000081A40000000000000000000000015EC701CB000006D7000000000000000000000000000000000000005500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/files/servercakey.pem-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,056D586D079DEFCA
KnC/Yh4Od59N4S2HKuLFmcQfZWfPzexqENLmtrmxs6qi63jedoVcve3/ez9rSBbA
G9zBIyAtDvkjFPviDamA7x+MvsLrictOsuArbJYE+Hs2KVdqU47BsD8Y6HamA/HT
Ws5st0W7PKD0iH0X+05BKsRzpdbmbd3NpB9N4FQydfOjo9sPLVVrvsmo3FmEkERV
9UttXI4daA6GjfrOPz3n7HHJNOcQ+ObvBf7Bk0N69pBXvt3Q5jjZsc3XsfYRD29j
CjIalKg9ERUTNaEVVw2qQl0RIw8HrueN8WZBGB36YxWvatFVZ65X0hMgl808dgl6
cYRJ2HOvlodew/lDTcAgF7XQTHqlIAkD1od8HyTUq86A2+DARGYoeacTk5lhM1d+
uzfiS/mtB/0fl9gkPW4mBYdwd0l8kU06Jt5R475QItPRrpFx3Vty225lqV9+pVv4
M9MMXosXESsyOumzJjvJtmvG4Obh+75SH2B6kPRXojz3DiKgMRvf7HtgVEblyiOx
9a0J28ZS6OmUBA2bp3FQ5KEyZYXxWmNkCt6Jl699X+Qk0mq/AKLJB7BSgeX/Uc+O
SILejomGCyieW31seIJkUZCUso8N+1f19ZKdLZ7gj6sG/mayk6q9I66ak+FvBGNI
ICJDgqXEj4+sqo4oH55mK81TIQriZTGf7y2CnAfjTfZ6D/yW81Qw5aKtDtut2gj7
df8w1JEewbkEYZ7Jq5uYANTyAwNN4WNobf44XE2qx9RmcpcWwfSAXqwEv9Jk24S/
e8H1dPWpsm/fcRSG/8UiSBoswKPe9tU5UGeVok7Rl5D0lGPTMhYv6MYO41DcZMEW
yOb6QkRqbiYg0URIjTC2Wx7HN7X5XILzSqvKvhMuHiOAGCjzMtfJxlle5Zn1gl8L
x1egvp4/QDlwevPgzynGIRj9du4uG3Q+HacjSHw1HtggmG6VYhucBa+M12f0cFvm
+J0DX4086w5p8mnJJ1SYOwCU7j8u2+LGERAWG38KUCOmGG1KIkO2H+jO2ijS4Gij
domNSoJVHZGRFLQsBTCrjzgxijcTPz7CSF2MMHY1D1SvDRU+TWJqWpj8bENpGlc7
SYVaxW3oybJ/9jV/mSSgpMF2So1YR2bOwLxg2EB5B/7+3aqzcLs5nTgGaCCbyBxD
bvpIHr5bGWm6Mio/wkaQlbIA2slxF1dQHPVE+GUEMMb95SXSKhmgMJNLYcv0A/kC
PZ83OJhYH/quUgzVdbF1X5J0NGv/UXjHy4xRhFuMzs65X8Yrn5aCm9dM7mH9iEhu
0dfVM5jOBvqhTRblsyAYCoh+L5daU3AdCEY+1uAuC3fa33LltcNXMgsZdHsYliHG
LLXPX+zzOadacpNXlKO4u69gHPW7BlQPnfWG67zGxVhWoJzdWzVgPdMy9Bn8vWuj
zyErhApupUYSvcRTD3XrZjDLUnh0uFbtx1cFHcP8xCFU1wkCcc7tNvtmRSH6GNxJ
/OEsIoweWntdMKghaROLNxErN8/aCkyWMaerYXtMQeYy1kUqyDhS3C6cdyRIZsek
ejPcNJIwnp/ng3sZ11CVWK91BZJhReYUkiXArKjV+QDYY7SlhtgzfPha8KKsannY
-----END RSA PRIVATE KEY-----
07070100000024000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004400000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/meta07070100000025000081A40000000000000000000000015EC701CB00000263000000000000000000000000000000000000004D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/meta/main.yml# (c) Copyright 2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
dependencies:
- role: tls-vars
07070100000026000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks07070100000027000081A40000000000000000000000015EC701CB00000F24000000000000000000000000000000000000006000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/_create_mgmt_sec_group.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | _create_mgmt_sec_group | Retrieve management subnet for single-cp
shell: >
neutron net-show {{ octavia_mgmt_net_id.stdout }} | tr -d ' ' | grep "subnets" | cut -f 3 -d '|'
environment: &OS_ENV
OS_AUTH_URL: "{{ octavia_auth_endpoint }}"
OS_USERNAME: "{{ octavia_admin_user }}"
OS_PASSWORD: "{{ octavia_admin_password }}"
OS_PROJECT_NAME: "{{ octavia_project_name }}"
OS_USER_DOMAIN_NAME: "{{ octavia_user_domain_name }}"
OS_PROJECT_DOMAIN_NAME: "{{ octavia_project_domain_name }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: octavia_mgmt_subnet
run_once: true
- name: octavia-common | _create_mgmt_sec_group | Retrieve management subnet for multi-cp
shell: >
neutron net-show {{ octavia_mgmt_net_id.stdout }} | tr -d ' ' | grep "subnets" | cut -f 3 -d '|'
environment:
OS_AUTH_URL: "{{ octavia_auth_endpoint }}"
OS_USERNAME: "{{ octavia_admin_user }}"
OS_PASSWORD: "{{ octavia_admin_password }}"
OS_PROJECT_NAME: "{{ octavia_project_name }}"
OS_USER_DOMAIN_NAME: "{{ octavia_user_domain_name }}"
OS_PROJECT_DOMAIN_NAME: "{{ octavia_project_domain_name }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: octavia_mgmt_subnet
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_mgmt_sec_group | Verify if management subnet was found
fail:
msg: "Management subnet was not found"
when: octavia_mgmt_subnet.stdout == ""
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_mgmt_sec_group | Check if management security group exists
shell: >
neutron security-group-show {{ octavia_mgmt_sec_group }}
environment: *OS_ENV
register: octavia_mgmt_sec_group_check
ignore_errors: True
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_mgmt_sec_group | Create management security group
shell: >
neutron security-group-create {{ octavia_mgmt_sec_group }} --description "Octavia Management Security Group"
environment: *OS_ENV
when: octavia_mgmt_sec_group_check|failed
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_mgmt_sec_group | Get management security group id
shell: >
neutron security-group-list| grep {{ octavia_mgmt_sec_group }} | tr -d ' ' | cut -f 2 -d '|'
environment: *OS_ENV
register: octavia_mgmt_sec_group_id
run_once: true
- name: octavia-common | _create_mgmt_sec_group | Get management security group id
shell: >
neutron security-group-list| grep {{ octavia_mgmt_sec_group }} | tr -d ' ' | cut -f 2 -d '|'
environment: *OS_ENV
register: octavia_mgmt_sec_group_id
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_mgmt_sec_group | rule, TCP 9443
shell: >
neutron security-group-rule-create --protocol tcp --port-range-min 9443 --port-range-max 9443 {{ octavia_mgmt_sec_group }}
environment: *OS_ENV
ignore_errors: True
run_once_per: verb_hosts.OCT_API
07070100000028000081A40000000000000000000000015EC701CB0000117F000000000000000000000000000000000000005D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/_create_nova_flavor.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | _create_nova_flavor | Check if flavor exists
shell: >
nova flavor-show {{ octavia_nova_flavor_name }}
environment: &OS_ENV
OS_AUTH_URL: "{{ keystone_endpoint }}"
OS_USERNAME: "{{ keystone_admin_user }}"
OS_PASSWORD: "{{ keystone_admin_password }}"
OS_PROJECT_NAME: "{{ keystone_service_tenant }}"
OS_USER_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_PROJECT_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: octavia_nova_flavor_check_result
ignore_errors: True
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_nova_flavor | Create nova flavor
shell: >
nova flavor-create --is-public False {{ octavia_nova_flavor_name }} auto 1024 2 1
environment: *OS_ENV
when: octavia_nova_flavor_check_result|failed
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_nova_flavor | Get octavia project id
shell: >
openstack project show -f value -c id {{ octavia_project_name }}
environment:
OS_AUTH_URL: "{{ keystone_endpoint }}"
OS_USERNAME: "{{ keystone_admin_user }}"
OS_PASSWORD: "{{ keystone_admin_password }}"
OS_USER_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
when: octavia_nova_flavor_check_result|failed
register: project_id_results
changed_when: False
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_nova_flavor | Assign tenant access to flavor
shell: >
nova flavor-access-add {{ octavia_nova_flavor_name }} {{ project_id_results.stdout }}
environment: *OS_ENV
when: octavia_nova_flavor_check_result|failed
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _create_nova_flavor | Retrieve nova flavor_id for single-cp
shell: >
nova flavor-list | grep {{ octavia_nova_flavor_name }} | tr -d ' ' | cut -f 2 -d '|'
environment:
OS_AUTH_URL: "{{ octavia_auth_endpoint }}"
OS_USERNAME: "{{ octavia_admin_user }}"
OS_PASSWORD: "{{ octavia_admin_password }}"
OS_PROJECT_NAME: "{{ octavia_project_name }}"
OS_USER_DOMAIN_NAME: "{{ octavia_user_domain_name }}"
OS_PROJECT_DOMAIN_NAME: "{{ octavia_project_domain_name }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: octavia_nova_flavor_id
run_once: true
# Duplicating it for the case of multi-cp environment so that this variable is registered
# for all the regions. Only this task will not work as this variable is required by all
# the controllers in single-cp environment also.
- name: octavia-common | _create_nova_flavor | Retrieve nova flavor_id for multi-cp
shell: >
nova flavor-list | grep {{ octavia_nova_flavor_name }} | tr -d ' ' | cut -f 2 -d '|'
environment:
OS_AUTH_URL: "{{ octavia_auth_endpoint }}"
OS_USERNAME: "{{ octavia_admin_user }}"
OS_PASSWORD: "{{ octavia_admin_password }}"
OS_PROJECT_NAME: "{{ octavia_project_name }}"
OS_USER_DOMAIN_NAME: "{{ octavia_user_domain_name }}"
OS_PROJECT_DOMAIN_NAME: "{{ octavia_project_domain_name }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: octavia_nova_flavor_id
run_once_per: verb_hosts.OCT_API
07070100000029000081A40000000000000000000000015EC701CB00000D0E000000000000000000000000000000000000005B00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/_get_glance_image.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | _get_glance_image | Get octavia project id
command: openstack \
project show -f value -c id {{ octavia_project_name }}
environment: &OS_ENV
OS_AUTH_URL: "{{ keystone_endpoint }}"
OS_USERNAME: "{{ keystone_admin_user }}"
OS_PASSWORD: "{{ keystone_admin_password }}"
OS_USER_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: project_id_results
changed_when: False
- name: octavia-common | _get_glance_image | Set octavia_project_id
set_fact:
octavia_project_id: "{{ project_id_results.stdout }}"
when: project_id_results | success
- name: octavia-common | _get_glance_image | Get glance image ID
shell: >
glance image-list \
--sort-key created_at \
--sort-dir desc \
--owner {{ octavia_project_id }} | grep 'amphora' | awk 'NR==1{print $2; exit}'
environment:
OS_AUTH_URL: "{{ keystone_endpoint }}"
OS_USERNAME: "{{ keystone_admin_user }}"
OS_PASSWORD: "{{ keystone_admin_password }}"
OS_PROJECT_NAME: "{{ keystone_service_tenant }}"
OS_USER_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_PROJECT_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: octavia_image_id_results
when: project_id_results | success
- name: octavia-common | _get_glance_image | Set octavia_amp_image_id
set_fact:
octavia_amp_image_id: "{{ octavia_image_id_results.stdout }}"
when: project_id_results | success and octavia_image_id_results | success
- name: octavia-common | _get_glance_image | Set octavia image tag
command: openstack \
image set --tag {{ octavia_amp_image_tag }} {{ octavia_amp_image_id }}
environment:
OS_AUTH_URL: "{{ keystone_endpoint }}"
OS_USERNAME: "{{ keystone_admin_user }}"
OS_PASSWORD: "{{ keystone_admin_password }}"
OS_USER_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_DOMAIN_NAME: "{{ keystone_default_domain }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_INTERFACE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
when: octavia_image_id_results.stdout | length > 0 and not (deployer_media_legacy_layout | bool)
run_once: True
0707010000002A000081A40000000000000000000000015EC701CB00000943000000000000000000000000000000000000005B00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/_get_mgmt_network.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | _get_mgmt_network | Get management network for single-cp
shell: >
neutron net-list | grep {{ octavia_mgmt_net }} | tr -d ' ' | cut -f 2 -d '|'
environment: &OS_ENV
OS_AUTH_URL: "{{ octavia_auth_endpoint }}"
OS_USERNAME: "{{ octavia_admin_user }}"
OS_PASSWORD: "{{ octavia_admin_password }}"
OS_PROJECT_NAME: "{{ octavia_project_name }}"
OS_USER_DOMAIN_NAME: "{{ octavia_user_domain_name }}"
OS_PROJECT_DOMAIN_NAME: "{{ octavia_project_domain_name }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: octavia_mgmt_net_id
run_once: true
- name: octavia-common | _get_mgmt_network | Get management network for multi-cp
shell: >
neutron net-list | grep {{ octavia_mgmt_net }} | tr -d ' ' | cut -f 2 -d '|'
environment:
OS_AUTH_URL: "{{ octavia_auth_endpoint }}"
OS_USERNAME: "{{ octavia_admin_user }}"
OS_PASSWORD: "{{ octavia_admin_password }}"
OS_PROJECT_NAME: "{{ octavia_project_name }}"
OS_USER_DOMAIN_NAME: "{{ octavia_user_domain_name }}"
OS_PROJECT_DOMAIN_NAME: "{{ octavia_project_domain_name }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_IDENTITY_API_VERSION: "3"
OS_AUTH_VERSION: "3"
register: octavia_mgmt_net_id
run_once_per: verb_hosts.OCT_API
- name: octavia-common | _get_mgmt_network | Verify if management network was found
fail: msg="Management network was not found"
when: octavia_mgmt_net_id.stdout == ""
run_once_per: verb_hosts.OCT_API
0707010000002B000081A40000000000000000000000015EC701CB00000319000000000000000000000000000000000000005B00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/_schedule_restart.yml#
# (c) Copyright 2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | _schedule_restart | Schedule a restart for all services
debug:
msg: "Trigger a change notification in octavia"
changed_when: true
register: ardana_notify_octavia_restart_required0707010000002C000081A40000000000000000000000015EC701CB00000519000000000000000000000000000000000000005900000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/_service_status.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | status | Print service being checked
debug:
msg: "Running service check for {{ octavia_component }}"
run_once_per: verb_hosts.OCT_API
- name: octavia-common | status | Check systemd service running
command: systemctl status "{{ octavia_component }}"
ignore_errors: yes
changed_when: false
register: systemctl_status_result
- name: octavia-common | status | Report status
fail:
msg: |
{{ octavia_component }} is not running.
systemctl status {{ octavia_component }} output:
{{ systemctl_status_result.stdout }}
{{ systemctl_status_result.stderr }}
when: systemctl_status_result | failed
0707010000002D000081A40000000000000000000000015EC701CB0000056F000000000000000000000000000000000000006200000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/_set_service_directories.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: Octavia Common | _set_service_directories | Set main configuration and bin directories - configure
set_fact:
octavia_conf_dir: "{{ 'octavia' | config_dir(octavia_install_result.version) }}"
octavia_bin_dir: "{{ 'octavia' | bin_dir(octavia_install_result.version) }}"
octavia_lib_dir: "{{ 'octavia' | jar_dir(octavia_install_result.version) }}"
when: octavia_install_result.version is defined
- name: Octavia Common | _set_service_directories | Set main configuration and bin directories - reconfigure
set_fact:
octavia_conf_dir: "{{ 'octavia' | config_dir() }}"
octavia_bin_dir: "{{ 'octavia' | bin_dir() }}"
octavia_lib_dir: "{{ 'octavia' | jar_dir() }}"
when: octavia_install_result.version is undefined
0707010000002E000081A40000000000000000000000015EC701CB00000748000000000000000000000000000000000000005500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/_write_conf.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | _write_conf | Check for pre-existing version of {{ dest }}
stat: path="{{ octavia_conf_dir }}/{{ dest }}"
register: conf_stat_result
- name: octavia-common | _write_conf | get timestamp
command: date +%Y%m%d%H%M%S
register: time_result
- name: octavia-common | _write_conf | Create a backup version of the existing {{ dest }} file
command: cp {{ octavia_conf_dir }}/{{ dest }} {{ octavia_conf_dir }}/{{ dest }}.{{ time_result.stdout }}
when: conf_stat_result.stat.exists
- name: octavia-common | _write_conf | Template {{ dest }}
template:
src: "{{ src }}"
dest: "{{ octavia_conf_dir }}/{{ dest }}"
owner: "{{ write_conf_file_owner }}"
group: "{{ write_conf_file_group }}"
mode: "{{ mode | default('0640') }}"
register: write_conf_result
- name: octavia-common | _write_conf | Delete backup file that has not changed.
file:
path: "{{ octavia_conf_dir }}/{{ dest }}.{{ time_result.stdout }}"
state: absent
when: write_conf_result.changed==false
- name: octavia-common | _write_conf | remove all but last 10 backups of {{dest }}
shell: ls -td {{ octavia_conf_dir }}/{{ dest }}.* |awk 'NR>10' |xargs rm -f
when: conf_stat_result.stat.exists
0707010000002F000081A40000000000000000000000015EC701CB000016D7000000000000000000000000000000000000005300000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/configure.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
# This .yml sets all facts related to Octavia_conf_dir and Octavia_bin_dir
- include: _set_service_directories.yml
- name: octavia-common | configure | Check for presence of group '{{ octavia_group }}'
command: "grep -q {{ octavia_group }} /etc/group"
register: group_chk_result
ignore_errors: True
- name: octavia-common | configure | Add group '{{ octavia_group }}'
group: name={{ octavia_group }} system=yes
when: group_chk_result|failed
- name: octavia-common | configure | Check for presence of user '{{ octavia_user }}'
command: "id {{ octavia_user }}"
register: user_chk_result
ignore_errors: True
- name: octavia-common | configure | Delete sudoers
file: path=/etc/sudoers.d/octavia state=absent
- name: octavia-common | configure | Add user '{{ octavia_user }}'
user: name={{ octavia_user }} group={{ octavia_group }} system=yes createhome=no home=/var/lib/octavia shell=/bin/false
when: user_chk_result|failed
- name: octavia-common | configure | Set permissions of {{ installation_directory }}/octavia hierarchy
file: path={{ installation_directory }}/octavia owner={{ octavia_user }} group={{ octavia_group }} state=directory recurse=yes
- name: octavia-common | configure | Set permissions of {{ installation_directory }}/octavia templates
file: path={{ installation_directory }}/octavia owner={{ octavia_user }} group={{ octavia_group }} mode=0755 state=directory
- name: octavia-common | configure | Create logging directory
file: path=/var/log/octavia owner={{ octavia_user }} group={{ octavia_group }} mode=0775 state=directory
- name: octavia-common | configure | Create /var/lib/octavia directory
file: path=/var/lib/octavia owner={{ octavia_user }} group={{ octavia_group }} mode=0770 state=directory
# Note this also sets the ownership and mode if the directory already exists.
- name: octavia-common | configure | Create systemd service directory if not exists
file:
path: "{{ systemd_service_dir }}"
state: directory
mode: 0755
owner: "root"
group: "root"
- name: octavia-common | configure | Create common run directory service file
template:
dest: "{{ systemd_service_dir }}{{ octavia_common_rundir_service }}"
owner: "root"
group: "root"
mode: 0644
src: "{{ octavia_common_rundir_service }}.j2"
## Get management service network,sec group, flavor and image IDs for *.conf files
- include: _get_mgmt_network.yml
- include: _create_mgmt_sec_group.yml
- include: _create_nova_flavor.yml
- include: _get_glance_image.yml
- include: _write_conf.yml
src: "../templates/octavia-api.conf.j2"
dest: "octavia-api.conf"
- name: octavia-common | configure | octavia-api.conf change
command: /bin/true
register: ardana_notify_octavia_api_restart_required
when: write_conf_result.changed==true
- include: _write_conf.yml
src: "../templates/octavia-api-logging.conf.j2"
dest: "octavia-api-logging.conf"
- name: octavia-common | configure | octavia-api-logging.conf change
command: /bin/true
register: ardana_notify_octavia_api_restart_required
when: write_conf_result.changed==true
- include: _write_conf.yml
src: "../templates/octavia-worker.conf.j2"
dest: "octavia-worker.conf"
- name: octavia-common | configure | octavia-worker.conf change
command: /bin/true
register: ardana_notify_octavia_worker_restart_required
when: write_conf_result.changed==true
- include: _write_conf.yml
src: "../templates/octavia-worker-logging.conf.j2"
dest: "octavia-worker-logging.conf"
- name: octavia-common | configure | octavia-worker-logging.conf change
command: /bin/true
register: ardana_notify_octavia_worker_restart_required
when: write_conf_result.changed==true
- include: _write_conf.yml
src: "../templates/octavia-health-manager.conf.j2"
dest: "octavia-health-manager.conf"
- name: octavia-common | configure | octavia-health-manager.conf change
command: /bin/true
register: ardana_notify_octavia_health_manager_restart_required
when: write_conf_result.changed==true
- include: _write_conf.yml
src: "../templates/octavia-hm-logging.conf.j2"
dest: "octavia-hm-logging.conf"
- name: octavia-common | configure | octavia-hm-logging.conf change
command: /bin/true
register: ardana_notify_octavia_health_manager_restart_required
when: write_conf_result.changed==true
- include: _write_conf.yml
src: "../templates/octavia-housekeeping.conf.j2"
dest: "octavia-housekeeping.conf"
- name: octavia-common | configure | octavia-housekeeping.conf change
command: /bin/true
register: ardana_notify_octavia_housekeeping_restart_required
when: write_conf_result.changed==true
- include: _write_conf.yml
src: "../templates/octavia-hk-logging.conf.j2"
dest: "octavia-hk-logging.conf"
- name: octavia-common | configure | octavia-hk-logging.conf change
command: /bin/true
register: ardana_notify_octavia_housekeeping_restart_required
when: write_conf_result.changed==true
- name: octavia-common | configure | Copy alembic.ini
template:
src: "../templates/alembic.ini.j2"
dest: "{{ octavia_lib_dir }}/python2.7/site-packages/octavia/db/migration/alembic.ini"
owner: "root"
group: "root"
mode: 0664
07070100000030000081A40000000000000000000000015EC701CB00000643000000000000000000000000000000000000006000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/create_systemd_service.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | create_systemd_service | Start
debug:
msg: "Setting up the systemd service for {{ octavia_service_cmd }}"
- name: octavia-common | create_systemd_service | setup restart hold time
set_fact:
restart_hold: "{{ service_restart_hold | default('100ms') }}"
- name: octavia-common | create_systemd_service | Construct command string
set_fact:
octavia_component_exec_start: "{{ octavia_bin_dir }}/{{ octavia_service_cmd }} {{ octavia_service_cmd_args | default('') }}"
- name: octavia-common | create_systemd_service | Writing systemd service file
template:
src: "octavia-component.service.j2"
dest: "{{ systemd_service_dir }}{{ octavia_component }}.service"
owner: "root"
group: "root"
mode: "0644"
register:
service_file_result
- name: octavia-common | create_systemd_service | add service to systemd
command: /bin/systemctl daemon-reload
when:
service_file_result.changed==true
07070100000031000081A40000000000000000000000015EC701CB00000538000000000000000000000000000000000000005100000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/install.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
#- include: common_install.yml
# Install Octavia
- name: octavia-common | install | Update venv cache
become: yes
install_package:
cache: update
- name: octavia-common | install | Install Octavia package
install_package:
name: octavia
service: octavia
state: present
activate: act_off
register: octavia_install_result
- name: octavia-common | install | Notify restart on install
command: /bin/true
register: ardana_notify_octavia_restart_required
when: octavia_install_result.changed
#- name: Octavia Common | install | Notify restart on package update
# set_fact:
# octavia_restart_required: true
# when: check_updated_packages_result.changed
07070100000032000081A40000000000000000000000015EC701CB000003C0000000000000000000000000000000000000005800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/remote_monitor.yml# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | remote_monitor | Setup active check against Octavia API
become: yes
monasca_agent_plugin:
name: "httpcheck"
args:
url: "{{ OCT_API.consumes_OCT_API.vips.private[0].url }}"
dimensions: "service:octavia,component:octavia-api,monitored_host_type:vip,api_endpoint:private"
07070100000033000081A40000000000000000000000015EC701CB00000464000000000000000000000000000000000000006600000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/setup_monasca_service_plugin.yml# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | setup_monasca_service_plugin | Run Monasca agent Octavia detection plugin
become: yes
monasca_agent_plugin:
name: "octavia"
args: "disable_http_check=yes"
- name: octavia-common | setup_monasca_service_plugin |
Run Monasca detection plugin for Octavia client cert
become: yes
monasca_agent_plugin:
name: CertificateFileCheck
args:
cert_files: "{{ octavia_client_cert_monitoring }}"
dimensions: "service:octavia"
07070100000034000081A40000000000000000000000015EC701CB000004C9000000000000000000000000000000000000004F00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/start.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: Octavia Common | start | Set run directory to be created at boot
service:
name: "{{ octavia_common_rundir_service }}"
enabled: yes
- name: Octavia Common | start | Create run directory now
file:
path={{ octavia_common_rundir }}
owner={{ octavia_user }}
group={{ octavia_group }}
mode=0775
state=directory
- name: Octavia Common | start | Activate the latest install
install_package:
name: octavia
service: octavia
activate: act_on
version: "{{ octavia_install_result.version }}"
when: octavia_install_result is defined
07070100000035000081A40000000000000000000000015EC701CB000006AA000000000000000000000000000000000000005700000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/tls_bootstrap.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
# Inspired by tls-trust package
# TODO Consider using secure delete
- name: octavia-common | cert_bootstrap | remove working directory to get rid of old creds
file:
path: "{{ tls_temp_dir }}"
state: absent
- name: octavia-common | cert_bootstrap | copy support files
copy:
src: "{{ item }}"
dest: "{{ tls_temp_dir }}"
with_items:
- "{{ tls_ca_cert_file }}"
- "{{ tls_ca_key_file }}"
- name: "octavia-common | cert_bootstrap | Apply template: {{ item }}"
template:
src: "{{ item }}.j2"
dest: "{{ tls_temp_dir }}/{{ item }}"
with_items:
- "openssl.cnf"
- name: octavia-common | cert_bootstrap | Create an index.txt file
command: "touch {{ tls_index_file }}"
- name: octavia-common | cert_bootstrap | Create and assign a random serial number
command: "/usr/bin/openssl rand -hex -out {{ tls_serial_file }} 6"
args:
chdir: "{{ tls_temp_dir }}"
- name: octavia-common | cert_req | Create an internal Cert Req
template:
src: ardana-octavia-req.j2
dest: "{{ tls_temp_dir }}/{{ tls_req_file }}"
07070100000036000081A40000000000000000000000015EC701CB00000399000000000000000000000000000000000000005200000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/tls_copy.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: tls-trust | cert_copy | Make sure directory exists
file:
path: "{{ tls_certs_dir }}"
state: directory
- name: tls-trust | cert_copy | create an internal vip cert
shell: "cat key.pem cert.pem > {{ tls_cert_file }}"
args:
chdir: "{{ tls_temp_dir }}"
07070100000037000081A40000000000000000000000015EC701CB00000E70000000000000000000000000000000000000005400000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/tasks/tls_deploy.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-common | tls_deploy | create cert dir
file:
path: "{{ octavia_conf_dir}}/certs"
state: directory
owner: "{{ octavia_user }}"
group: "{{ octavia_group }}"
mode: 0750
- name: octavia-common | tls_deploy | create cert private dir
file:
path: "{{ octavia_conf_dir}}/certs/private"
state: directory
owner: "{{ octavia_user }}"
group: "{{ octavia_group }}"
mode: 0700
- name: octavia-common | tls_deploy | deploy client cert to server
copy:
src: "{{ tls_cert_file }}"
dest: "{{ octavia_client_cert }}"
owner: "{{ octavia_user }}"
group: "{{ octavia_group }}"
mode: 0440
register: tls_deploy_result
# NOTE(gyee): Since the provisioned client certificate is consisted of
# both certificate and private key, we need to separate out the certificate
# portion for monitoring without having to compromise the private key.
# This is done by copying the certificate to a different file and make it
# readable by the world. Making certificate readable by the world is NOT a
# problem as it is TLS certificate is public information.
- name: octavia-common | tls_deploy | separate out client cert for monitoring
become: yes
shell: >
openssl x509 -in {{ octavia_client_cert }}
-out {{ octavia_client_cert_monitoring }} -outform PEM
- name: octavia-common | tls_deploy | Make sure monitoring cert is readable
become: yes
file:
path: "{{ octavia_client_cert_monitoring }}"
mode: '0644'
- name: octavia-common | tls_deploy | deploy client cert to server result
command: /bin/true
register: ardana_notify_octavia_restart_required
when: tls_deploy_result.changed==true
- name: octavia-common | tls_deploy | deploy client ca to server
copy:
src: "{{ tls_ca_cert_file }}"
dest: "{{ octavia_client_ca }}"
owner: "{{ octavia_user }}"
group: "{{ octavia_group }}"
mode: 0440
register: tls_deploy_result
- name: octavia-common | tls_deploy | deploy client ca to server result
command: /bin/true
register: ardana_notify_octavia_restart_required
when: tls_deploy_result.changed==true
- name: octavia-common | tls_deploy | deploy server ca to server
copy:
src: "{{ tls_server_ca_file }}"
dest: "{{ octavia_ca_certificate }}"
owner: "{{ octavia_user }}"
group: "{{ octavia_group }}"
mode: 0440
register: tls_deploy_result
- name: octavia-common | tls_deploy | deploy server ca to server result
command: /bin/true
register: ardana_notify_octavia_restart_required
when: tls_deploy_result.changed==true
- name: octavia-common | tls_deploy | deploy server ca key to server
copy:
src: "{{ tls_server_ca_key_file }}"
dest: "{{ octavia_ca_private_key }}"
owner: "{{ octavia_user }}"
group: "{{ octavia_group }}"
mode: 0440
register: tls_deploy_result
- name: octavia-common | tls_deploy | deploy server ca key to server result
command: /bin/true
register: ardana_notify_octavia_restart_required
when: tls_deploy_result.changed==true
07070100000038000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004900000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates07070100000039000081A40000000000000000000000015EC701CB00000731000000000000000000000000000000000000005800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/alembic.ini.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
# A generic, single database configuration.
[alembic]
# path to migration scripts
script_location = %(here)s/alembic_migrations
# template used to generate migration files
# file_template = %%(rev)s_%%(slug)s
# max length of characters to apply to the
# "slug" field
#truncate_slug_length = 40
# set to 'true' to run the environment during
# the 'revision' command, regardless of autogenerate
# revision_environment = false
# set to 'true' to allow .pyc and .pyo files without
# a source .py file to be detected as revisions in the
# versions/ directory
# sourceless = false
#sqlalchemy.url = mysql+pymysql://root:password@localhost/octavia
sqlalchemy.url = {{ octavia_db_connection }}
# Logging configuration
[loggers]
keys = root,sqlalchemy,alembic
[handlers]
keys = console
[formatters]
keys = generic
[logger_root]
level = WARN
handlers = console
qualname =
[logger_sqlalchemy]
level = WARN
handlers =
qualname = sqlalchemy.engine
[logger_alembic]
level = INFO
handlers =
qualname = alembic
[handler_console]
class = StreamHandler
args = (sys.stderr,)
level = NOTSET
formatter = generic
[formatter_generic]
format = %(levelname)-5.5s [%(name)s] %(message)s
datefmt = %H:%M:%S
0707010000003A000081A40000000000000000000000015EC701CB00000383000000000000000000000000000000000000005F00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/ardana-octavia-req.j2#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
[ req ]
distinguished_name = req_distinguished_name
req_extensions = v3_req
prompt = no
[ req_distinguished_name ]
CN = "ardana-octavia-client"
[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
[ alt_names ]0707010000003B000081A40000000000000000000000015EC701CB00000673000000000000000000000000000000000000006500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-api-logging.conf.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
[loggers]
keys: root
[handlers]
keys: watchedfile, logstash
[formatters]
keys: context, logstash
[logger_root]
qualname: root
handlers: watchedfile, logstash
level: NOTSET
# Writes to disk
[handler_watchedfile]
class: handlers.WatchedFileHandler
args: ('{{ octavia_log_dir }}/octavia-api.log',)
formatter: context
level: INFO
# Writes JSON to disk, beaver will ship to logstash
[handler_logstash]
class: handlers.WatchedFileHandler
args: ('{{ octavia_log_dir }}/octavia-api-json.log',)
formatter: logstash
level: INFO
# datefmt must be set otherwise you end up with too many (msecs) fields
[formatter_context]
class: oslo_log.formatters.ContextFormatter
args: (datefmt=datefmt)
format: %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s
datefmt: %Y-%m-%d %H:%M:%S
# the "format" and "datefmt" actually set the "type" and "tags"
[formatter_logstash]
class: logstash.LogstashFormatterVersion1
format: octavia
datefmt: octavia-api
0707010000003C000081A40000000000000000000000015EC701CB000010E5000000000000000000000000000000000000005D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-api.conf.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
# This configuration file includes the default values for Ardana Openstack
# Changes may be made to this file by customers.
[DEFAULT]
api_handler = queue_producer
debug = True
bind_host = {{ octavia_bind_host }}
bind_port = {{ octavia_bind_port }}
#os_region_name = region1
os_endpoint_type = {{ octavia_endpoint_type }}
log_config_append = "{{ octavia_conf_dir }}/octavia-api-logging.conf"
[database]
connection = {{ octavia_db_connection }}
[health_manager]
bind_ip = {{ octavia_healthmanager_bind_host }}
bind_port = {{ octavia_healthmanager_port }}
controller_ip_port_list = {{ octavia_healthmanager_hosts }}
heartbeat_key = {{ octavia_heartbeat_key }}
event_streamer_driver = noop_event_streamer
heartbeat_interval = {{ octavia_heartbeat_interval }}
heartbeat_timeout = 180
health_check_interval = {{ octavia_health_check_interval }}
[keystone_authtoken]
auth_version = 3
auth_uri = {{ octavia_auth_endpoint }}
auth_url = {{ octavia_auth_endpoint }}
auth_type = password
project_name = {{ octavia_project_name }}
project_domain_name = Default
user_domain_name = Default
username = {{ octavia_admin_user }}
password = {{ octavia_admin_password }}
region_name = {{ octavia_region_name }}
cafile = {{ octavia_ca_file }}
[certificates]
cert_generator = local_cert_generator
cert_manager = barbican_cert_manager
ca_certificate = {{ octavia_ca_certificate }}
ca_private_key = {{ octavia_ca_private_key }}
ca_private_key_passphrase = {{ octavia_ca_private_key_passphrase }}
[haproxy_amphora]
server_ca = {{ octavia_server_ca }}
client_cert = {{ octavia_client_cert }}
key_path = {{ octavia_key_path }}
base_path = /var/lib/octavia
base_cert_dir = /var/lib/octavia/certs
connection_max_retries = 120
connection_retry_interval = 5
[controller_worker]
amp_active_retries = 40
amp_active_wait_sec = 10
amp_flavor_id = {{ octavia_nova_flavor_id.stdout }}
amp_image_id = {{ octavia_amp_image_id }}
amp_image_tag = {{ octavia_amp_image_tag }}
amp_boot_network_list = {{ octavia_mgmt_net_id.stdout }}
amp_secgroup_list = {{ octavia_mgmt_sec_group_id.stdout }}
client_ca = {{ octavia_client_ca }}
compute_driver = compute_nova_driver
amphora_driver = amphora_haproxy_rest_driver
network_driver = allowed_address_pairs_driver
loadbalancer_topology = SINGLE
#amp_ssh_key_name =
[oslo_messaging_rabbit]
rabbit_userid = {{ octavia_rabbit_userid }}
rabbit_hosts = {{ octavia_rabbit_hosts }}
rabbit_password = {{ octavia_rabbit_password }}
rabbit_use_ssl = {{ octavia_rabbit_use_ssl }}
[house_keeping]
# Pool size for the spare pool
# spare_amphora_pool_size = 0
[oslo_messaging]
topic = octavia_prov
rpc_thread_pool_size = 2
[service_auth]
auth_version = 3
auth_uri = {{ octavia_auth_endpoint }}
auth_url = {{ octavia_auth_endpoint }}
auth_type = password
project_name = {{ octavia_project_name }}
project_domain_name = Default
user_domain_name = Default
username = {{ octavia_admin_user }}
password = {{ octavia_admin_password }}
region_name = {{ octavia_region_name }}
cafile = {{ octavia_ca_file }}
[networking]
port_detach_timeout = 900
[neutron]
endpoint = {{ neutron_endpoint }}
endpoint_type = {{ octavia_endpoint_type }}
[nova]
endpoint = {{ nova_endpoint }}
endpoint_type = {{ octavia_endpoint_type }}
[barbican]
auth_url = {{ octavia_auth_endpoint }}
admin_user = {{ neutron_admin_user }}
admin_password = {{ neutron_admin_password }}
auth_version = 3
admin_tenant_name = {{ keystone_admin_tenant }}
admin_user_domain = {{ keystone_default_domain }}
admin_project_domain = {{ keystone_default_domain }}
region_name = {{ octavia_region_name }}
#service_name =
endpoint_type = {{ octavia_endpoint_type }}
### End of File ###
## Do NOT put anything after this line ##
0707010000003D000081A40000000000000000000000015EC701CB0000042E000000000000000000000000000000000000006A00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-common-rundir.service.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
[Unit]
Description=Create {{ octavia_common_rundir }}
[Service]
ExecStartPre=/bin/mkdir -p {{ octavia_common_rundir }}
ExecStartPre=/bin/chmod 775 {{ octavia_common_rundir }}
ExecStart=/bin/chown -R {{ octavia_user }}:{{ octavia_group }} {{ octavia_common_rundir }}
[Install]
RequiredBy=octavia-api.service
RequiredBy=octavia-worker.service
RequiredBy=octavia-health-manager.service
RequiredBy=octavia-housekeeping.service
0707010000003E000081A40000000000000000000000015EC701CB000003CA000000000000000000000000000000000000006600000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-component.service.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
[Unit]
Description={{ octavia_service_cmd }} Service
[Service]
ExecStart={{ octavia_component_exec_start }}
Environment=
User={{ octavia_user }}
Group={{ octavia_group }}
PermissionsStartOnly=true
Restart=on-failure
RestartSec={{ restart_hold }}
[Install]
WantedBy=multi-user.target
Alias={{ octavia_service_cmd }}.service
0707010000003F000081A40000000000000000000000015EC701CB000010E9000000000000000000000000000000000000006800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-health-manager.conf.j2{#
#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
# This configuration file includes the default values for Ardana Openstack
# Changes may be made to this file by customers.
[DEFAULT]
api_handler = queue_producer
debug = True
bind_host = {{ octavia_bind_host }}
bind_port = {{ octavia_bind_port }}
#os_region_name = region1
os_endpoint_type = {{ octavia_endpoint_type }}
log_config_append = "{{ octavia_conf_dir }}/octavia-hm-logging.conf"
[database]
connection = {{ octavia_db_connection }}
[health_manager]
bind_ip = {{ octavia_healthmanager_bind_host }}
bind_port = {{ octavia_healthmanager_port }}
controller_ip_port_list = {{ octavia_healthmanager_hosts }}
heartbeat_key = {{ octavia_heartbeat_key }}
event_streamer_driver = noop_event_streamer
heartbeat_interval = {{ octavia_heartbeat_interval }}
heartbeat_timeout = 180
health_check_interval = {{ octavia_health_check_interval }}
[keystone_authtoken]
auth_version = 3
auth_uri = {{ octavia_auth_endpoint }}
auth_url = {{ octavia_auth_endpoint }}
auth_type = password
project_name = {{ octavia_project_name }}
project_domain_name = Default
user_domain_name = Default
username = {{ octavia_admin_user }}
password = {{ octavia_admin_password }}
region_name = {{ octavia_region_name }}
cafile = {{ octavia_ca_file }}
[certificates]
cert_generator = local_cert_generator
cert_manager = barbican_cert_manager
ca_certificate = {{ octavia_ca_certificate }}
ca_private_key = {{ octavia_ca_private_key }}
ca_private_key_passphrase = {{ octavia_ca_private_key_passphrase }}
[haproxy_amphora]
server_ca = {{ octavia_server_ca }}
client_cert = {{ octavia_client_cert }}
key_path = {{ octavia_key_path }}
base_path = /var/lib/octavia
base_cert_dir = /var/lib/octavia/certs
connection_max_retries = 120
connection_retry_interval = 5
[controller_worker]
amp_active_retries = 40
amp_active_wait_sec = 10
amp_flavor_id = {{ octavia_nova_flavor_id.stdout }}
amp_image_id = {{ octavia_amp_image_id }}
amp_image_tag = {{ octavia_amp_image_tag }}
amp_boot_network_list = {{ octavia_mgmt_net_id.stdout }}
amp_secgroup_list = {{ octavia_mgmt_sec_group_id.stdout }}
client_ca = {{ octavia_client_ca }}
compute_driver = compute_nova_driver
amphora_driver = amphora_haproxy_rest_driver
network_driver = allowed_address_pairs_driver
loadbalancer_topology = SINGLE
#amp_ssh_key_name =
[oslo_messaging_rabbit]
rabbit_userid = {{ octavia_rabbit_userid }}
rabbit_hosts = {{ octavia_rabbit_hosts }}
rabbit_password = {{ octavia_rabbit_password }}
rabbit_use_ssl = {{ octavia_rabbit_use_ssl }}
[oslo_messaging]
topic = octavia_prov
rpc_thread_pool_size = 2
[house_keeping]
# Pool size for the spare pool
# spare_amphora_pool_size = 0
[service_auth]
auth_version = 3
auth_uri = {{ octavia_auth_endpoint }}
auth_url = {{ octavia_auth_endpoint }}
auth_type = password
project_name = {{ octavia_project_name }}
project_domain_name = Default
user_domain_name = Default
username = {{ octavia_admin_user }}
password = {{ octavia_admin_password }}
region_name = {{ octavia_region_name }}
cafile = {{ octavia_ca_file }}
[networking]
port_detach_timeout = 900
[neutron]
endpoint = {{ neutron_endpoint }}
endpoint_type = {{ octavia_endpoint_type }}
[nova]
endpoint = {{ nova_endpoint }}
endpoint_type = {{ octavia_endpoint_type }}
[barbican]
auth_url = {{ octavia_auth_endpoint }}
admin_user = {{ neutron_admin_user }}
admin_password = {{ neutron_admin_password }}
auth_version = 3
admin_tenant_name = {{ keystone_admin_tenant }}
admin_user_domain = {{ keystone_default_domain }}
admin_project_domain = {{ keystone_default_domain }}
region_name = {{ octavia_region_name }}
#service_name =
endpoint_type = {{ octavia_endpoint_type }}
### End of File ###
## Do NOT put anything after this line ##
07070100000040000081A40000000000000000000000015EC701CB0000068E000000000000000000000000000000000000006400000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-hk-logging.conf.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
[loggers]
keys: root
[handlers]
keys: watchedfile, logstash
[formatters]
keys: context, logstash
[logger_root]
qualname: root
handlers: watchedfile, logstash
level: NOTSET
# Writes to disk
[handler_watchedfile]
class: handlers.WatchedFileHandler
args: ('{{ octavia_log_dir }}/octavia-housekeeping.log',)
formatter: context
level: INFO
# Writes JSON to disk, beaver will ship to logstash
[handler_logstash]
class: handlers.WatchedFileHandler
args: ('{{ octavia_log_dir }}/octavia-housekeeping-json.log',)
formatter: logstash
level: INFO
# datefmt must be set otherwise you end up with too many (msecs) fields
[formatter_context]
class: oslo_log.formatters.ContextFormatter
args: (datefmt=datefmt)
format: %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s
datefmt: %Y-%m-%d %H:%M:%S
# the "format" and "datefmt" actually set the "type" and "tags"
[formatter_logstash]
class: logstash.LogstashFormatterVersion1
format: octavia
datefmt: octavia-housekeeping
07070100000041000081A40000000000000000000000015EC701CB00000695000000000000000000000000000000000000006400000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-hm-logging.conf.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
[loggers]
keys: root
[handlers]
keys: watchedfile, logstash
[formatters]
keys: context, logstash
[logger_root]
qualname: root
handlers: watchedfile, logstash
level: NOTSET
# Writes to disk
[handler_watchedfile]
class: handlers.WatchedFileHandler
args: ('{{ octavia_log_dir }}/octavia-health-manager.log',)
formatter: context
level: INFO
# Writes JSON to disk, beaver will ship to logstash
[handler_logstash]
class: handlers.WatchedFileHandler
args: ('{{ octavia_log_dir }}/octavia-health-manager-json.log',)
formatter: logstash
level: INFO
# datefmt must be set otherwise you end up with too many (msecs) fields
[formatter_context]
class: oslo_log.formatters.ContextFormatter
args: (datefmt=datefmt)
format: %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s
datefmt: %Y-%m-%d %H:%M:%S
# the "format" and "datefmt" actually set the "type" and "tags"
[formatter_logstash]
class: logstash.LogstashFormatterVersion1
format: octavia
datefmt: octavia-health-manager
07070100000042000081A40000000000000000000000015EC701CB000010E4000000000000000000000000000000000000006600000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-housekeeping.conf.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
# This configuration file includes the default values for Ardana Openstack
# Changes may be made to this file by customers.
[DEFAULT]
api_handler = queue_producer
debug = True
bind_host = {{ octavia_bind_host }}
bind_port = {{ octavia_bind_port }}
#os_region_name = region1
os_endpoint_type = {{ octavia_endpoint_type }}
log_config_append = "{{ octavia_conf_dir }}/octavia-hk-logging.conf"
[database]
connection = {{ octavia_db_connection }}
[health_manager]
bind_ip = {{ octavia_healthmanager_bind_host }}
bind_port = {{ octavia_healthmanager_port }}
controller_ip_port_list = {{ octavia_healthmanager_hosts }}
heartbeat_key = {{ octavia_heartbeat_key }}
event_streamer_driver = noop_event_streamer
heartbeat_interval = {{ octavia_heartbeat_interval }}
heartbeat_timeout = 180
health_check_interval = {{ octavia_health_check_interval }}
[keystone_authtoken]
auth_version = 3
auth_uri = {{ octavia_auth_endpoint }}
auth_url = {{ octavia_auth_endpoint }}
auth_type = password
project_name = {{ octavia_project_name }}
project_domain_name = Default
user_domain_name = Default
username = {{ octavia_admin_user }}
password = {{ octavia_admin_password }}
region_name = {{ octavia_region_name }}
cafile = {{ octavia_ca_file }}
[certificates]
cert_generator = local_cert_generator
cert_manager = barbican_cert_manager
ca_certificate = {{ octavia_ca_certificate }}
ca_private_key = {{ octavia_ca_private_key }}
ca_private_key_passphrase = {{ octavia_ca_private_key_passphrase }}
[haproxy_amphora]
server_ca = {{ octavia_server_ca }}
client_cert = {{ octavia_client_cert }}
key_path = {{ octavia_key_path }}
base_path = /var/lib/octavia
base_cert_dir = /var/lib/octavia/certs
connection_max_retries = 120
connection_retry_interval = 5
[controller_worker]
amp_active_retries = 40
amp_active_wait_sec = 10
amp_flavor_id = {{ octavia_nova_flavor_id.stdout }}
amp_image_id = {{ octavia_amp_image_id }}
amp_image_tag = {{ octavia_amp_image_tag }}
amp_boot_network_list = {{ octavia_mgmt_net_id.stdout }}
amp_secgroup_list = {{ octavia_mgmt_sec_group_id.stdout }}
client_ca = {{ octavia_client_ca }}
compute_driver = compute_nova_driver
amphora_driver = amphora_haproxy_rest_driver
network_driver = allowed_address_pairs_driver
loadbalancer_topology = SINGLE
#amp_ssh_key_name =
[oslo_messaging_rabbit]
rabbit_userid = {{ octavia_rabbit_userid }}
rabbit_hosts = {{ octavia_rabbit_hosts }}
rabbit_password = {{ octavia_rabbit_password }}
rabbit_use_ssl = {{ octavia_rabbit_use_ssl }}
[oslo_messaging]
topic = octavia_prov
rpc_thread_pool_size = 2
[house_keeping]
# Pool size for the spare pool
# spare_amphora_pool_size = 0
[service_auth]
auth_version = 3
auth_uri = {{ octavia_auth_endpoint }}
auth_url = {{ octavia_auth_endpoint }}
auth_type = password
project_name = {{ octavia_project_name }}
project_domain_name = Default
user_domain_name = Default
username = {{ octavia_admin_user }}
password = {{ octavia_admin_password }}
region_name = {{ octavia_region_name }}
cafile = {{ octavia_ca_file }}
[networking]
port_detach_timeout = 900
[neutron]
endpoint = {{ neutron_endpoint }}
endpoint_type = {{ octavia_endpoint_type }}
[nova]
endpoint = {{ nova_endpoint }}
endpoint_type = {{ octavia_endpoint_type }}
[barbican]
auth_url = {{ octavia_auth_endpoint }}
admin_user = {{ neutron_admin_user }}
admin_password = {{ neutron_admin_password }}
auth_version = 3
admin_tenant_name = {{ keystone_admin_tenant }}
admin_user_domain = {{ keystone_default_domain }}
admin_project_domain = {{ keystone_default_domain }}
region_name = {{ octavia_region_name }}
#service_name =
endpoint_type = {{ octavia_endpoint_type }}
### End of File ###
## Do NOT put anything after this line ##
07070100000043000081A40000000000000000000000015EC701CB0000067C000000000000000000000000000000000000006800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-worker-logging.conf.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
[loggers]
keys: root
[handlers]
keys: watchedfile, logstash
[formatters]
keys: context, logstash
[logger_root]
qualname: root
handlers: watchedfile, logstash
level: NOTSET
# Writes to disk
[handler_watchedfile]
class: handlers.WatchedFileHandler
args: ('{{ octavia_log_dir }}/octavia-worker.log',)
formatter: context
level: INFO
# Writes JSON to disk, beaver will ship to logstash
[handler_logstash]
class: handlers.WatchedFileHandler
args: ('{{ octavia_log_dir }}/octavia-worker-json.log',)
formatter: logstash
level: INFO
# datefmt must be set otherwise you end up with too many (msecs) fields
[formatter_context]
class: oslo_log.formatters.ContextFormatter
args: (datefmt=datefmt)
format: %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s
datefmt: %Y-%m-%d %H:%M:%S
# the "format" and "datefmt" actually set the "type" and "tags"
[formatter_logstash]
class: logstash.LogstashFormatterVersion1
format: octavia
datefmt: octavia-worker
07070100000044000081A40000000000000000000000015EC701CB000010EC000000000000000000000000000000000000006000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/octavia-worker.conf.j2{#
#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
# This configuration file includes the default values for Ardana Openstack
# Changes may be made to this file by customers.
[DEFAULT]
api_handler = queue_producer
debug = True
bind_host = {{ octavia_bind_host }}
bind_port = {{ octavia_bind_port }}
#os_region_name = region1
os_endpoint_type = {{ octavia_endpoint_type }}
log_config_append = "{{ octavia_conf_dir }}/octavia-worker-logging.conf"
[database]
connection = {{ octavia_db_connection }}
[health_manager]
bind_ip = {{ octavia_healthmanager_bind_host }}
bind_port = {{ octavia_healthmanager_port }}
controller_ip_port_list = {{ octavia_healthmanager_hosts }}
heartbeat_key = {{ octavia_heartbeat_key }}
event_streamer_driver = noop_event_streamer
heartbeat_interval = {{ octavia_heartbeat_interval }}
heartbeat_timeout = 180
health_check_interval = {{ octavia_health_check_interval }}
[keystone_authtoken]
auth_version = 3
auth_uri = {{ octavia_auth_endpoint }}
auth_url = {{ octavia_auth_endpoint }}
auth_type = password
project_name = {{ octavia_project_name }}
project_domain_name = Default
user_domain_name = Default
username = {{ octavia_admin_user }}
password = {{ octavia_admin_password }}
region_name = {{ octavia_region_name }}
cafile = {{ octavia_ca_file }}
[certificates]
cert_generator = local_cert_generator
cert_manager = barbican_cert_manager
ca_certificate = {{ octavia_ca_certificate }}
ca_private_key = {{ octavia_ca_private_key }}
ca_private_key_passphrase = {{ octavia_ca_private_key_passphrase }}
[haproxy_amphora]
server_ca = {{ octavia_server_ca }}
client_cert = {{ octavia_client_cert }}
key_path = {{ octavia_key_path }}
base_path = /var/lib/octavia
base_cert_dir = /var/lib/octavia/certs
connection_max_retries = 120
connection_retry_interval = 5
[controller_worker]
amp_active_retries = 40
amp_active_wait_sec = 10
amp_flavor_id = {{ octavia_nova_flavor_id.stdout}}
amp_image_id = {{ octavia_amp_image_id }}
amp_image_tag = {{ octavia_amp_image_tag }}
amp_boot_network_list = {{ octavia_mgmt_net_id.stdout }}
amp_secgroup_list = {{ octavia_mgmt_sec_group_id.stdout }}
client_ca = {{ octavia_client_ca }}
compute_driver = compute_nova_driver
amphora_driver = amphora_haproxy_rest_driver
network_driver = allowed_address_pairs_driver
loadbalancer_topology = SINGLE
#amp_ssh_key_name =
[oslo_messaging_rabbit]
rabbit_userid = {{ octavia_rabbit_userid }}
rabbit_hosts = {{ octavia_rabbit_hosts }}
rabbit_password = {{ octavia_rabbit_password }}
rabbit_use_ssl = {{ octavia_rabbit_use_ssl }}
[oslo_messaging]
topic = octavia_prov
rpc_thread_pool_size = 2
[house_keeping]
# Pool size for the spare pool
# spare_amphora_pool_size = 0
[service_auth]
auth_version = 3
auth_uri = {{ octavia_auth_endpoint }}
auth_url = {{ octavia_auth_endpoint }}
auth_type = password
project_name = {{ octavia_project_name }}
project_domain_name = Default
user_domain_name = Default
username = {{ octavia_admin_user }}
password = {{ octavia_admin_password }}
region_name = {{ octavia_region_name }}
cafile = {{ octavia_ca_file }}
[networking]
port_detach_timeout = 900
[neutron]
endpoint = {{ neutron_endpoint }}
endpoint_type = {{ octavia_endpoint_type }}
[nova]
endpoint = {{ nova_endpoint }}
endpoint_type = {{ octavia_endpoint_type }}
[barbican]
auth_url = {{ octavia_auth_endpoint }}
admin_user = {{ neutron_admin_user }}
admin_password = {{ neutron_admin_password }}
auth_version = 3
admin_tenant_name = {{ keystone_admin_tenant }}
admin_user_domain = {{ keystone_default_domain }}
admin_project_domain = {{ keystone_default_domain }}
region_name = {{ octavia_region_name }}
#service_name =
endpoint_type = {{ octavia_endpoint_type }}
### End of File ###
## Do NOT put anything after this line ##
07070100000045000081A40000000000000000000000015EC701CB00000C47000000000000000000000000000000000000005800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/templates/openssl.cnf.j2{# Copyright 2010 United States Government as represented by the
# Administrator of the National Aeronautics and Space Administration.
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#}
#
# OpenSSL configuration file.
#
# Establish working directory.
dir = .
[ ca ]
default_ca = CA_default
[ CA_default ]
serial = {{ tls_serial_file }}
database = {{ tls_index_file }}
new_certs_dir = $dir/
certificate = {{ tls_ca_cert_file }}
private_key = {{ tls_ca_key_file }}
unique_subject = no
default_crl_days = 365
default_days = 365
default_md = md5
preserve = no
email_in_dn = no
nameopt = default_ca
certopt = default_ca
policy = policy_match
copy_extensions = copy
# NOTE(dprince): stateOrProvinceName must be 'supplied' or 'optional' to
# work around a stateOrProvince printable string UTF8 mismatch on
# RHEL 6 and Fedora 14 (using openssl-1.0.0-4.el6.x86_64 or
# openssl-1.0.0d-1.fc14.x86_64)
[ policy_match ]
countryName = optional
stateOrProvinceName = optional
organizationName = optional
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
[ req ]
default_bits = 2048 # Size of keys
default_keyfile = key.pem # name of generated keys
default_md = md5 # message digest algorithm
string_mask = nombstr # permitted characters
distinguished_name = req_distinguished_name
req_extensions = v3_req
x509_extensions = v3_ca
[ req_distinguished_name ]
# Variable name Prompt string
#---------------------- ----------------------------------
0.organizationName = Organization Name (company)
organizationalUnitName = Organizational Unit Name (department, division)
emailAddress = Email Address
emailAddress_max = 40
localityName = Locality Name (city, district)
stateOrProvinceName = State or Province Name (full name)
countryName = Country Name (2 letter code)
countryName_min = 2
countryName_max = 2
commonName = Common Name (hostname, IP, or your name)
commonName_max = 64
# Default values for the above, for consistency and less typing.
# Variable name Value
#------------------------------ ------------------------------
0.organizationName_default = Hewlett-Packard-Enterprise
localityName_default = Bristol
stateOrProvinceName_default = Bristol
countryName_default = UK
[ v3_ca ]
basicConstraints = CA:TRUE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer:always
subjectAltName = @alt_names
[ v3_req ]
basicConstraints = CA:FALSE
subjectKeyIdentifier = hash
[ alt_names ]07070100000046000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004400000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/vars07070100000047000081A40000000000000000000000015EC701CB000002F0000000000000000000000000000000000000004D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-common/vars/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
systemd_service_dir: /etc/systemd/system/
octavia_common_rundir_service: octavia-common-rundir.service
07070100000048000041ED0000000000000000000000055EC701CB00000000000000000000000000000000000000000000004700000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager07070100000049000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000005000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/defaults0707010000004A000081A40000000000000000000000015EC701CB000002F1000000000000000000000000000000000000005900000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/defaults/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# This file will contain the default values for the octavia server
---
octavia_component: octavia-health-manager
0707010000004B000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/tasks0707010000004C000081A40000000000000000000000015EC701CB000004A8000000000000000000000000000000000000005B00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/tasks/configure.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: ../../octavia-common/tasks/create_systemd_service.yml
octavia_service_cmd: "octavia-health-manager"
octavia_service_cmd_args: "--config-file={{ octavia_conf_dir }}/octavia-health-manager.conf"
- name: octavia-health-manager | configure | set octavia log file ownership
become: yes
file:
path: "{{ octavia_log_dir }}/{{ item }}"
owner: "{{ octavia_user }}"
group: "{{ octavia_log_file_group }}"
mode: 0640
state: touch
with_items:
- octavia-health-manager.log
- octavia-health-manager-json.log
0707010000004D000081A40000000000000000000000015EC701CB00000497000000000000000000000000000000000000005700000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/tasks/start.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-health-manager | start | Restart the octavia-health-manager
service: name=octavia-health-manager state=restarted
when: (ardana_notify_octavia_restart_required is defined and
ardana_notify_octavia_restart_required.changed) or
(ardana_notify_octavia_health_manager_restart_required is defined and
ardana_notify_octavia_health_manager_restart_required.changed)
- name: octavia-health-manager | start | Start the octavia-health-manager
service: name=octavia-health-manager state=started
0707010000004E000081A40000000000000000000000015EC701CB000002BE000000000000000000000000000000000000005800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/tasks/status.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: ../../octavia-common/tasks/_service_status.yml
0707010000004F000081A40000000000000000000000015EC701CB00000301000000000000000000000000000000000000005600000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/tasks/stop.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-health-manager | stop | Stop the octavia-health-manager
service: name=octavia-health-manager state=stopped
07070100000050000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004C00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/vars07070100000051000081A40000000000000000000000015EC701CB00000283000000000000000000000000000000000000005500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-health-manager/vars/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
07070100000052000041ED0000000000000000000000055EC701CB00000000000000000000000000000000000000000000004500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping07070100000053000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004E00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/defaults07070100000054000081A40000000000000000000000015EC701CB000002EF000000000000000000000000000000000000005700000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/defaults/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# This file will contain the default values for the octavia server
---
octavia_component: octavia-housekeeping
07070100000055000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004B00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/tasks07070100000056000081A40000000000000000000000015EC701CB0000049E000000000000000000000000000000000000005900000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/tasks/configure.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: ../../octavia-common/tasks/create_systemd_service.yml
octavia_service_cmd: "octavia-housekeeping"
octavia_service_cmd_args: "--config-file={{ octavia_conf_dir }}/octavia-housekeeping.conf"
- name: octavia-housekeeping | configure | set octavia log file ownership
become: yes
file:
path: "{{ octavia_log_dir }}/{{ item }}"
owner: "{{ octavia_user }}"
group: "{{ octavia_log_file_group }}"
mode: 0640
state: touch
with_items:
- octavia-housekeeping.log
- octavia-housekeeping-json.log
07070100000057000081A40000000000000000000000015EC701CB00000487000000000000000000000000000000000000005500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/tasks/start.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-housekeeping | start | Restart the octavia-housekeeping
service: name=octavia-housekeeping state=restarted
when: (ardana_notify_octavia_restart_required is defined and
ardana_notify_octavia_restart_required.changed) or
(ardana_notify_octavia_housekeeping_restart_required is defined and
ardana_notify_octavia_housekeeping_restart_required.changed)
- name: octavia-housekeeping | start | Start the octavia-housekeeping
service: name=octavia-housekeeping state=started
07070100000058000081A40000000000000000000000015EC701CB000002BE000000000000000000000000000000000000005600000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/tasks/status.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: ../../octavia-common/tasks/_service_status.yml
07070100000059000081A40000000000000000000000015EC701CB000002FB000000000000000000000000000000000000005400000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/tasks/stop.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-housekeeping | stop | Stop the octavia-housekeeping
service: name=octavia-housekeeping state=stopped
0707010000005A000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004A00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/vars0707010000005B000081A40000000000000000000000015EC701CB00000283000000000000000000000000000000000000005300000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-housekeeping/vars/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
0707010000005C000041ED0000000000000000000000055EC701CB00000000000000000000000000000000000000000000004700000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure0707010000005D000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000005000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/defaults0707010000005E000081A40000000000000000000000015EC701CB00000283000000000000000000000000000000000000005900000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/defaults/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
0707010000005F000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004C00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/meta07070100000060000081A40000000000000000000000015EC701CB000002AA000000000000000000000000000000000000005500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/meta/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
dependencies:
- role: octavia-common
07070100000061000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/tasks07070100000062000081A40000000000000000000000015EC701CB00000363000000000000000000000000000000000000005E00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/tasks/db_configure.yml
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: Octavia Post Configure | db_configure | Run Octavia DB sync
command: "{{ octavia_bin_dir }}/octavia-db-manage --config-file {{ octavia_conf_dir }}/octavia-api.conf upgrade head"
run_once_per: verb_hosts.OCT_API
07070100000063000081A40000000000000000000000015EC701CB000005B6000000000000000000000000000000000000006500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/tasks/keystone_change_pwd.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-post-configure | keystone_change_pwd | Get a domain scoped token
keystone_v3:
endpoint: "{{ keystone_endpoint }}"
login_username: "{{ keystone_admin_user }}"
login_password: "{{ keystone_admin_password }}"
login_user_domain_name: "{{ keystone_default_domain }}"
login_domain_name: "{{ keystone_default_domain }}"
action: "token_get"
run_once: true
register: domain_scoped_token
- name: octavia-post-configure | keystone_change_pwd | Update octavia user password
keystone_v3:
login_token: "{{ domain_scoped_token.result }}"
endpoint: "{{ keystone_endpoint }}"
action: "reset_password_by_admin"
user_name: "{{ octavia_admin_user }}"
user_password: "{{ octavia_admin_password }}"
user_domain_name: "{{ octavia_user_domain_name }}"
run_once: true
07070100000064000081A40000000000000000000000015EC701CB00000BD4000000000000000000000000000000000000005F00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/tasks/keystone_conf.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# Octavia keystone configuration
---
- name: octavia-post-configure | keystone_conf | Get a domain scoped token
keystone_v3:
endpoint: "{{ keystone_endpoint }}"
login_username: "{{ keystone_admin_user }}"
login_password: "{{ keystone_admin_password }}"
login_user_domain_name: "{{ keystone_default_domain }}"
login_domain_name: "{{ keystone_default_domain }}"
action: "token_get"
run_once: true
register: domain_scoped_token
- name: octavia-post-configure | keystone_conf | Create Octavia Keystone Project
keystone_v3:
action: "create_project"
endpoint: "{{ keystone_endpoint }}"
project_name: "{{ octavia_project_name }}"
project_domain_name: "{{ octavia_project_domain_name }}"
login_token: "{{ domain_scoped_token.result }}"
run_once: true
register: project_id_result
- name: octavia-post-configure | keystone_conf | Set octavia_project_id fact
set_fact:
octavia_project_id: "{{ project_id_result.result['id'] }}"
when: project_id_result | success
- name: octavia-post-configure | keystone_conf | Create Octavia Keystone User
keystone_v3:
action: "create_user"
endpoint: "{{ keystone_endpoint }}"
login_token: "{{ domain_scoped_token.result }}"
user_name: "{{ octavia_admin_user }}"
user_password: "{{ octavia_admin_password }}"
user_domain_name: "{{ octavia_user_domain_name }}"
run_once: true
- name: octavia-post-configure | keystone_conf | Add role to Octavia Service User
keystone_v3:
action: "grant_project_role"
endpoint: "{{ keystone_endpoint }}"
login_token: "{{ domain_scoped_token.result }}"
project_name: "{{ octavia_project_name }}"
user_name: "{{ octavia_admin_user }}"
role_name: "{{ keystone.admin_role }}"
user_domain_name: "{{ octavia_user_domain_name }}"
project_domain_name: "{{ octavia_project_domain_name }}"
run_once: true
- name: octavia-post-configure | keystone_conf | Add neutron_admin role to Octavia User
keystone_v3:
action: "grant_project_role"
endpoint: "{{ keystone_endpoint }}"
login_token: "{{ domain_scoped_token.result }}"
project_name: "{{ octavia_project_name }}"
user_name: "{{ octavia_admin_user }}"
role_name: "{{ octavia_neutron_admin_role }}"
user_domain_name: "{{ octavia_user_domain_name }}"
project_domain_name: "{{ octavia_project_domain_name }}"
run_once: true
07070100000065000081A40000000000000000000000015EC701CB000005F7000000000000000000000000000000000000006400000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/tasks/set_neutron_quotas.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# Set Neutron Quotas for Octavia Project
---
- name: octavia-post-configure | set_neutron_quotas | Set Neutron Quotas
shell: >
neutron quota-update --tenant-id {{ octavia_project_id }} \
--floatingip -1 \
--network -1 \
--port -1 \
--router -1 \
--loadbalancer -1 \
--pool -1 \
--security-group -1 \
--security-group-rule -1 \
--subnet -1
environment:
OS_AUTH_URL: "{{ octavia_auth_endpoint }}"
OS_USERNAME: "{{ keystone_admin_user }}"
OS_PASSWORD: "{{ keystone_admin_password }}"
OS_PROJECT_NAME: "{{ keystone_service_tenant }}"
OS_USER_DOMAIN_NAME: "{{ octavia_user_domain_name }}"
OS_PROJECT_DOMAIN_NAME: "{{ octavia_project_domain_name }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
run_once_per: verb_hosts.OCT_API
07070100000066000081A40000000000000000000000015EC701CB000005DE000000000000000000000000000000000000006100000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-post-configure/tasks/set_nova_quotas.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# Set Nova Quotas for Octavia Project
---
- name: octavia-post-configure | set_nova_quotas | Set Nova Quotas
shell: >
nova quota-update {{ octavia_project_id }} \
--cores -1 \
--fixed-ips -1 \
--floating-ips -1 \
--instances -1 \
--ram -1 \
--security-groups -1 \
--security-group-rules -1
environment:
OS_AUTH_URL: "{{ octavia_auth_endpoint }}"
OS_USERNAME: "{{ keystone_admin_user }}"
OS_PASSWORD: "{{ keystone_admin_password }}"
OS_PROJECT_NAME: "{{ keystone_service_tenant }}"
OS_USER_DOMAIN_NAME: "{{ octavia_user_domain_name }}"
OS_PROJECT_DOMAIN_NAME: "{{ octavia_project_domain_name }}"
OS_ENDPOINT_TYPE: "{{ octavia_endpoint_type }}"
OS_REGION_NAME: "{{ octavia_region_name }}"
OS_CACERT: "{{ octavia_ca_file }}"
OS_COMPUTE_API_VERSION: "2"
run_once_per: verb_hosts.OCT_API
07070100000067000041ED0000000000000000000000055EC701CB00000000000000000000000000000000000000000000003F00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker07070100000068000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004800000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/defaults07070100000069000081A40000000000000000000000015EC701CB000002E9000000000000000000000000000000000000005100000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/defaults/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
# This file will contain the default values for the octavia server
---
octavia_component: octavia-worker
0707010000006A000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004500000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/tasks0707010000006B000081A40000000000000000000000015EC701CB00000480000000000000000000000000000000000000005300000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/tasks/configure.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: ../../octavia-common/tasks/create_systemd_service.yml
octavia_service_cmd: "octavia-worker"
octavia_service_cmd_args: "--config-file={{ octavia_conf_dir }}/octavia-worker.conf"
- name: octavia-worker | configure | set octavia log file ownership
become: yes
file:
path: "{{ octavia_log_dir }}/{{ item }}"
owner: "{{ octavia_user }}"
group: "{{ octavia_log_file_group }}"
mode: 0640
state: touch
with_items:
- octavia-worker.log
- octavia-worker-json.log
0707010000006C000081A40000000000000000000000015EC701CB00000457000000000000000000000000000000000000004F00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/tasks/start.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-worker | start | Restart the octavia-worker
service: name=octavia-worker state=restarted
when: (ardana_notify_octavia_restart_required is defined and
ardana_notify_octavia_restart_required.changed) or
(ardana_notify_octavia_worker_restart_required is defined and
ardana_notify_octavia_worker_restart_required.changed)
- name: octavia-worker | start | Start the octavia-worker
service: name=octavia-worker state=started
0707010000006D000081A40000000000000000000000015EC701CB000002BE000000000000000000000000000000000000005000000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/tasks/status.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: ../../octavia-common/tasks/_service_status.yml
0707010000006E000081A40000000000000000000000015EC701CB000002E9000000000000000000000000000000000000004E00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/tasks/stop.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: octavia-worker | stop | Stop the octavia-worker
service: name=octavia-worker state=stopped
0707010000006F000041ED0000000000000000000000025EC701CB00000000000000000000000000000000000000000000004400000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/vars07070100000070000081A40000000000000000000000015EC701CB00000283000000000000000000000000000000000000004D00000000ardana-octavia-8.0+git.1590100427.cf4cc8f/roles/octavia-worker/vars/main.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000B00000000TRAILER!!!327 blocks