372ccd1bbd
The version of erlang we're using, while functional, is not recommended. This change updates our version of erlang for rabbitmq to be the recommended version by changing the pinned version of erlang. The apt package pinning meta dependency has been removed and put into the apt task file as an include role. To ensure a more uniform process for setting the version of erlang used with rabbitmq the new variable `rabbitmq_erlang_version_spec` has been added. This option has a default of "null" and is set by distro specific variables when applicable. Erlang version support matrix: https://www.rabbitmq.com/which-erlang.html Change-Id: Iced12d4533eec068bd11d8bd235d81308ef40427 Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
137 lines
4.5 KiB
YAML
137 lines
4.5 KiB
YAML
---
|
|
# Copyright 2014, Rackspace US, Inc.
|
|
#
|
|
# 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.
|
|
|
|
## APT Cache Options
|
|
cache_timeout: 600
|
|
|
|
# Set the package install state for distribution packages
|
|
# Options are 'present' and 'latest'
|
|
rabbitmq_package_state: "latest"
|
|
|
|
# Inventory group containing the hosts for the cluster
|
|
rabbitmq_host_group: "rabbitmq_all"
|
|
|
|
rabbitmq_primary_cluster_node: "{{ hostvars[groups[rabbitmq_host_group][0]]['ansible_hostname'] }}"
|
|
|
|
# Upgrading the RabbitMQ package requires shutting down the cluster. This variable makes upgrading
|
|
# the version an explicit action.
|
|
rabbitmq_upgrade: false
|
|
|
|
# If the user does not want to upgrade but needs to rerun the playbooks for any reason the
|
|
# upgrade/version state can be ignored by setting `rabbitmq_ignore_version_state=true`
|
|
rabbitmq_ignore_version_state: false
|
|
|
|
rabbitmq_package_url: "{{ _rabbitmq_package_url }}"
|
|
rabbitmq_package_version: "{{ _rabbitmq_package_version }}"
|
|
rabbitmq_release_version: "{{ _rabbitmq_release_version }}"
|
|
rabbitmq_package_sha256: "{{ _rabbitmq_package_sha256 }}"
|
|
rabbitmq_package_path: "{{ _rabbitmq_package_path }}"
|
|
|
|
rabbitmq_gpg_keys: "{{ _rabbitmq_gpg_keys }}"
|
|
|
|
# Set the URL for the RabbitMQ repository
|
|
rabbitmq_repo_url: "{{ _rabbitmq_repo_url }}"
|
|
|
|
# Set the repo information for the RabbitMQ repository
|
|
rabbitmq_repo: "{{ _rabbitmq_repo }}"
|
|
|
|
# Set the URL for the Erlang repository
|
|
rabbitmq_erlang_repo_url: "{{ _rabbitmq_erlang_repo_url }}"
|
|
|
|
# Set the repo information for the Erlang repository
|
|
rabbitmq_erlang_repo: "{{ _rabbitmq_erlang_repo }}"
|
|
|
|
# Set the elang version used on the deployment
|
|
rabbitmq_erlang_version_spec: "{{ _rabbitmq_erlang_version_spec | default(null) }}"
|
|
|
|
# Choose file, distro, external_repo for rabbitmq_install_method.
|
|
rabbitmq_install_method: "{{ _rabbitmq_install_method }}"
|
|
|
|
# Name of the rabbitmq cluster
|
|
rabbitmq_cluster_name: rabbitmq_cluster1
|
|
|
|
# Specify a partition recovery strategy (autoheal | pause_minority | ignore)
|
|
rabbitmq_cluster_partition_handling: pause_minority
|
|
|
|
# Rabbitmq open file limits
|
|
rabbitmq_ulimit: 65536
|
|
|
|
# Configure rabbitmq plugins
|
|
rabbitmq_plugins:
|
|
- name: rabbitmq_management
|
|
state: enabled
|
|
|
|
# RabbitMQ SSL support
|
|
rabbitmq_ssl_cert: /etc/rabbitmq/rabbitmq.pem
|
|
rabbitmq_ssl_key: /etc/rabbitmq/rabbitmq.key
|
|
rabbitmq_ssl_ca_cert: /etc/rabbitmq/rabbitmq-ca.pem
|
|
|
|
# Set rabbitmq_ssl_self_signed_regen to true if you want to generate a new
|
|
# SSL certificate for RabbitMQ when this playbook runs. You can also change
|
|
# the subject of the self-signed certificate here if you prefer.
|
|
rabbitmq_ssl_self_signed_regen: false
|
|
rabbitmq_ssl_self_signed_subject: "/C=US/ST=Texas/L=San Antonio/O=IT/CN={{ ansible_hostname }}"
|
|
|
|
# Define user-provided SSL certificates in:
|
|
# /etc/openstack_deploy/user_variables.yml
|
|
#rabbitmq_user_ssl_cert: <path to cert on ansible deployment host>
|
|
#rabbitmq_user_ssl_key: <path to cert on ansible deployment host>
|
|
#rabbitmq_user_ssl_ca_cert: <path to cert on ansible deployment host>
|
|
|
|
# RabbitMQ erlang VM parameters
|
|
rabbitmq_async_threads: 128
|
|
rabbitmq_process_limit: 1048576
|
|
|
|
# RabbitMQ collect statistics interval
|
|
rabbitmq_collect_statistics_interval: 5000
|
|
|
|
# RabbitMQ Management rates mode
|
|
rabbitmq_management_rates_mode: basic
|
|
|
|
# Precompile RabbitMQ with HiPE
|
|
rabbitmq_hipe_compile: False
|
|
|
|
# Disable non-TLS listeners
|
|
rabbitmq_disable_non_tls_listeners: False
|
|
|
|
# RabbitMQ policies
|
|
# Used to tune performance characteristics of OpenStack messaging
|
|
#
|
|
# Example override that uses HA queues only for telemetry and sets message
|
|
# expiry for RPC messages
|
|
#
|
|
# rabbitmq_policies:
|
|
# - name: "heat_rpc_expire"
|
|
# pattern: '^heat-engine-listener\\.'
|
|
# tags: "expires=3600000"
|
|
# priority: 1
|
|
# - name: "results_expire"
|
|
# pattern: '^results\\.'
|
|
# tags: "expires=3600000"
|
|
# priority: 1
|
|
# - name: "tasks_expire"
|
|
# pattern: '^results\\.'
|
|
# tags: "expires=3600000"
|
|
# priority: 1
|
|
# - name: "ha-notif"
|
|
# pattern: '^(event|metering|notifications)\.'
|
|
# tags: "ha-sync-mode=automatic"
|
|
# priority: 0
|
|
#
|
|
rabbitmq_policies:
|
|
- name: "HA"
|
|
pattern: '^(?!amq\.).*'
|
|
tags: "ha-mode=all"
|