fb9c2da977
This patch moves the responsibility of incrementing the serial on a zone from central to the producer. This also means that NOTIFY is triggered by the producer after the serial has been incremented. The advantage of this approach is that we can now batch requests which means less work for the DNS servers, and it removes the risk of race-conditions when updating the serial. Finally, the producer is sharded and is easy to scale which means that this approach should scale well with many zones. The disadvantage is that it may take up to 5 seconds longer for the DNS record to be updated on the DNS server. This can be lowered by increasing the frequency of the task that is responsible for incrementing the serial. Depends-On: https://review.opendev.org/#/c/871266/ Change-Id: I5e9733abaaa40c874e1d80d7b57e563df0f12cee
134 lines
5.2 KiB
INI
134 lines
5.2 KiB
INI
[metadata]
|
|
name = designate
|
|
description = DNS as a Service
|
|
long_description = file: README.rst
|
|
|
|
author = OpenStack
|
|
author_email = openstack-discuss@lists.openstack.org
|
|
url = https://docs.openstack.org/designate/latest/
|
|
python_requires = >=3.8
|
|
classifiers =
|
|
Environment :: OpenStack
|
|
Environment :: No Input/Output (Daemon)
|
|
Intended Audience :: Information Technology
|
|
Intended Audience :: System Administrators
|
|
License :: OSI Approved :: Apache Software License
|
|
Operating System :: POSIX :: Linux
|
|
Programming Language :: Python
|
|
Programming Language :: Python :: Implementation :: CPython
|
|
Programming Language :: Python :: 3 :: Only
|
|
Programming Language :: Python :: 3
|
|
Programming Language :: Python :: 3.8
|
|
Programming Language :: Python :: 3.10
|
|
Topic :: Internet :: Name Service (DNS)
|
|
|
|
[files]
|
|
packages =
|
|
designate
|
|
data_files =
|
|
etc/designate =
|
|
etc/designate/api-paste.ini
|
|
etc/designate/rootwrap.conf.sample
|
|
etc/designate/rootwrap.d = etc/designate/rootwrap.d/*
|
|
|
|
[entry_points]
|
|
oslo.config.opts =
|
|
designate.conf = designate.conf.opts:list_opts
|
|
|
|
|
|
oslo.config.opts.defaults =
|
|
designate.conf = designate.common.config:set_defaults
|
|
|
|
oslo.policy.policies =
|
|
designate = designate.common.policies:list_rules
|
|
|
|
oslo.policy.enforcer =
|
|
designate = designate.policy:get_enforcer
|
|
|
|
console_scripts =
|
|
designate-rootwrap = oslo_rootwrap.cmd:main
|
|
designate-api = designate.cmd.api:main
|
|
designate-central = designate.cmd.central:main
|
|
designate-manage = designate.cmd.manage:main
|
|
designate-mdns = designate.cmd.mdns:main
|
|
designate-sink = designate.cmd.sink:main
|
|
designate-agent = designate.cmd.agent:main
|
|
designate-worker = designate.cmd.worker:main
|
|
designate-producer = designate.cmd.producer:main
|
|
designate-status = designate.cmd.status:main
|
|
|
|
|
|
designate.api.admin.extensions =
|
|
reports = designate.api.admin.controllers.extensions.reports:ReportsController
|
|
quotas = designate.api.admin.controllers.extensions.quotas:QuotasController
|
|
zones = designate.api.admin.controllers.extensions.zones:ZonesController
|
|
|
|
designate.storage =
|
|
sqlalchemy = designate.storage.impl_sqlalchemy:SQLAlchemyStorage
|
|
|
|
designate.notification.handler =
|
|
fake = designate.notification_handler.fake:FakeHandler
|
|
nova_fixed = designate.notification_handler.nova:NovaFixedHandler
|
|
neutron_floatingip = designate.notification_handler.neutron:NeutronFloatingHandler
|
|
|
|
designate.backend =
|
|
bind9 = designate.backend.impl_bind9:Bind9Backend
|
|
designate = designate.backend.impl_designate:DesignateBackend
|
|
pdns4 = designate.backend.impl_pdns4:PDNS4Backend
|
|
dynect = designate.backend.impl_dynect:DynECTBackend
|
|
akamai_v2 = designate.backend.impl_akamai_v2:AkamaiBackend
|
|
nsd4 = designate.backend.impl_nsd4:NSD4Backend
|
|
infoblox = designate.backend.impl_infoblox:InfobloxBackend
|
|
fake = designate.backend.impl_fake:FakeBackend
|
|
agent = designate.backend.agent:AgentPoolBackend
|
|
ns1 = designate.backend.impl_ns1:NS1Backend
|
|
|
|
designate.backend.agent_backend =
|
|
bind9 = designate.backend.agent_backend.impl_bind9:Bind9Backend
|
|
knot2 = designate.backend.agent_backend.impl_knot2:Knot2Backend
|
|
djbdns = designate.backend.agent_backend.impl_djbdns:DjbdnsBackend
|
|
denominator = designate.backend.agent_backend.impl_denominator:DenominatorBackend
|
|
fake = designate.backend.agent_backend.impl_fake:FakeBackend
|
|
gdnsd = designate.backend.agent_backend.impl_gdnsd:GdnsdBackend
|
|
msdns = designate.backend.agent_backend.impl_msdns:MSDNSBackend
|
|
|
|
designate.network_api =
|
|
fake = designate.network_api.fake:FakeNetworkAPI
|
|
neutron = designate.network_api.neutron:NeutronNetworkAPI
|
|
|
|
designate.quota =
|
|
noop = designate.quota.impl_noop:NoopQuota
|
|
storage = designate.quota.impl_storage:StorageQuota
|
|
|
|
designate.scheduler.filters =
|
|
fallback = designate.scheduler.filters.fallback_filter:FallbackFilter
|
|
attribute = designate.scheduler.filters.attribute_filter:AttributeFilter
|
|
random = designate.scheduler.filters.random_filter:RandomFilter
|
|
pool_id_attribute = designate.scheduler.filters.pool_id_attribute_filter:PoolIDAttributeFilter
|
|
default_pool = designate.scheduler.filters.default_pool_filter:DefaultPoolFilter
|
|
in_doubt_default_pool = designate.scheduler.filters.in_doubt_default_pool_filter:InDoubtDefaultPoolFilter
|
|
|
|
designate.manage =
|
|
database = designate.manage.database:DatabaseCommands
|
|
pool = designate.manage.pool:PoolCommands
|
|
tlds = designate.manage.tlds:TLDCommands
|
|
|
|
designate.producer_tasks =
|
|
zone_purge = designate.producer.tasks:DeletedZonePurgeTask
|
|
periodic_exists = designate.producer.tasks:PeriodicExistsTask
|
|
periodic_secondary_refresh = designate.producer.tasks:PeriodicSecondaryRefreshTask
|
|
delayed_notify = designate.producer.tasks:PeriodicGenerateDelayedNotifyTask
|
|
increment_serial = designate.producer.tasks:PeriodicIncrementSerialTask
|
|
worker_periodic_recovery = designate.producer.tasks:WorkerPeriodicRecovery
|
|
|
|
designate.heartbeat_emitter =
|
|
noop = designate.heartbeat_emitter:NoopEmitter
|
|
rpc = designate.heartbeat_emitter:RpcEmitter
|
|
|
|
designate.notification.plugin =
|
|
default = designate.notifications:Default
|
|
audit = designate.notifications:Audit
|
|
|
|
wsgi_scripts =
|
|
designate-api-wsgi = designate.api.wsgi:init_application
|