Two pool designate is not working

Bug #1843255 reported by YG Kumar
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Designate
New
Undecided
Unassigned

Bug Description

Hi,

We have a OSA rocky 18.1.19 setup. I have configure two pools in pools.yaml. But when creating a zone targeting a specific pool, I am receiving the error "multiple_pools_found.

pools.yaml
------------
- name: default
  description: Default BIND9 Pool
  attributes: {}
  nameservers:
    - host: 172.29.236.18
        port: 53
    - host: 172.29.236.19
        port: 53
  ns_records:
    - hostname: dns1.
        priority: 1
    - hostname: dns2.
        priority: 1
  targets:
      - type: bind9
        description: BIND9 Server 1
        masters:
        - host: 172.29.236.103
            port: 5354
        options:
            host: 172.29.236.18
            port: 53
            rndc_host: 172.29.236.18
            rndc_port: 953
            rndc_key_file: /etc/designate/rndc.key

      - type: bind9
        description: BIND9 Server 1
        masters:
        - host: 172.29.236.103
            port: 5354
        options:
            host: 172.29.236.19
            port: 53
            rndc_host: 172.29.236.19
            rndc_port: 953
            rndc_key_file: /etc/designate/rndc.key

- name: standard_pool
  description: The standard pool

  attributes:
    service_tier: exclusive

  ns_records:
    - hostname: dns1.
      priority: 1

  nameservers:
    - host: 172.29.236.19
      port: 53

  targets:
    - type: bind9
      description: bind9 golden master

      masters:
        - host: 172.29.236.103
          port: 5354

      options:
        host: 172.29.236.19
        port: 53
        rndc_host: 172.29.236.19
        rndc_port: 953
        rndc_key_file: /etc/designate.rndc.key
-----------------------------

designate.conf
-----------------
[DEFAULT]
use_journal = True
# Disable stderr logging
use_stderr = False

########################
## General Configuration
########################
# Show debugging output in logs (sets DEBUG log level output)
debug = True

# Top-level directory for maintaining designate's state
#state_path = /var/lib/designate

# Root helper
root_helper = sudo designate-rootwrap /etc/designate/rootwrap.conf

# Which networking API to use, Defaults to neutron
#network_api = neutron

## RabbitMQ RPC
transport_url = rabbit://designate-rpc:029169f646e03c98108494ac8@172.29.239.237:5671,designate-rpc:029169f646e03c98108494ac8@172.29.237.168:5671//designate?ssl=1
# RabbitMQ Config
[oslo_messaging_rabbit]
ssl = True
rabbit_notification_exchange = designate
rabbit_notification_topic = notifications

[oslo_messaging_notifications]
transport_url = rabbit://designate-rpc:029169f646e03c98108494ac8@172.29.239.237:5671,designate-rpc:029169f646e03c98108494ac8@172.29.237.168:5671//designate?ssl=1
########################
## Service Configuration
########################
#-----------------------
# Central Service
#-----------------------
[service:central]
# Number of central worker processes to spawn
#workers = None

# Number of central greenthreads to spawn
#threads = 1000

# Maximum domain name length
#max_domain_name_len = 255

# Maximum recordset name length
#max_recordset_name_len = 255

# Minimum TTL
#min_ttl = None

# The name of the default pool
default_pool_id = '794ccc2c-d751-44fe-b57f-8894c9f5c842'
scheduler_filters = attribute
## Managed resources settings

# Email to use for managed resources like domains created by the FloatingIP API
#managed_resource_email = <email address hidden>.

# Tenant ID to own all managed resources - like auto-created records etc.
managed_resource_tenant_id = e02428b1700247b98ad1d563133f6174

#-----------------------
# API Service
#-----------------------
[service:api]
# Number of api worker processes to spawn
#workers = None

# Number of api greenthreads to spawn
#threads = 1000

# Enable host request headers
enable_host_header = True

# The base uri used in responses
#api_base_uri = 'http://127.0.0.1:9001/'

# Address to bind the API server
#api_host = 0.0.0.0

# Port to bind the API server
#api_port = 9001

# Maximum line size of message headers to be accepted. max_header_line may
# need to be increased when using large tokens (typically those generated by
# the Keystone v3 API with big service catalogs).
#max_header_line = 16384

# Authentication strategy to use - can be either "noauth" or "keystone"
auth_strategy = keystone

# Enable API Version 2
enable_api_v2 = True

# Enabled API Version 2 extensions
enabled_extensions_v2 = quotas, reports

# Default per-page limit for the V2 API, a value of None means show all results
# by default
#default_limit_v2 = 20

# Max page size in the V2 API
#max_limit_v2 = 1000

# Enable Admin API (experimental)
enable_api_admin = False

# Enabled Admin API extensions
# Can be one or more of : reports, quotas, counts, tenants, zones
# zone export is in zones extension
#enabled_extensions_admin =

