Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OpenStack Ireland Meetup - Galway Feb 2016

Graham Hayes
February 09, 2016

OpenStack Ireland Meetup - Galway Feb 2016

Graham Hayes

February 09, 2016

More Decks by Graham Hayes

Other Decks in Technology


  1. Designate: An Overview Graham Hayes / Hewlett Packard Enterprise Tim

    Simmons / Rackspace Eric Larson / Rackspace
  2. Graham Hayes, HP Designate PTL @grahamhayes [email protected] mugsie @ irc.freenode.net

    Tim Simmons, Rackspace Designate Core @timsimmons_ [email protected] timsim @ irc.freenode.net Eric Larson, Rackspace Designate Developer @ionrock [email protected] elarson @ irc.freenode.net
  3. Agenda Overview of Designate Our API and Client Libraries How

    we work with DNS Servers Designate and Nova/Neutron
  4. Designate Services Central DB Pool Manager Mini DNS Customer Facing

    DNS Servers Backend Nova / Neutron Zone Manager API
  5. Why use Designate? • DNS isn’t cool - It’s like

    plumbing, nobody notices when it works and gets terribly upset when it breaks • DNS is essential to nearly every app running on top of OpenStack, really, it is! • Why give users the power to `nova boot`, only to leave them high and dry filing a IT support ticket for a DNS entry? We can do better!
  6. Ways to interact with Designate ➔ REST API - Directly

    ➔ Command Line Client ➔ Python Bindings
  7. Command Line Client Designate supports the OpenStack CLI $ pip

    install python-designateclient $ pip install python-openstackclient $ openstack zone create \ --name example.net. \ --email [email protected] $ openstack recordset create example.net \ --type A --name www \ --records
  8. Python Bindings from designateclient.v2.client import Client from keystoneclient.session import Session

    … session = Session(auth=auth) client = Client(session=sess) zones = client.zones.list( criterion={'name': 'example.com.'} )
  9. How we work with DNS Servers By Petter Karkea (Own

    work) [CC BY-SA 4.0 (http://creativecommons.org/licenses/by-sa/4.0)], via Wikimedia Commons
  10. There are a lot of ways to run DNS PowerDNS

    Knot Master-Slave Microsoft DNS Multi-Master BIND9 NSD djbdns Secondary Primary Denominator Akamai DynECT Master-Slave-Cache Multi-Region Infoblox
  11. MiniDNS A very minimal DNS server, backed by Designate’ s

    database Utilizes DNS Protocol (NOTIFY, AXFR) Acts as a ‘Master’* Horizontally scalable Designate in control *Most of the time
  12. Pool Manager Backends Updating is easy Creating and Deleting can

    be odd Allows complete customization of the create/delete process Mechanisms for keeping DNS eventually consistent
  13. MiniDNS The Agent Optional Talks with MiniDNS using DNS protocol

    Write plugins for complete control Get all the Designate goodness, regardless of DNS server Agent NOTIFY/AXFR MiniDNS Managed DNS Servers MiniDNS
  14. *Secondary Zones MiniDNS/Designate can act as a slave If you

    want to manage your own DNS, and let Designate distribute to its managed DNS servers Your DNS Server MiniDNS NOTIFY/AXFR Managed DNS Servers NOTIFY/AXFR
  15. Designate, Nova and Neutron By ESO (http://www.eso.org/public/images/eso0644a/) [CC BY 4.0

    (http://creativecommons.org/licenses/by/4.0)], via Wikimedia Commons
  16. Designate Services Central Sink DB Pool Manager Mini DNS Customer

    Facing DNS Servers Backend Nova / Neutron Zone Manager API