Difference between revisions of "Designate/Blueprints/Server Pools"
< Designate | Blueprints
Graham Hayes (talk | contribs) (→Current State) |
Graham Hayes (talk | contribs) (→Phase One) |
||
Line 16: | Line 16: | ||
This has caused all servers and domains to assigned to a "pool", which we will use in the future to submit changes to the right pools. | This has caused all servers and domains to assigned to a "pool", which we will use in the future to submit changes to the right pools. | ||
− | [[File:Pool-Manager-State.png| | + | [[File:Pool-Manager-State.png|border|Phase One Server Pools State Diagram]] |
+ | <br /> | ||
+ | <br/> | ||
+ | |||
==== API v2 Changes ==== | ==== API v2 Changes ==== | ||
− | Servers are now a full sub resource of pools | + | Servers are now a full sub resource of pools, and are accessed using HTTP requests like: |
+ | |||
+ | GET http://designate-server:9001/v2/pools/<pool_id>/servers - get all servers in <pool_id> | ||
+ | GET http://designate-server:9001/v2/pools/<pool_id>/servers/<server_id> - get <server_id> details | ||
+ | |||
This was to avoid massive amounts of changes to SOA records for domains, and allowing us to notify backends [[https://review.openstack.org/#/c/45078/]] of just the server that changed. | This was to avoid massive amounts of changes to SOA records for domains, and allowing us to notify backends [[https://review.openstack.org/#/c/45078/]] of just the server that changed. |
Revision as of 13:19, 23 September 2013
Overview
Current State
Phase One
Gerrit Patch | [[1]] |
---|---|
Launchpad Blueprint | [[2]] |
This is an initial change to the codebase to introduce the concept of a "server pool"
This has introduced a new service that sits where the agent would have traditionally sat for bind9
This has caused all servers and domains to assigned to a "pool", which we will use in the future to submit changes to the right pools.
API v2 Changes
Servers are now a full sub resource of pools, and are accessed using HTTP requests like:
GET http://designate-server:9001/v2/pools/<pool_id>/servers - get all servers in <pool_id> GET http://designate-server:9001/v2/pools/<pool_id>/servers/<server_id> - get <server_id> details
This was to avoid massive amounts of changes to SOA records for domains, and allowing us to notify backends [[3]] of just the server that changed.
Phase One limitations
- Currently there is only support for one pool
- This is currently a synchronous operation - async will be in a later phase
- When designate is set up / upgraded for the first time, you will need set up a default pool in the /etc/designate/designate.cfg file.
- There is a default pool created in the SQLAlchemy migrations, so this will just copying and pasting the pool_id into the right section in the config file.