
Address occasional issues where TCP connections appear healthy, yet the web servers within containers fail to respond, resulting in requests being sent to unhealthy servers. Implemented for services I currently use. - Aodh (OPTIONS to /, expects 2XX or 3XX) - Barbican (OPTIONS to /, expects 2XX or 3XX) - Blazar (OPTIONS to /, expects 401) - Cinder API (OPTIONS to /, expects 2XX or 3XX) - CloudKitty (OPTIONS to /, expects 2XX or 3XX) - Designate (OPTIONS to /, expects 2XX or 3XX) - Glance (OPTIONS to /, expects 2XX or 3XX) - Gnocchi (OPTIONS to /, expects 2XX or 3XX) - Grafana (OPTIONS to /, expects 2XX or 3XX) - Heat (OPTIONS to /, expects 2XX or 3XX) - Horizon (OPTIONS to /, expects 2XX or 3XX) - Ironic (OPTIONS to /, expects 2XX or 3XX) - Keystone (OPTIONS to /, expects 2XX or 3XX) - Magnum (OPTIONS to /, expects 2XX or 3XX) - Manila (OPTIONS to /, expects 2XX or 3XX) - Masakari (OPTIONS to /, expects 2XX or 3XX) - Mistral (OPTIONS to /, expects 2XX or 3XX) - Nova API (OPTIONS to /, expects 2XX or 3XX) - Nova Metadata (OPTIONS to /, expects 2XX or 3XX) - Neutron (OPTIONS to /, expects 2XX or 3XX) - Opensearch (OPTIONS to /, expects 2XX or 3XX) - Opensearch Dashboards (OPTIONS to /, expects 401) - Placement (GET to /, expects 2XX or 3XX) - Prometheus (OPTIONS to /, expects 2XX or 3XX) - Prometheus AlertManager (OPTIONS to /, expects 2XX or 3XX) - Prometheus Openstack Exporter (OPTIONS to /, expects 2XX or 3XX) - Prometheus Server (OPTIONS to /, expects 2XX or 3XX) - Skyline API (OPTIONS to /docs, expects 2XX or 3XX) - Skyline Console (GET to /, expects 2XX or 3XX) - Swift (OPTIONS to /info, expects 2XX or 3XX) - Trove (OPTIONS to /, expects 2XX or 3XX) - Venus (OPTIONS to /, expects 2XX or 3XX) - Watcher (GET to /, expects 2XX or 3XX) - Zun (OPTIONS to /, expects 2XX or 3XX) Change-Id: I839f7f1051182fe797394e5436571d64d5c5b5a4
111 lines
4.2 KiB
YAML
111 lines
4.2 KiB
YAML
---
|
|
swift_services:
|
|
swift-proxy-server:
|
|
group: swift-proxy-server
|
|
enabled: true
|
|
haproxy:
|
|
swift_api:
|
|
enabled: "{{ enable_swift }}"
|
|
mode: "http"
|
|
external: false
|
|
port: "{{ swift_proxy_server_listen_port }}"
|
|
backend_http_extra:
|
|
- "option httpchk /info"
|
|
swift_api_external:
|
|
enabled: "{{ enable_swift }}"
|
|
mode: "http"
|
|
external: true
|
|
external_fqdn: "{{ swift_external_fqdn }}"
|
|
port: "{{ swift_proxy_server_listen_port }}"
|
|
backend_http_extra:
|
|
- "option httpchk /info"
|
|
|
|
####################
|
|
# Docker
|
|
####################
|
|
swift_tag: "{{ openstack_tag }}"
|
|
|
|
swift_proxy_server_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ docker_image_name_prefix }}swift-proxy-server"
|
|
swift_proxy_server_tag: "{{ swift_tag }}"
|
|
swift_proxy_server_image_full: "{{ swift_proxy_server_image }}:{{ swift_proxy_server_tag }}"
|
|
|
|
swift_account_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ docker_image_name_prefix }}swift-account"
|
|
swift_account_tag: "{{ swift_tag }}"
|
|
swift_account_image_full: "{{ swift_account_image }}:{{ swift_account_tag }}"
|
|
|
|
swift_container_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ docker_image_name_prefix }}swift-container"
|
|
swift_container_tag: "{{ swift_tag }}"
|
|
swift_container_image_full: "{{ swift_container_image }}:{{ swift_container_tag }}"
|
|
|
|
swift_object_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ docker_image_name_prefix }}swift-object"
|
|
swift_object_tag: "{{ swift_tag }}"
|
|
swift_object_image_full: "{{ swift_object_image }}:{{ swift_object_tag }}"
|
|
|
|
swift_object_expirer_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ docker_image_name_prefix }}swift-object-expirer"
|
|
swift_object_expirer_tag: "{{ swift_tag }}"
|
|
swift_object_expirer_image_full: "{{ swift_object_expirer_image }}:{{ swift_object_expirer_tag }}"
|
|
|
|
swift_rsyncd_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ docker_image_name_prefix }}swift-rsyncd"
|
|
swift_rsyncd_tag: "{{ swift_tag }}"
|
|
swift_rsyncd_image_full: "{{ swift_rsyncd_image }}:{{ swift_rsyncd_tag }}"
|
|
|
|
swift_log_level: "{{ 'DEBUG' if openstack_logging_debug | bool else 'INFO' }}"
|
|
|
|
####################
|
|
# OpenStack
|
|
####################
|
|
swift_internal_endpoint: "{{ swift_internal_base_endpoint }}/v1/AUTH_%(tenant_id)s"
|
|
swift_public_endpoint: "{{ swift_public_base_endpoint }}/v1/AUTH_%(tenant_id)s"
|
|
|
|
swift_logging_debug: "{{ openstack_logging_debug }}"
|
|
|
|
swift_keystone_user: "swift"
|
|
swift_admin_tenant_name: "admin"
|
|
|
|
swift_devices_mount_point: "/srv/node"
|
|
swift_devices_match_mode: "strict"
|
|
swift_devices_name: "KOLLA_SWIFT_DATA"
|
|
# For S3 API we need to defer the auth decision to allow s3api and s3token
|
|
# middlewares to process requests using EC2 credentials.
|
|
swift_delay_auth_decision: "{{ enable_swift_s3api | bool }}"
|
|
|
|
# Boolean, true if there is a dedicated replication network.
|
|
swift_has_replication_network: "{{ swift_storage_interface != swift_replication_interface }}"
|
|
|
|
openstack_swift_auth: "{{ openstack_auth }}"
|
|
|
|
syslog_server: "{{ api_interface_address }}"
|
|
syslog_swift_facility: "local0"
|
|
|
|
swift_enable_rolling_upgrade: "yes"
|
|
|
|
swift_extra_ring_files: []
|
|
|
|
swift_account_workers: "{{ openstack_service_workers }}"
|
|
swift_container_workers: "{{ openstack_service_workers }}"
|
|
swift_object_workers: "{{ openstack_service_workers }}"
|
|
swift_proxy_server_workers: "{{ openstack_service_workers }}"
|
|
|
|
####################
|
|
# Keystone
|
|
####################
|
|
swift_ks_services:
|
|
- name: "swift"
|
|
type: "object-store"
|
|
description: "Openstack Object Storage"
|
|
endpoints:
|
|
- {'interface': 'internal', 'url': '{{ swift_internal_endpoint }}'}
|
|
- {'interface': 'public', 'url': '{{ swift_public_endpoint }}'}
|
|
|
|
swift_ks_users:
|
|
- project: "service"
|
|
user: "{{ swift_keystone_user }}"
|
|
password: "{{ swift_keystone_password }}"
|
|
role: "admin"
|
|
|
|
|
|
# FIXME(yoctozepto): These are copied from service-images-pull role.
|
|
# Remove when the Swift role is finally migrated to new style.
|
|
service_images_pull_retries: 3
|
|
service_images_pull_delay: 5
|