
the previous group build outs for the osa user config were statically defined. This change makes all of them dynamic which gives a user the ability to add or remove hosts from the basic inventory as they need. Change-Id: I1eae7de6d62435e8222ec80b05b6c0a060c5bb69 Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
207 lines
5.1 KiB
YAML
207 lines
5.1 KiB
YAML
---
|
|
cidr_networks:
|
|
container: 10.0.236.0/22
|
|
tunnel: 10.0.240.0/22
|
|
storage: 10.0.244.0/22
|
|
flat: 10.0.248.0/22
|
|
|
|
used_ips:
|
|
- "10.0.236.0,10.0.236.200"
|
|
- "10.0.240.0,10.0.240.200"
|
|
- "10.0.244.0,10.0.244.200"
|
|
- "10.0.248.0,10.0.248.200"
|
|
|
|
global_overrides:
|
|
internal_lb_vip_address: "{{ internal_lb_vip_address | default(hostvars[groups['loadbalancer_hosts'][0]]['server_networks']['mgmt']['address'].split('/')[0]) }}"
|
|
external_lb_vip_address: "{{ external_lb_vip_address | default(hostvars[groups['loadbalancer_hosts'][0]]['server_vm_fixed_addr']) }}"
|
|
tunnel_bridge: "br-vxlan"
|
|
management_bridge: "br-mgmt"
|
|
provider_networks:
|
|
- network:
|
|
container_bridge: "br-mgmt"
|
|
container_type: "veth"
|
|
container_interface: "eth1"
|
|
ip_from_q: "container"
|
|
type: "raw"
|
|
group_binds:
|
|
- all_containers
|
|
- hosts
|
|
is_container_address: true
|
|
is_ssh_address: true
|
|
- network:
|
|
container_bridge: "br-vxlan"
|
|
container_type: "veth"
|
|
container_interface: "eth10"
|
|
ip_from_q: "tunnel"
|
|
type: "vxlan"
|
|
range: "1:1000"
|
|
net_name: "vxlan"
|
|
group_binds:
|
|
- neutron_linuxbridge_agent
|
|
- network:
|
|
container_bridge: "br-flat"
|
|
container_type: "veth"
|
|
container_interface: "eth12"
|
|
type: "flat"
|
|
net_name: "flat"
|
|
group_binds:
|
|
- neutron_linuxbridge_agent
|
|
- utility_all
|
|
- network:
|
|
container_bridge: "br-vlan"
|
|
container_type: "veth"
|
|
container_interface: "eth11"
|
|
type: "vlan"
|
|
range: "1:1"
|
|
net_name: "vlan"
|
|
group_binds:
|
|
- neutron_linuxbridge_agent
|
|
- network:
|
|
container_bridge: "br-storage"
|
|
container_type: "veth"
|
|
container_interface: "eth2"
|
|
ip_from_q: "storage"
|
|
type: "raw"
|
|
group_binds:
|
|
- glance_api
|
|
- cinder_api
|
|
- cinder_volume
|
|
- nova_compute
|
|
- swift_proxy
|
|
swift:
|
|
part_power: 8
|
|
storage_network: 'br-storage'
|
|
replication_network: 'br-storage'
|
|
drives:
|
|
- name: disk1
|
|
- name: disk2
|
|
- name: disk3
|
|
mount_point: /srv
|
|
storage_policies:
|
|
- policy:
|
|
name: default
|
|
index: 0
|
|
default: True
|
|
|
|
###
|
|
### Anchors
|
|
###
|
|
cinder_block: &cinder_block
|
|
{% for host in groups['cinder_hosts'] %}
|
|
{{ hostvars[host]['server_hostname'] }}:
|
|
ip: {{ hostvars[host]['server_networks']['mgmt']['address'].split('/')[0] }}
|
|
container_vars:
|
|
cinder_backends:
|
|
limit_container_types: cinder_volume
|
|
lvm:
|
|
volume_group: cinder-volumes
|
|
volume_driver: cinder.volume.drivers.lvm.LVMVolumeDriver
|
|
volume_backend_name: LVM_iSCSI
|
|
iscsi_ip_address: {{ hostvars[host]['server_networks']['storage']['address'].split('/')[0] }}
|
|
{% endfor %}
|
|
|
|
|
|
compute_block: &compute_block
|
|
{% for host in groups['compute_hosts'] %}
|
|
{{ hostvars[host]['server_hostname'] }}:
|
|
ip: {{ hostvars[host]['server_networks']['mgmt']['address'].split('/')[0] }}
|
|
{% endfor %}
|
|
|
|
|
|
infra_block: &infra_block
|
|
{% for host in groups['infra_hosts'] %}
|
|
{{ hostvars[host]['server_hostname'] }}:
|
|
ip: {{ hostvars[host]['server_networks']['mgmt']['address'].split('/')[0] }}
|
|
{% endfor %}
|
|
|
|
|
|
loadbalancer_block: &loadbalancer_block
|
|
{% for host in groups['loadbalancer_hosts'] %}
|
|
{{ hostvars[host]['server_hostname'] }}:
|
|
ip: {{ hostvars[host]['server_networks']['mgmt']['address'].split('/')[0] }}
|
|
{% endfor %}
|
|
|
|
|
|
log_block: &log_block
|
|
{% for host in groups['log_hosts'] %}
|
|
{{ hostvars[host]['server_hostname'] }}:
|
|
ip: {{ hostvars[host]['server_networks']['mgmt']['address'].split('/')[0] }}
|
|
{% endfor %}
|
|
|
|
|
|
swift_block: &swift_block
|
|
{% for host in groups['swift_hosts'] %}
|
|
{{ hostvars[host]['server_hostname'] }}:
|
|
ip: {{ hostvars[host]['server_networks']['mgmt']['address'].split('/')[0] }}
|
|
{% endfor %}
|
|
|
|
|
|
###
|
|
### Infrastructure
|
|
###
|
|
|
|
# galera, memcache, rabbitmq, utility
|
|
shared-infra_hosts: *infra_block
|
|
|
|
# repository (apt cache, python packages, etc)
|
|
repo-infra_hosts: *infra_block
|
|
|
|
# rsyslog server
|
|
log_hosts: *log_block
|
|
|
|
# load balancer
|
|
haproxy_hosts: *loadbalancer_block
|
|
|
|
|
|
###
|
|
### OpenStack
|
|
###
|
|
|
|
# Legacy infra hosts
|
|
os-infra_hosts: *infra_block
|
|
|
|
# keystone
|
|
identity_hosts: *infra_block
|
|
|
|
# cinder api services
|
|
storage-infra_hosts: *infra_block
|
|
|
|
# glance
|
|
image_hosts: *infra_block
|
|
|
|
# nova api, conductor, etc services
|
|
compute-infra_hosts: *infra_block
|
|
|
|
# heat
|
|
orchestration_hosts: *infra_block
|
|
|
|
# horizon
|
|
dashboard_hosts: *infra_block
|
|
|
|
# neutron server, agents (L3, etc)
|
|
network_hosts: *infra_block
|
|
|
|
# ceilometer (telemetry data collection)
|
|
metering-infra_hosts: *infra_block
|
|
|
|
# aodh (telemetry alarm service)
|
|
metering-alarm_hosts: *infra_block
|
|
|
|
# gnocchi (telemetry metrics storage)
|
|
metrics_hosts: *infra_block
|
|
|
|
# ceilometer compute agent (telemetry data collection)
|
|
metering-compute_hosts: *compute_block
|
|
|
|
# nova hypervisors
|
|
compute_hosts: *compute_block
|
|
|
|
# cinder storage host (LVM-backed)
|
|
storage_hosts: *cinder_block
|
|
|
|
# swift storage hosts
|
|
swift_hosts: *swift_block
|
|
|
|
# swift infra hosts
|
|
swift-proxy_hosts: *infra_block
|