This guide installs OpenStack Designate on a Linux host via package manager.
| Component | Debian/Ubuntu | RHEL/Rocky/AlmaLinux |
|---|---|---|
| API Server | designate-api |
openstack-designate-api |
| Central Service | designate-central |
openstack-designate-central |
| Worker | designate-worker |
openstack-designate-worker |
| Producer | designate-producer |
openstack-designate-producer |
| mDNS | designate-mdns |
openstack-designate-mdns |
| Sink (optional) | designate-sink |
openstack-designate-sink |
| Client | python3-designateclient |
python3-designateclient |
Install database client and Python dependencies:
Debian/Ubuntu:
sudo apt update
sudo apt install -y python3-pip python3-venv python3-dev \
python3-pymysql python3-mysqldb \
rabbitmq-server mariadb-server
RHEL/Rocky/AlmaLinux:
sudo dnf install -y python3-pip python3-devel \
python3-PyMySQL python3-mysql \
rabbitmq-server mariadb-server
Debian/Ubuntu:
sudo apt install -y designate-api designate-central designate-worker \
designate-producer designate-mdns designate-sink \
python3-designateclient
RHEL/Rocky/AlmaLinux:
sudo dnf install -y openstack-designate-api openstack-designate-central \
openstack-designate-worker openstack-designate-producer \
openstack-designate-mdns openstack-designate-sink \
python3-designateclient
Edit /etc/designate/designate.conf:
[DEFAULT]
transport_url = rabbit://openstack:RABBIT_PASSWORD@controller:5672/
auth_strategy = keystone
[service:api]
listen = 0.0.0.0:9001
api_base_uri = http://controller:9001/
[storage:sqlalchemy]
connection = mysql+pymysql://designate:DESIGNATE_DB_PASSWORD@controller/designate
[keystone_authtoken]
www_authenticate_uri = http://controller:5000/
auth_url = http://controller:5000/
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = designate
password = DESIGNATE_KEY_PASSWORD
sudo designate-manage database create
sudo designate-manage domain create 1000 example.com.
Debian/Ubuntu:
sudo systemctl enable designate-api designate-central designate-worker \
designate-producer designate-mdns designate-sink
sudo systemctl start designate-api designate-central designate-worker \
designate-producer designate-mdns designate-sink
RHEL/Rocky/AlmaLinux:
sudo systemctl enable designate-api designate-central designate-worker \
designate-producer designate-mdns designate-sink
sudo systemctl start designate-api designate-central designate-worker \
designate-producer designate-mdns designate-sink
Check service status:
systemctl status designate-api
systemctl status designate-central
Test API endpoint:
curl http://localhost:9001/v2/ping
List zones (requires authentication):
openstack zone list
See OpenStack Designate Configuration for configuration guidance.
See OpenStack Designate Security for hardening guidance.
OpenStack Designate is complex enterprise software. We provide specialized support for Designate deployments, including multi-tenant configurations, API integrations, and production hardening. Reach out to office@linux-server-admin.com or visit our contact page.