blob: c07a44d90163d3d82aa27ad8e3d3ad13a0266532 [file] [log] [blame]
Pavel Cizinsky82361442016-11-25 14:26:47 +01001
Aleš Komárek53c944b2017-02-06 14:08:15 +01002=================
3Designate formula
4=================
5
6Designate provides DNSaaS services for OpenStack.
7
8Sample pillars
9==============
Pavel Cizinsky82361442016-11-25 14:26:47 +010010
Mykyta Karpin8bda8df2017-06-08 14:48:55 +030011For Designate with BIND9 local backend:
12
Pavel Cizinsky82361442016-11-25 14:26:47 +010013.. code:: yaml
14
Mykyta Karpin8bda8df2017-06-08 14:48:55 +030015 designate:
16 server:
17 enabled: true
18 region: RegionOne
19 domain_id: 5186883b-91fb-4891-bd49-e6769234a8fc
20 version: ocata
21 backend:
22 bind9:
23 rndc_key: 4pc+X4PDqb2q+5o72dISm72LM1Ds9X2EYZjqg+nmsS7FhdTwzFFY8l/iEDmHxnyjkA33EQC8H+z0fLLBunoitw==
24 rndc_algorithm: hmac-sha512
Mykyta Karpinb2519312017-08-08 13:24:22 +030025 api:
26 base_uri: 'http://127.0.0.1:9001'
Mykyta Karpin96a3f432017-12-19 14:17:08 +020027 admin_api:
28 enabled: true
29 enabled_extensions_admin: quotas
Mykyta Karpin8bda8df2017-06-08 14:48:55 +030030 bind:
31 api:
32 address: 127.0.0.1
33 database:
34 engine: mysql
35 host: 127.0.0.1
36 port: 3306
37 name:
38 main_database: designate
39 pool_manager: designate_pool_manager
40 user: designate
41 password: passw0rd
42 identity:
43 engine: keystone
44 host: 127.0.0.1
45 port: 35357
46 tenant: service
47 user: designate
48 password: passw0rd
Ivan Udovichenkoa35a07d2017-09-29 14:50:10 +030049 mdns:
50 address: 0.0.0.0
51 port: 5354
Mykyta Karpin8bda8df2017-06-08 14:48:55 +030052 message_queue:
53 engine: rabbitmq
54 members:
55 - host: 127.0.0.1
56 user: openstack
57 password: password
58 virtual_host: '/openstack'
59 pools:
60 default:
61 description: 'default pool'
62 attributes:
63 service_tier: GOLD
64 ns_records:
65 - hostname: 'ns1.example.org.'
66 priority: 10
Pavel Cizinsky82361442016-11-25 14:26:47 +010067 nameservers:
Mykyta Karpin8bda8df2017-06-08 14:48:55 +030068 - host: 127.0.0.1
Pavel Cizinsky82361442016-11-25 14:26:47 +010069 port: 53
70 targets:
Mykyta Karpin8bda8df2017-06-08 14:48:55 +030071 default_target:
72 type: bind9
73 description: 'default target'
74 masters:
75 - host: 127.0.0.1
76 port: 5354
77 options:
78 host: 127.0.0.1
79 port: 53
80 rndc_host: 127.0.0.1
81 rndc_port: 953
82 rndc_key_file: /etc/designate/rndc.key
Mykyta Karpinf728b072017-10-31 13:39:11 +020083 quota:
84 zones: 40
Ivan Udovichenko53fd3112017-09-07 14:07:09 +030085 worker:
86 enabled: true
Mykyta Karpin8bda8df2017-06-08 14:48:55 +030087.. note::
Ivan Udovichenko53fd3112017-09-07 14:07:09 +030088 *domain_id* parameter is UUID of DNS zone managed by designate-sink service. This zone will
Mykyta Karpin8bda8df2017-06-08 14:48:55 +030089 be populated by A records for fixed and floating ip addresses of spawned VMs. After designate
90 is deployed and zone is created, this parameter should be updated accordingly to UUID of
91 newly created zone. Then designate state should be reapplied.
92
Mykyta Karpinb2519312017-08-08 13:24:22 +030093.. note::
94 *server:api:base_uri* allows to set URL which is returned in designate-api responses, it is
95 useful in cases when, designate-api is deployed under proxy server. If not overriden in reclass,
96 it defaults to http://*server:bind:api:address*:9001/.
97
Ivan Udovichenko53fd3112017-09-07 14:07:09 +030098.. note::
Ivan Udovichenkoa35a07d2017-09-29 14:50:10 +030099 *server:mdns:address* and *server:mdns:port* options allow to change MDNS listening address and
100 port. Changes to server:pools:*:targets will be also required if the MDNS's address and port are
101 being used there.
102
103.. note::
Ivan Udovichenko53fd3112017-09-07 14:07:09 +0300104 *worker:enabled* sets worker role and installs designate-worker and designate-producer packages
105 which services will push changes to backend DNS servers.
106 *pool_manager:enabled* should be a default role for older releases of OpenStack, older than
107 Newton in which designate-worker and designate-producer were represented.
108 In releases starting from Newton, only Designate pool manager service still allows live syncs
109 with Power DNS server for now.
110
Mykyta Karpinf728b072017-10-31 13:39:11 +0200111.. note::
112 *server:quota:zones* allows to set default value for zones quota for all projects and users.
113 In case with Designate tempest plugin (0.2.0) zones quota should be increased to 40, so all
114 tests can pass.
115
Mykyta Karpin8bda8df2017-06-08 14:48:55 +0300116Pools pillar for BIND9 master and multiple slaves setup:
117
118.. code:: yaml
119
120 pools:
121 default:
122 description: 'default pool'
123 attributes:
124 service_tier: GOLD
125 ns_records:
126 - hostname: 'ns1.example.org.'
127 priority: 10
128 nameservers:
129 - host: 192.168.0.1
130 port: 53
131 - host: 192.168.0.2
132 port: 53
133 - host: 192.168.0.3
134 port: 53
135 targets:
136 default_target:
137 type: bind9
138 description: 'default target'
139 masters:
140 - host: 192.168.0.4
141 port: 5354
142 options:
143 host: 192.168.0.4
144 port: 53
145 rndc_host: 192.168.0.4
146 rndc_port: 953
147 rndc_key_file: /etc/designate/rndc.key
Pavel Cizinsky82361442016-11-25 14:26:47 +0100148
149Usage
Aleš Komárek53c944b2017-02-06 14:08:15 +0100150=====
Pavel Cizinsky82361442016-11-25 14:26:47 +0100151
152Create server
153
154.. code:: bash
155
156 designate server-create --name ns.example.com.
157
158Create domain
159
160.. code:: bash
161
162 designate domain-create --name example.com. --email mail@example.com
163
164Create record
165
166.. code:: bash
167
168 designate record-create example.com. --name test.example.com. --type A --data 10.2.14.15
169
170Test it
171
172.. code:: bash
173
174 dig @127.0.0.1 test.example.com.
Filip Pytlounbfa72112017-02-02 13:17:47 +0100175
176Documentation and Bugs
177======================
178
179To learn how to install and update salt-formulas, consult the documentation
180available online at:
181
182 http://salt-formulas.readthedocs.io/
183
184In the unfortunate event that bugs are discovered, they should be reported to
185the appropriate issue tracker. Use Github issue tracker for specific salt
186formula:
187
188 https://github.com/salt-formulas/salt-formula-letsencrypt/issues
189
190For feature requests, bug reports or blueprints affecting entire ecosystem,
191use Launchpad salt-formulas project:
192
193 https://launchpad.net/salt-formulas
194
195You can also join salt-formulas-users team and subscribe to mailing list:
196
197 https://launchpad.net/~salt-formulas-users
198
199Developers wishing to work on the salt-formulas projects should always base
200their work on master branch and submit pull request against specific formula.
201
202 https://github.com/salt-formulas/salt-formula-letsencrypt
203
204Any questions or feedback is always welcome so feel free to join our IRC
205channel:
206
207 #salt-formulas @ irc.freenode.net