SlideShare a Scribd company logo
1 of 50
Designate: An Overview 
Graham Hayes / HP 
Endre Karlson / HP 
Vinod Mangalpally / Rackspace 
Tim Simmons / Rackspace
Agenda 
Overview of Designate 
Our API 
Client Library / CLI 
How we work with DNS Servers 
Designate Sink
Vinod Mangalpally 
Software Developer - Rackspace Cloud DNS 
vinod.mang@rackspace.com 
vinod @ irc.freenode.net 
Tim Simmons 
Software Developer - Rackspace Cloud DNS 
tim.simmons@rackspace.com 
timsim @ irc.freenode.net 
@timsimmons_
What is Designate?
designate 
verb 
ˈdɛzɪɡneɪt/ 
officially give a specified status or name to. 
"the Wye Valley is designated an area of outstanding 
natural beauty"
Arch Overview
Architecture (Juno) 
Database 
Backend 
DNS 
Server 
Central 
API 
User 
Keystone 
MiniDNS 
AMQP
Pools
Why Pools 
Allow private pools 
Pools with different capabilities - such as GeoIP / 
Round Robin DNS / Anycast. 
Reduce amount of domains hosted by servers
Backend Plugins
Backend Plugins - now 
Plugins responsible for creation/updation and 
deletion of domains at the backend. 
Each API making a change needs the plugin to 
take a corresponding action. 
e.g. create/delete/update record/recordset
Backend Plugins - Future 
Backends can now get changes from MiniDNS 
using DNS protocol - so simplified plugins. 
Plugins are responsible for creation/deletion of 
domains.
Pool 
Manager 
API Central DB 
Mini DNS 
Flow of information with pools 
Backend 
Customer 
Facing DNS 
Servers
Pool 
Manager 
API Central DB 
Mini DNS 
User Creates Domain 
Backend 
Customer 
Facing DNS 
Servers
Pool 
Manager 
API Central DB 
Mini DNS 
Central stores the information 
Backend 
Customer 
Facing DNS 
Servers
Pool 
Manager 
API Central DB 
Mini DNS 
Central tells the pool manager 
Backend 
Customer 
Facing DNS 
Servers
Pool 
Manager 
API Central DB 
Mini DNS 
Pool manager creates the domain 
Backend 
Customer 
Facing DNS 
Servers
Pool 
Manager 
API Central DB 
Mini DNS 
MiniDNS transfers the zone info 
Backend 
Customer 
Facing DNS 
Servers
API
Designate REST API 
Filter on resource data 
Pagination 
Nested Collections 
Extensions 
Policy 
Experimental for Kilo
Designate REST API 
Zones 
Recordsets 
Records 
TLDs 
Blacklisted Domains 
Quotas 
Pools
Zones 
GET/POST/PATCH/DELETE - /v2/zones/<id> 
- Accept: application/json 
DNS Zones 
Subresources - Recordsets, Records 
Name, email, TTL, description
Zone Import/Export 
GET/POST - /v2/zones/<id> 
- Accept: text/dns 
Migrating your zones to/from Designate 
Backup your zones 
Tool for preparing zones for import 
(zoneextractor.py)
Record Sets 
GET/POST/PATCH/DELETE - 
/v2/zones/id/recordsets/<id> 
- Accept: application/json 
Groups of similarly typed resource records 
A, AAAA, CNAME, MX, NS, PTR, SOA, SPF, SRV, 
SSHFP, TXT 
Easy to expand to others
Records 
GET/PUT/ - /v2/zones/<id>/recordsets/id 
- Accept: application/json 
Resource records that make up a recordset 
Each type of record has different “data” 
List of records in each Record set
TLDs 
GET/POST/PATCH/DELETE - /v2/tlds/<id> 
- Accept: application/json 
TLDs are a simple representation of Top-Level 
Domains that are allowed to be added to 
Designate 
eg. “com” to add “.com” to your allowed list 
Bulk addition outside of the API is supported
Blacklisted Domains 
GET/POST/PATCH/DELETE - /v2/blacklists/<id> 
- Accept: application/json 
Blacklists are regular expressions to block a 
domain from creation 
^example.com.$ 
^([A-Za-z0-9_-]+.)*example.com.$
Floating IP Pointers 
GET/PATCH - /v2/reverse/floatingips/<id> 
Manage PTR records for Neutron Floating IPs 
Operators delegate the *.in-addr.arpa zone to 
Designate 
Users can manage their own DNS 
Users can only set PTRs for IPs currently associated with 
their tenant
Extensions 
Custom API Endpoints 
Out-of-scope Services 
Custom Code 
Helpful Utilities
Controllers and Views 
Create a Controller and View in “extensions”
Configuration and Entry Point 
Add an entry point, add to the config file 
You’re done!
Client
Generally 
Works like any other Openstack CLI tool 
Provides some diagnostic facilities 
Operators weapon of choice
Domain Commands 
Create 
$ designate domain-create --name foo.co. --email admin@bar.co 
Read 
$ designate domain-get <id> 
$ designate domain-list 
Update 
$ designate domain-update <id> --ttl 1800 
Delete 
$ designate domain-delete <id>
Record Commands 
Create 
$ designate record-create --name www… --type A --data 10.0.0.1 
Read 
$ designate record-list 
$ designate record-get <id> 
Update 
$ designate record-update <domain_id> <id> --ttl 3600 
Delete 
$ designate record-delete <domain_id> <id>
Diagnostics / Reporting 
Synchronize a resource 
$ designate diagnostics-sync-<all|domain|record> 
Report counts 
$ designate report-count-<all|domains|records|tenants> 
Report tenant counts 
$ designate report-tenant-<all|domains>
Designate Sink
What are handlers? 
How we respond to notifications 
Extendable and customizable 
Write your own 
Example in: 
$designate_repo/contrib/designate-ext-samplehandler
Sink for Neutron Floating IPs 
Create a Domain 
$ designate domain-create --name my-vms.co. --email 
root@me.co 
Enable the handler 
[service:sink] 
enable_notification_handlers = neutron_floatingip 
[handler:neutron_floatingip] 
domain_id = 3b65035d-acfe-4add-9182-e9bf8acf1eb3
Sink for Neutron Floating IPs 
Start the designate-sink service 
Boot a vm and associate a floating IP with it 
Results in a Record: 
vm-x.my-vms.co
We are hiring (both HP 
and Rackspace - come 
talk to us if you are 
interested)

