Enable configuration of Designate's pools.yaml

This is necessary as the settings in this file are deployment
specific, so the defaults will never be correct.  For simplicity,
the enablement environment includes the sample pools.yaml content
from the Designate docs.  It can then be easily modified to match
the actual intended deployment environment.

Depends-On: https://review.openstack.org/580524
Change-Id: I84cc3b06ac77c723994be0f49960a93e0dbba0ad
This commit is contained in:
Ben Nemec 2018-07-05 21:02:12 +00:00
parent c5dc8ef19a
commit e025ebc0c4
4 changed files with 145 additions and 1 deletions

View File

@ -88,3 +88,47 @@ parameter_defaults:
NeutronPluginExtensions: qos,port_security,dns NeutronPluginExtensions: qos,port_security,dns
RpcPort: 31459 RpcPort: 31459
NotifyPort: 5672 NotifyPort: 5672
DesignatePools: |
- name: default
# The name is immutable. There will be no option to change the name after
# creation and the only way will to change it will be to delete it
# (and all zones associated with it) and recreate it.
description: Default Pool
attributes: {}
# List out the NS records for zones hosted within this pool
# This should be a record that is created outside of designate, that
# points to the public IP of the controller node.
ns_records:
- hostname: ns1-1.example.org.
priority: 1
# List out the nameservers for this pool. These are the actual BIND servers.
# We use these to verify changes have propagated to all nameservers.
nameservers:
- host: 127.0.0.1
port: 53
# List out the targets for this pool. For BIND there will be one
# entry for each BIND server, as we have to run rndc command on each server
targets:
- type: bind9
description: BIND9 Server 1
# List out the designate-mdns servers from which BIND servers should
# request zone transfers (AXFRs) from.
# This should be the IP of the controller node.
# If you have multiple controllers you can add multiple masters
# by running designate-mdns on them, and adding them here.
masters:
- host: 127.0.0.1
port: 5354
# BIND Configuration options
options:
host: 127.0.0.1
port: 53
rndc_host: 127.0.0.1
rndc_port: 953
rndc_key_file: /etc/rndc.key

View File

@ -13,6 +13,54 @@
# configuration values for other services to allow them to integrate with # configuration values for other services to allow them to integrate with
# Designate. # Designate.
parameter_defaults: parameter_defaults:
# The content for Designate's pools.yaml
# Mandatory. This parameter must be set by the user.
# Type: string
DesignatePools: |
- name: default
# The name is immutable. There will be no option to change the name after
# creation and the only way will to change it will be to delete it
# (and all zones associated with it) and recreate it.
description: Default Pool
attributes: {}
# List out the NS records for zones hosted within this pool
# This should be a record that is created outside of designate, that
# points to the public IP of the controller node.
ns_records:
- hostname: ns1-1.example.org.
priority: 1
# List out the nameservers for this pool. These are the actual BIND servers.
# We use these to verify changes have propagated to all nameservers.
nameservers:
- host: 127.0.0.1
port: 53
# List out the targets for this pool. For BIND there will be one
# entry for each BIND server, as we have to run rndc command on each server
targets:
- type: bind9
description: BIND9 Server 1
# List out the designate-mdns servers from which BIND servers should
# request zone transfers (AXFRs) from.
# This should be the IP of the controller node.
# If you have multiple controllers you can add multiple masters
# by running designate-mdns on them, and adding them here.
masters:
- host: 127.0.0.1
port: 5354
# BIND Configuration options
options:
host: 127.0.0.1
port: 53
rndc_host: 127.0.0.1
rndc_port: 953
rndc_key_file: /etc/rndc.key
# If True, enable the internal Neutron DNS server that provides name # If True, enable the internal Neutron DNS server that provides name
# resolution between VMs. This parameter has no effect if # resolution between VMs. This parameter has no effect if
# NeutronDhcpAgentDnsmasqDnsServers is set. # NeutronDhcpAgentDnsmasqDnsServers is set.

View File

@ -45,6 +45,9 @@ parameters:
description: The password for the Designate's database account. description: The password for the Designate's database account.
type: string type: string
hidden: true hidden: true
DesignatePools:
description: The content for Designate's pools.yaml
type: string
conditions: conditions:
designate_workers_zero: {equals : [{get_param: DesignateWorkers}, 0]} designate_workers_zero: {equals : [{get_param: DesignateWorkers}, 0]}
@ -72,7 +75,8 @@ outputs:
config_settings: config_settings:
map_merge: map_merge:
- get_attr: [DesignateBase, role_data, config_settings] - get_attr: [DesignateBase, role_data, config_settings]
- designate::db::database_connection: - tripleo::profile::base::designate::central::pools_file_content: {get_param: DesignatePools}
designate::db::database_connection:
make_url: make_url:
scheme: {get_param: [EndpointMap, MysqlInternal, protocol]} scheme: {get_param: [EndpointMap, MysqlInternal, protocol]}
username: designate username: designate

View File

@ -22,6 +22,54 @@ environments:
puppet/services/neutron-dhcp.yaml: puppet/services/neutron-dhcp.yaml:
parameters: parameters:
- NeutronEnableInternalDNS - NeutronEnableInternalDNS
puppet/services/designate-central.yaml:
parameters:
- DesignatePools
sample_values: sample_values:
NeutronPluginExtensions: qos,port_security,dns NeutronPluginExtensions: qos,port_security,dns
NeutronEnableInternalDNS: True NeutronEnableInternalDNS: True
DesignatePools: |-
|
- name: default
# The name is immutable. There will be no option to change the name after
# creation and the only way will to change it will be to delete it
# (and all zones associated with it) and recreate it.
description: Default Pool
attributes: {}
# List out the NS records for zones hosted within this pool
# This should be a record that is created outside of designate, that
# points to the public IP of the controller node.
ns_records:
- hostname: ns1-1.example.org.
priority: 1
# List out the nameservers for this pool. These are the actual BIND servers.
# We use these to verify changes have propagated to all nameservers.
nameservers:
- host: 127.0.0.1
port: 53
# List out the targets for this pool. For BIND there will be one
# entry for each BIND server, as we have to run rndc command on each server
targets:
- type: bind9
description: BIND9 Server 1
# List out the designate-mdns servers from which BIND servers should
# request zone transfers (AXFRs) from.
# This should be the IP of the controller node.
# If you have multiple controllers you can add multiple masters
# by running designate-mdns on them, and adding them here.
masters:
- host: 127.0.0.1
port: 5354
# BIND Configuration options
options:
host: 127.0.0.1
port: 53
rndc_host: 127.0.0.1
rndc_port: 953
rndc_key_file: /etc/rndc.key