# Default per-page limit for the Admin API, a value of None means show all results
# by default
#default_limit_admin = 20

# Max page size in the Admin API
#max_limit_admin = 1000

# Show the pecan HTML based debug interface (v2 only)
# This is only useful for development, and WILL break python-designateclient
# if an error occurs
#pecan_debug = False

#-----------------------
# Keystone Middleware
#-----------------------
[keystone_authtoken]

insecure = False
auth_type = password
auth_url = http://wtl-int.example.cloud:5000/v3
www_authenticate_uri = http://wtl-int.example.cloud:5000
project_domain_id = default
user_domain_id = default
project_name = service
username = designate
password = 25aa47df214106b76

memcached_servers = 172.29.236.208:11211,172.29.239.206:11211

#-----------------------
# Sink Service
#-----------------------
[service:sink]
# List of notification handlers to enable, configuration of these needs to
# correspond to a [handler:my_driver] section below or else in the config
# Can be one or more of : nova_fixed, neutron_floatingip
#enabled_notification_handlers =

#-----------------------
# mDNS Service
#-----------------------
[service:mdns]
# Number of mdns worker processes to spawn
#workers = None

# Number of mdns greenthreads to spawn
#threads = 1000

# mDNS Bind Host
#host = 0.0.0.0

# mDNS Port Number
#port = 5354

# mDNS TCP Backlog
#tcp_backlog = 100

# mDNS TCP Receive Timeout
#tcp_recv_timeout = 0.5

# Enforce all incoming queries (including AXFR) are TSIG signed
#query_enforce_tsig = False

# Send all traffic over TCP
#all_tcp = False

# Maximum message size to emit
#max_message_size = 65535

#-----------------------
# Agent Service
#-----------------------
[service:agent]
#workers = None
#host = 0.0.0.0
#port = 5358
#tcp_backlog = 100
#allow_notify = 127.0.0.1
#masters = 127.0.0.1:5354
#backend_driver = fake
#transfer_source = None
#notify_delay = 0

#-----------------------
# Producer Service
#-----------------------
[service:producer]
# Number of Zone Manager worker processes to spawn
#workers = None

# Number of Zone Manager greenthreads to spawn
#threads = 1000

# List of Zone Manager tasks to enable, a value of None will enable all tasks.
# Can be one or more of: periodic_exists
#enabled_tasks = None

# Whether to allow synchronous zone exports
#export_synchronous = True

#------------------------
# Deleted domains purging
#------------------------
[producer_task:domain_purge]
# How frequently to purge deleted domains, in seconds
#interval = 3600 # 1h

# How many records to be deleted on each run
#batch_size = 100

# How old deleted records should be (deleted_at) to be purged, in seconds
#time_threshold = 604800 # 7 days

#------------------------
# Delayed zones NOTIFY
#------------------------
[producer_task:delayed_notify]
# How frequently to scan for zones pending NOTIFY, in seconds
#interval = 5

#------------------------
# Worker Periodic Recovery
#------------------------
[producer_task:worker_periodic_recovery]
# How frequently to scan for zones in ERROR, in seconds
#interval = 120

#-----------------------
# Pool Manager Service
#-----------------------
[service:pool_manager]
# Number of Pool Manager worker processes to spawn
#workers = None

# Number of Pool Manager greenthreads to spawn
#threads = 1000

# The ID of the pool managed by this instance of the Pool Manager
pool_id = 794ccc2c-d751-44fe-b57f-8894c9f5c842

# The percentage of servers requiring a successful update for a domain change
# to be considered active
#threshold_percentage = 100

# The time to wait for a response from a server
#poll_timeout = 30

# The time between retrying to send a request and waiting for a response from a
# server
#poll_retry_interval = 15

# The maximum number of times to retry sending a request and wait for a
# response from a server
#poll_max_retries = 10

# The time to wait before sending the first request to a server
#poll_delay = 5

# Enable the recovery thread
#enable_recovery_timer = True

# The time between recovering from failures
#periodic_recovery_interval = 120

# Enable the sync thread
#enable_sync_timer = True

# The time between synchronizing the servers with storage
#periodic_sync_interval = 1800

# Zones Updated within last N seconds will be syncd. Use None to sync all zones
#periodic_sync_seconds = None

# Perform multiple update attempts during periodic_sync
#periodic_sync_max_attempts = 3
#periodic_sync_retry_interval = 30

# The cache driver to use
#cache_driver = memcache

#-----------------------
# Worker Service
#-----------------------
[service:worker]
# Whether to send events to worker instead of Pool Manager
enabled = True

# Number of Worker processes to spawn
#workers = None

# Number of Worker greenthreads to spawn
#threads = 1000

# The percentage of servers requiring a successful update for a zone change
# to be considered active
#threshold_percentage = 100

