Radosław Piliszek cbb567cb86 Add ability to retry image pulling
Sometimes, the registries may intermittently fail to deliver the
images. This is often seen in the CI, though it also happens with
production deployments, even those with internal registries and/or
registry mirrors - due to sheer load when trying to pull the
images from many hosts.

This patchs adds two new vars to control retry behaviour.
The default has been set to make users happier by default. :-)

Change-Id: I81ad7d8642654f8474f11084c6934aab40243d35
2021-08-19 18:38:59 +00:00

102 lines
3.9 KiB
YAML

---
project_name: "swift"
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 }}"
swift_api_external:
enabled: "{{ enable_swift }}"
mode: "http"
external: true
port: "{{ swift_proxy_server_listen_port }}"
####################
# Docker
####################
swift_install_type: "{{ kolla_install_type }}"
swift_tag: "{{ openstack_tag }}"
swift_proxy_server_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ swift_install_type }}-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 }}/{{ kolla_base_distro }}-{{ swift_install_type }}-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 }}/{{ kolla_base_distro }}-{{ swift_install_type }}-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 }}/{{ kolla_base_distro }}-{{ swift_install_type }}-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 }}/{{ kolla_base_distro }}-{{ swift_install_type }}-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 }}/{{ kolla_base_distro }}-{{ swift_install_type }}-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_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: []
####################
# Keystone
####################
swift_ks_services:
- name: "swift"
type: "object-store"
description: "Openstack Object Storage"
endpoints:
- {'interface': 'admin', 'url': '{{ swift_admin_endpoint }}'}
- {'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