More Related Content

Recently uploaded

Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 

Recently uploaded (20)

Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Designate Overview Openstack Summit November 2014

  • 1. Designate: An Overview Graham Hayes / HP Endre Karlson / HP Vinod Mangalpally / Rackspace Tim Simmons / Rackspace
  • 2. Agenda Overview of Designate Our API Client Library / CLI How we work with DNS Servers Designate Sink
  • 3.
  • 4. Vinod Mangalpally Software Developer - Rackspace Cloud DNS vinod.mang@rackspace.com vinod @ irc.freenode.net Tim Simmons Software Developer - Rackspace Cloud DNS tim.simmons@rackspace.com timsim @ irc.freenode.net @timsimmons_
  • 6. designate verb ˈdɛzɪɡneɪt/ officially give a specified status or name to. "the Wye Valley is designated an area of outstanding natural beauty"
  • 8. Architecture (Juno) Database Backend DNS Server Central API User Keystone MiniDNS AMQP
  • 10. Why Pools Allow private pools Pools with different capabilities - such as GeoIP / Round Robin DNS / Anycast. Reduce amount of domains hosted by servers
  • 12. Backend Plugins - now Plugins responsible for creation/updation and deletion of domains at the backend. Each API making a change needs the plugin to take a corresponding action. e.g. create/delete/update record/recordset
  • 13. Backend Plugins - Future Backends can now get changes from MiniDNS using DNS protocol - so simplified plugins. Plugins are responsible for creation/deletion of domains.
  • 14. Pool Manager API Central DB Mini DNS Flow of information with pools Backend Customer Facing DNS Servers
  • 15. Pool Manager API Central DB Mini DNS User Creates Domain Backend Customer Facing DNS Servers
  • 16. Pool Manager API Central DB Mini DNS Central stores the information Backend Customer Facing DNS Servers
  • 17. Pool Manager API Central DB Mini DNS Central tells the pool manager Backend Customer Facing DNS Servers
  • 18. Pool Manager API Central DB Mini DNS Pool manager creates the domain Backend Customer Facing DNS Servers
  • 19. Pool Manager API Central DB Mini DNS MiniDNS transfers the zone info Backend Customer Facing DNS Servers
  • 20. API
  • 21. Designate REST API Filter on resource data Pagination Nested Collections Extensions Policy Experimental for Kilo
  • 22. Designate REST API Zones Recordsets Records TLDs Blacklisted Domains Quotas Pools
  • 23. Zones GET/POST/PATCH/DELETE - /v2/zones/<id> - Accept: application/json DNS Zones Subresources - Recordsets, Records Name, email, TTL, description
  • 24.
  • 25. Zone Import/Export GET/POST - /v2/zones/<id> - Accept: text/dns Migrating your zones to/from Designate Backup your zones Tool for preparing zones for import (zoneextractor.py)
  • 26.
  • 27. Record Sets GET/POST/PATCH/DELETE - /v2/zones/id/recordsets/<id> - Accept: application/json Groups of similarly typed resource records A, AAAA, CNAME, MX, NS, PTR, SOA, SPF, SRV, SSHFP, TXT Easy to expand to others
  • 28.
  • 29. Records GET/PUT/ - /v2/zones/<id>/recordsets/id - Accept: application/json Resource records that make up a recordset Each type of record has different “data” List of records in each Record set
  • 30.
  • 31. TLDs GET/POST/PATCH/DELETE - /v2/tlds/<id> - Accept: application/json TLDs are a simple representation of Top-Level Domains that are allowed to be added to Designate eg. “com” to add “.com” to your allowed list Bulk addition outside of the API is supported
  • 32.
  • 33. Blacklisted Domains GET/POST/PATCH/DELETE - /v2/blacklists/<id> - Accept: application/json Blacklists are regular expressions to block a domain from creation ^example.com.$ ^([A-Za-z0-9_-]+.)*example.com.$
  • 34.
  • 35. Floating IP Pointers GET/PATCH - /v2/reverse/floatingips/<id> Manage PTR records for Neutron Floating IPs Operators delegate the *.in-addr.arpa zone to Designate Users can manage their own DNS Users can only set PTRs for IPs currently associated with their tenant
  • 36.
  • 37. Extensions Custom API Endpoints Out-of-scope Services Custom Code Helpful Utilities
  • 38. Controllers and Views Create a Controller and View in “extensions”
  • 39. Configuration and Entry Point Add an entry point, add to the config file You’re done!
  • 41. Generally Works like any other Openstack CLI tool Provides some diagnostic facilities Operators weapon of choice
  • 42. Domain Commands Create $ designate domain-create --name foo.co. --email admin@bar.co Read $ designate domain-get <id> $ designate domain-list Update $ designate domain-update <id> --ttl 1800 Delete $ designate domain-delete <id>
  • 43. Record Commands Create $ designate record-create --name www… --type A --data 10.0.0.1 Read $ designate record-list $ designate record-get <id> Update $ designate record-update <domain_id> <id> --ttl 3600 Delete $ designate record-delete <domain_id> <id>
  • 44. Diagnostics / Reporting Synchronize a resource $ designate diagnostics-sync-<all|domain|record> Report counts $ designate report-count-<all|domains|records|tenants> Report tenant counts $ designate report-tenant-<all|domains>
  • 46. What are handlers? How we respond to notifications Extendable and customizable Write your own Example in: $designate_repo/contrib/designate-ext-samplehandler
  • 47. Sink for Neutron Floating IPs Create a Domain $ designate domain-create --name my-vms.co. --email root@me.co Enable the handler [service:sink] enable_notification_handlers = neutron_floatingip [handler:neutron_floatingip] domain_id = 3b65035d-acfe-4add-9182-e9bf8acf1eb3
  • 48. Sink for Neutron Floating IPs Start the designate-sink service Boot a vm and associate a floating IP with it Results in a Record: vm-x.my-vms.co
  • 49.
  • 50. We are hiring (both HP and Rackspace - come talk to us if you are interested)