# The time to wait for a response from a server
#poll_timeout = 30

# The time between retrying to send a request and waiting for a response from a
# server
#poll_retry_interval = 15

# The maximum number of times to retry sending a request and wait for a
# response from a server
#poll_max_retries = 10

# The time to wait before sending the first request to a server
#poll_delay = 5

# Whether to allow worker to send NOTIFYs. NOTIFY requests to mdns will noop
notify = True

###################################
## Pool Manager Cache Configuration
###################################
#-----------------------
# SQLAlchemy Pool Manager Cache
#-----------------------
[pool_manager_cache:sqlalchemy]
#connection=sqlite:///$state_path/designate_pool_manager.sqlite
#connection_debug = 100
#connection_trace = False
#sqlite_synchronous = True
#idle_timeout = 3600
#max_retries = 10
#retry_interval = 10

#-----------------------
# Memcache Pool Manager Cache
#-----------------------
[pool_manager_cache:memcache]
#memcached_servers = None
#expiration = 3600

##############
## Network API
##############
[network_api:neutron]
# Comma separated list of values, formatted "<name>|<neutron_uri>"
#endpoints = RegionOne|http://localhost:9696
endpoint_type = internalURL
#timeout = 30
#admin_username = designate
#admin_password = designate
#admin_tenant_name = designate
#auth_url = http://localhost:5000/v2.0
#insecure = False
#auth_strategy = keystone
#ca_certificates_file =

########################
## Storage Configuration
########################
#-----------------------
# SQLAlchemy Storage
#-----------------------
[storage:sqlalchemy]
connection = mysql+pymysql://designate:<email address hidden>/designate?charset=utf8
#connection_debug = 0
#connection_trace = False
#sqlite_synchronous = True
#idle_timeout = 3600
#max_retries = 10
#retry_interval = 10

########################
## Handler Configuration
########################
#-----------------------
# Nova Fixed Handler
#-----------------------
[handler:nova_fixed]
# Domain ID of domain to create records in. Should be pre-created
#domain_id =
#notification_topics = notifications
#control_exchange = 'nova'
##Following https://docs.openstack.org/releasenotes/designate/pike.html#critical-issues
#formatv4 = '%(octet0)s-%(octet1)s-%(octet2)s-%(octet3)s.%(zone)s'
#formatv4 = '%(hostname)s.%(project)s.%(zone)s'
#formatv4 = '%(hostname)s.%(zone)s'
#formatv6 = '%(hostname)s.%(project)s.%(zone)s'
#formatv6 = '%(hostname)s.%(zone)s'

#------------------------
# Neutron Floating Handler
#------------------------
[handler:neutron_floatingip]
# Domain ID of domain to create records in. Should be pre-created
#domain_id =
#notification_topics = notifications
#control_exchange = 'neutron'
##Following https://docs.openstack.org/releasenotes/designate/pike.html#critical-issues
#formatv4 = '%(octet0)s-%(octet1)s-%(octet2)s-%(octet3)s.%(zone)s'
#formatv4 = '%(hostname)s.%(project)s.%(zone)s'
#formatv4 = '%(hostname)s.%(zone)s'
#formatv6 = '%(hostname)s.%(project)s.%(zone)s'
#formatv6 = '%(hostname)s.%(zone)s'

#############################
## Agent Backend Configuration
#############################
[backend:agent:bind9]
#rndc_host = 127.0.0.1
#rndc_port = 953
#rndc_config_file = /etc/rndc.conf
#rndc_key_file = /etc/rndc.key
#zone_file_path = $state_path/zones
#query_destination = 127.0.0.1
#
[backend:agent:denominator]
#name = dynect
#config_file = /etc/denominator.conf

########################
## Library Configuration
########################
[oslo_concurrency]
# Path for Oslo Concurrency to store lock files, defaults to the value
# of the state_path setting.
#lock_path = $state_path

########################
## Coordination
########################
[coordination]
# URL for the coordination backend to use.
#backend_url = kazoo://127.0.0.1/

########################
## Hook Points
########################
# Hook Points are enabled when added to the config and there has been
# a package that provides the corresponding named designate.hook_point
# entry point.

# [hook_point:name_of_hook_point]
# some_param_for_hook = 42
# Hooks can be disabled in the config
# enabled = False

# Hook can also be applied to the import path when the hook has not
# been given an explicit name. The name is created from the hook
# target function / method:
#
# name = '%s.%s' % (func.__module__, func.__name__)

# [hook_point:designate.api.v2.controllers.zones.get_one]

------------------------

I have attached the central, api logs as well.

Revision history for this message
YG Kumar (ygk-kmr) wrote :
Revision history for this message
YG Kumar (ygk-kmr) wrote :
information type: Public → Private
description: updated
description: updated
YG Kumar (ygk-kmr)
information type: Private → Public
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.