SlideShare a Scribd company logo
1 of 71
1
Van Hau TRAN
Product Owner #Domain
DNS: from manual records to a modern &
dynamic approach
Emplacement photo
2
"Everything is a freaking DNS problem"
3
DNS_PROBE_FINISHED_NXDOMAIN
"Everything is a freaking DNS problem"
Index
Why need to change?
4
"Everything is a freaking DNS problem"
Index
Why need to change?
What we need?
5
"Everything is a freaking DNS problem"
Agenda
Why change?
What do we need?
Scaleway Domains under the hood
6
A long time ago
Internet's phonebook
7
A long time ago
BIND
Berkeley Internet Name Domain
Authoritative and Resolver
Working with zone files
8
A brand new world
Evolutions
• Dedicated
• Cloud
• On-premises
• Hybrid Cloud
• Multi Cloud
• VMs
• Containers
9
Where is my service?
10
Scaleway Domains
European cloud computing company
Need a DNS product:
• To connect to Scaleway products
• To allow connection from/to any external
services
11
Scaleway Domains
12
Devops Culture
• Continuous Anything needs:
• Infrastructure Automation
• Continuous Delivery
INFRA AS CODE
13
Devops Culture
• Continuous Anything needs:
• Infrastructure Automation
• Continuous Delivery
INFRA AS CODE
14
Infra as Code
Curl
15
curl --request PATCH 
--url https://api.scaleway.com/domain/v2alpha2/dns-zones/scaleway-demo.fr/records 
--header 'content-type: application/json' 
--header 'x-auth-token: xxxx' 
--data '{
    "return_all_records": true,
    "changes": [
        {
            "clear": {}
        },
        {
            "add": {
                "records": [
                    {
                        "name": "www",
                        "data": "1.2.3.4",
                        "type": "A",
                        "ttl": 10
                    }
                ]
            }
        }
    ]
}'
Infra as Code
{
"add": {
"records": [
{
"name": "www",
"data": "1.2.3.4",
"type": "A",
"ttl": 10
}
]
}
}
Curl
16
Infra as Code
Ansible
- name: define A records
domain_scaleway_record:
token: "{{ token }}"
endpoint: "{{ endpoint | default('') }}"
name: "{{ item['name'] }}"
zone: "{{ zone }}"
type: "{{ item['type'] }}"
content : "{{ item['content'] }}"
ttl: "{{ item['ttl'] }}"
state: "{{ item['state'] }}"
with_items: '{{ records }}'
register: result
17
How we run some of our tests
18
Static vs Dynamic
STATIC ANSWER
19
www resolve to 1.2.3.4
Static vs Dynamic
STATIC ANSWER DYNAMIC ANSWER
20
Static vs Dynamic
STATIC ANSWER DYNAMIC ANSWER
record A
1.2.3.4
record A
1.2.3.4 if FR
else 4.3.2.1
21
Static vs Dynamic
STATIC ANSWER DYNAMIC ANSWER
22
Scaleway DNS
Make it work
23
Scaleway Domains API
BASIC VERSION 24
API GW DNS API
DOMAIN API
BASIC VERSION 25
API GW DNS API
DOMAIN API
DNS SERVER
REGISTRAR
Scaleway Domains API
BASIC VERSION 26
API GW DNS API
DOMAIN API
DNS SERVER
DNS Queries
REGISTRAR
Scaleway Domains API
BASIC VERSION 27
API GW DNS API DNS SERVER
DNS Queries
Scaleway Domains API
Scaleway Domains API - Basic Version
PowerDNS
• Don't reinvent the wheel
• RFC compliant
• API
• + Dynamic record LUA
example :
ifurlup('http://www', {'51.15.121.80','51.15.210.104'}, {stringmatch='works'}
28
POWERDNS LUA 29
DNS SERVER
DNS Queries
engine
Scaleway Domains API
POWERDNS LUA 30
DNS SERVER
DNS Queries
engine
record LUA
script
function
external call
Scaleway Domains API
Scaleway Domains API - Basic Version
Example
31
web1 web2
resolve www.scaleday-test.fr
DNS SERVER
don't use if down
Scaleway Domains API - Basic Version
POWERDNS 32
record LUA
script
function
external call check if http://51.15.121.80
contains the word "works"
extract script for WWW
use "ifurlup" function
check http://51.15.210.104
contains the word "works"
ifurlup( 'http://www', {'51.15.121.80','51.15.210.104'},{stringmatch='works'})
Scaleway Domains API - Basic Version
curl --request PATCH 
--url https://api.scaleway.com/domain/v2alpha2/dns-zones/scaleway-demo.fr/records 
--header 'content-type: application/json' 
--header 'x-auth-token: xxxxxxxxxxxxxxxxxx' 
--data '{
    "return_all_records": false,
    "changes": [
        {
            "clear": {}
        },
        {
            "add": {
                "records": [
                    {
                        "name": "www",
                        "data": "url http://www.scaleway-demo.fr ips 51.15.121.80,51.15.210.104 text '''works'''" ,
                        "type": "FUNC_URLUP_A",
                        "ttl": 60
                    }
                ]
            }
        }
    ]
}'
Curl using our API
33
Scaleway Domains API - Basic Version
"name": "www",
"data": "url http://www.scaleway-demo.fr
ips 51.15.121.80,51.15.210.104
text '''works'''",
"type": "FUNC_URLUP_A",
34
Curl using our API
"name": "www",
"data": "url http://www.scaleway-demo.fr
ips 51.15.121.80,51.15.210.104
text '''works'''",
"type": "FUNC_URLUP_A",
Scaleway Domains API - Basic Version
35
name of record
url to ask
IPs to check
text to check
custom type
Curl using our API
Scaleway Domains API - Basic Version
DEMO
36
when www.scaleway-demo.fr record is set to
url http://www.scaleway-demo.fr ips 51.15.121.80,51.15.210.104 text 'works'
with previous curl
dig A www.scaleway-demo.fr @9.9.9.9 +short will answer randomly
to 51.15.121.80 or 51.15.210.104
if we update the text of the page to simulate a server down on 51.15.210.104
ssh root@51.15.210.104 "sed -i 's/works/fails/g' /var/www/html/index.html"
all dig will always answer 51.15.121.80
Scaleway Domains API - Basic Version
PowerDNS LUA experience
Works fine but:
• limited list of functions
• only accepting IP
• -> limited rules
Scaling / performance:
• run on same server
• limited control / monitoring
• only works for PowerDNS
37
Scaleway Domains API - Basic Version
PowerDNS LUA experience
• BIND
• KNOT
• COREDNS
• ...
others software
Works fine but:
• limited list of functions
• only accepting IP
• -> limited rules
Scaling / performance:
• run on same server
• limited control / monitoring
• only works for PowerDNS
38
Scaleway Domains API
I want more
39
Scaleway Domains API - Intermediate Version
Need to be agnostic
40
INTERMEDIATE VERSION
41
DNS API
DNS SERVER
STATIC
DNS Queries
RESOLVE
DYNAMIC?backend
driver
1
2
Scaleway Domains API
INTERMEDIATE VERSION
42
DNS API
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMICbackend
driver
?
1
2
Scaleway Domains API
INTERMEDIATE VERSION
43
DNS API
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMIC
backend
driver
DNS SERVER
DYNAMIC
scaling
?
1
2
Scaleway Domains API
INTERMEDIATE VERSION
44
DNS API
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMIC
backend
driver
DNS SERVER
DYNAMIC
A/B Testing
?
1
2
Scaleway Domains API
INTERMEDIATE VERSION
45
DNS API
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMICbackend
driver
?
1
2
Scaleway Domains API
Scaleway Domains API - Intermediate Version
Forward requests to DNS server running dynamic records
46
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMIC
USING ALIAS RECORD
IPv4 for www ?
Scaleway Domains API - Intermediate Version
Forward requests to DNS server running dynamic records
47
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMIC
USING ALIAS RECORD
IPv4 for www ?
Scaleway Domains API - Intermediate Version
Forward requests to DNS server running dynamic records
48
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMIC
USING ALIAS RECORD
IPv4 for www is 1.2.3.4
Scaleway Domains API - Intermediate Version
ALIAS can almost work but
• custom record type
• not working with wildcards
Forward requests to DNS server running dynamic records
49
Scaleway Domains API - Intermediate Version
Forward requests to DNS server running dynamic records
50
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMIC
USING ZONE DELEGATION
IPv4 for www ?
Scaleway Domains API - Intermediate Version
Forward requests to DNS server running dynamic records
51
DNS SERVER
STATIC
DNS Queries
USING ZONE DELEGATION
please ask this DNS
DNS SERVER
DYNAMIC
Scaleway Domains API - Intermediate Version
Forward requests to DNS server running dynamic records
52
DNS SERVER
STATIC
DNS Queries
DNS SERVER
DYNAMIC
USING ZONE DELEGATION
IPv4 for www ?
Scaleway Domains API - Intermediate Version
Delegation zone with NS record:
• mechanism for failover, load balancing
• allows working with wildcards
Forward requests to DNS server running dynamic records
53
INTERMEDIATE VERSION
54
DNS API
DNS SERVER
STATIC
DNS Queries
backend
1 2
DNS SERVER
DYNAMIC
3
driver
zone delegation
Scaleway Domains API
INTERMEDIATE VERSION
55
DNS API
DNS SERVER
STATIC
DNS Queries
backend
1 2
zone delegation DNS SERVER
DYNAMIC
1
not every request !!!
driver
Scaleway Domains API
INTERMEDIATE VERSION
56
DNS API
DNS SERVER
STATIC
DNS Queries
backend
1 2
zone delegation DNS SERVER
DYNAMIC
3
engine
driver
Scaleway Domains API
Scaleway Domains API - Intermediate Version
LUA engine can work but:
• not everybody knows LUA
• engine to code, scale and maintain
Engine for dynamic records
57
Scaleway Domains API - Intermediate Version
Microservices engine:
• DNS over HTTPS JSON
• all langages
• external engine
Engine for dynamic records
58
Scaleway Domains API - Intermediate Version
DNS answer in JSON
59
{  
   "Status":0,
   "TC":false,
   "RD":true,
   "RA":true,
   "AD":true,
   "CD":false,
   "Question":[  
      {  
         "name":"www.scaleday-test.fr.",
         "type":1
      }
   ],
   "Answer":[  
      {  
         "name":"www.scaleday-test.fr.",
         "type":1,
         "TTL":60,
         "data":"51.158.125.207"
      }
   ]
}
Scaleway Domains API - Intermediate Version
DNS answer in JSON
60
   "Answer":[  
      {  
         "name":"www.scaleday-test.fr.",
         "type":1,
         "TTL":60,
         "data":"51.158.125.207"
      }
INTERMEDIATE VERSION
61
DNS API
DNS SERVER
STATIC
DNS Queries
backend
driver
1 2
zone delegation DNS SERVER
DYNAMIC
3
engine
resolve service
4
Scaleway Domains API
INTERMEDIATE VERSION
62
DNS API
DNS SERVER
STATIC
DNS Queries
backend
driver
1 2
zone delegation DNS SERVER
DYNAMIC
3
engine
external resolve service
4
Scaleway Domains API
Scaleway Domains API - Intermediate Version
Demo - Mix Static & Dynamic
63
Domain: scaleway-test.fr
www.
time.
*.dyn.
static record A 1.2.3.4
dynamic record TXT return time
dynamic record A/AAAA return IPs
from external source
Scaleway Domains API - Intermediate Version
Demo - Mix Static & Dynamic
64
*.dyn.
IPs of instances tagged
Scaleway Domains API - Intermediate Version
Demo - Mix Static & Dynamic
65
DNS SERVER
DYNAMIC
engine
external resolve service
Serverless
Instances
DNS over HTTPS
API
Scaleway Domains API - Intermediate Version
Declaration is easy
66
{
"name": "*.dyn",
"data": "https://bdc5d5cc-ccc3-402a-b642-c59d4d87a487-
scalewaypython3deveratzbfk.functions.fnc.fr-par.scw.cloud/resolve",
"type": "FUNCTION",
"ttl": 10
}           
Scaleway Domains API - Intermediate Version
LIVE DEMO
67
Scaleway Domains API - Intermediate Version
Next challenges
Offer sample dynamics records
DNSSEC with dynamics records
Manage timeout, cache, warmup
Performance
etc ..
68
Scaleway Domains API
Early Access open
We need you
69
https://scaleway.com/betas/
"Everything is a freaking DNS problem"
Source
70
vanonox
THANK YOU
Stay tuned for exclusive how-to's and updates, follow us
on Twitter and LinkedIn @Scaleway
Emplacement QR Code
71
https://scaleway.com/betas/

More Related Content

What's hot

Pulsar Functions Deep Dive_Sanjeev kulkarni
Pulsar Functions Deep Dive_Sanjeev kulkarniPulsar Functions Deep Dive_Sanjeev kulkarni
Pulsar Functions Deep Dive_Sanjeev kulkarniStreamNative
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsC4Media
 
Monitoring Alfresco with Nagios/Icinga
Monitoring Alfresco with Nagios/IcingaMonitoring Alfresco with Nagios/Icinga
Monitoring Alfresco with Nagios/IcingaToni de la Fuente
 
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...StreamNative
 
Design and Implementation of Incremental Cooperative Rebalancing
Design and Implementation of Incremental Cooperative RebalancingDesign and Implementation of Incremental Cooperative Rebalancing
Design and Implementation of Incremental Cooperative Rebalancingconfluent
 
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora - Benchmark ...
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora  - Benchmark ...The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora  - Benchmark ...
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora - Benchmark ...Symphony Software Foundation
 
Putting Kafka Into Overdrive
Putting Kafka Into OverdrivePutting Kafka Into Overdrive
Putting Kafka Into OverdriveTodd Palino
 
Tuning kafka pipelines
Tuning kafka pipelinesTuning kafka pipelines
Tuning kafka pipelinesSumant Tambe
 
Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Toni de la Fuente
 
Infrastructure modeling with chef
Infrastructure modeling with chefInfrastructure modeling with chef
Infrastructure modeling with chefCharles Johnson
 
Zero Downtime Deployment
Zero Downtime DeploymentZero Downtime Deployment
Zero Downtime DeploymentJoel Dickson
 
Alfresco Day Platform Update
Alfresco Day Platform UpdateAlfresco Day Platform Update
Alfresco Day Platform Updateohej
 
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...Edward Burns
 
Денис Баталов, Принципы построения высоконагруженных сайтов на платформе АWS
Денис Баталов, Принципы построения высоконагруженных сайтов на платформе АWSДенис Баталов, Принципы построения высоконагруженных сайтов на платформе АWS
Денис Баталов, Принципы построения высоконагруженных сайтов на платформе АWSTanya Denisyuk
 
NY Web Performance - DNS as a Web Performance Tool
NY Web Performance - DNS as a Web Performance ToolNY Web Performance - DNS as a Web Performance Tool
NY Web Performance - DNS as a Web Performance ToolNS1
 
Introduction to Kafka Cruise Control
Introduction to Kafka Cruise ControlIntroduction to Kafka Cruise Control
Introduction to Kafka Cruise ControlJiangjie Qin
 
Kafka tiered-storage-meetup-2022-final-presented
Kafka tiered-storage-meetup-2022-final-presentedKafka tiered-storage-meetup-2022-final-presented
Kafka tiered-storage-meetup-2022-final-presentedSumant Tambe
 
Rackspace Private Cloud presentation for ChefConf 2013
Rackspace Private Cloud presentation for ChefConf 2013Rackspace Private Cloud presentation for ChefConf 2013
Rackspace Private Cloud presentation for ChefConf 2013Joe Breu
 
Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08gameaxt
 

What's hot (20)

Pulsar Functions Deep Dive_Sanjeev kulkarni
Pulsar Functions Deep Dive_Sanjeev kulkarniPulsar Functions Deep Dive_Sanjeev kulkarni
Pulsar Functions Deep Dive_Sanjeev kulkarni
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java Applications
 
Monitoring Alfresco with Nagios/Icinga
Monitoring Alfresco with Nagios/IcingaMonitoring Alfresco with Nagios/Icinga
Monitoring Alfresco with Nagios/Icinga
 
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
Exactly-Once Made Easy: Transactional Messaging in Apache Pulsar - Pulsar Sum...
 
Design and Implementation of Incremental Cooperative Rebalancing
Design and Implementation of Incremental Cooperative RebalancingDesign and Implementation of Incremental Cooperative Rebalancing
Design and Implementation of Incremental Cooperative Rebalancing
 
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora - Benchmark ...
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora  - Benchmark ...The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora  - Benchmark ...
The Alfresco ECM 1 Billion Document Benchmark on AWS and Aurora - Benchmark ...
 
Putting Kafka Into Overdrive
Putting Kafka Into OverdrivePutting Kafka Into Overdrive
Putting Kafka Into Overdrive
 
Tuning kafka pipelines
Tuning kafka pipelinesTuning kafka pipelines
Tuning kafka pipelines
 
Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014
 
Infrastructure modeling with chef
Infrastructure modeling with chefInfrastructure modeling with chef
Infrastructure modeling with chef
 
Zero Downtime Deployment
Zero Downtime DeploymentZero Downtime Deployment
Zero Downtime Deployment
 
Alfresco Day Platform Update
Alfresco Day Platform UpdateAlfresco Day Platform Update
Alfresco Day Platform Update
 
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
HTTP/2 Comes to Java: Servlet 4.0 and what it means for the Java/Jakarta EE e...
 
Денис Баталов, Принципы построения высоконагруженных сайтов на платформе АWS
Денис Баталов, Принципы построения высоконагруженных сайтов на платформе АWSДенис Баталов, Принципы построения высоконагруженных сайтов на платформе АWS
Денис Баталов, Принципы построения высоконагруженных сайтов на платформе АWS
 
NY Web Performance - DNS as a Web Performance Tool
NY Web Performance - DNS as a Web Performance ToolNY Web Performance - DNS as a Web Performance Tool
NY Web Performance - DNS as a Web Performance Tool
 
Introduction to Kafka Cruise Control
Introduction to Kafka Cruise ControlIntroduction to Kafka Cruise Control
Introduction to Kafka Cruise Control
 
Kafka tiered-storage-meetup-2022-final-presented
Kafka tiered-storage-meetup-2022-final-presentedKafka tiered-storage-meetup-2022-final-presented
Kafka tiered-storage-meetup-2022-final-presented
 
Rackspace Private Cloud presentation for ChefConf 2013
Rackspace Private Cloud presentation for ChefConf 2013Rackspace Private Cloud presentation for ChefConf 2013
Rackspace Private Cloud presentation for ChefConf 2013
 
Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08
 
6421 b Module-03
6421 b Module-036421 b Module-03
6421 b Module-03
 

Similar to DNS: from manual records to a modern & dynamic approach

SharePoint on Microsoft Azure
SharePoint on Microsoft AzureSharePoint on Microsoft Azure
SharePoint on Microsoft AzureK.Mohamed Faizal
 
Dragonflow Austin Summit Talk
Dragonflow Austin Summit Talk Dragonflow Austin Summit Talk
Dragonflow Austin Summit Talk Eran Gampel
 
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...Capgemini
 
OpenStack Dragonflow shenzhen and Hangzhou meetups
OpenStack Dragonflow shenzhen and Hangzhou  meetupsOpenStack Dragonflow shenzhen and Hangzhou  meetups
OpenStack Dragonflow shenzhen and Hangzhou meetupsEran Gampel
 
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 20161049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016panagenda
 
VMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld 2013: Architecting VMware Horizon Workspace for Scale and PerformanceVMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld 2013: Architecting VMware Horizon Workspace for Scale and PerformanceVMworld
 
windows server 2012 R2
windows server 2012 R2windows server 2012 R2
windows server 2012 R2Gol D Roger
 
Deployment of DevOps Environment with CA Solutions
Deployment of DevOps Environment with CA SolutionsDeployment of DevOps Environment with CA Solutions
Deployment of DevOps Environment with CA SolutionsNic Swart
 
Openstack meetup: Bootstrapping OpenStack to Corporate IT
Openstack meetup: Bootstrapping OpenStack to Corporate ITOpenstack meetup: Bootstrapping OpenStack to Corporate IT
Openstack meetup: Bootstrapping OpenStack to Corporate ITMirantis
 
Visual Mapping of Clickstream Data
Visual Mapping of Clickstream DataVisual Mapping of Clickstream Data
Visual Mapping of Clickstream DataDataWorks Summit
 
Real-Time Vote Platform Benchmark
Real-Time Vote Platform BenchmarkReal-Time Vote Platform Benchmark
Real-Time Vote Platform BenchmarkLahav Savir
 
Windows Server 2012 R2 Jump Start - Intro
Windows Server 2012 R2 Jump Start - IntroWindows Server 2012 R2 Jump Start - Intro
Windows Server 2012 R2 Jump Start - IntroPaulo Freitas
 
DevOps Toolbox: Infrastructure as code
DevOps Toolbox: Infrastructure as codeDevOps Toolbox: Infrastructure as code
DevOps Toolbox: Infrastructure as codesriram_rajan
 
Namespaces for Local Networks
Namespaces for Local NetworksNamespaces for Local Networks
Namespaces for Local NetworksMen and Mice
 
Introduction to Microsoft R
Introduction to Microsoft RIntroduction to Microsoft R
Introduction to Microsoft RCheah Eng Soon
 
Introduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to ChefIntroduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to ChefNathen Harvey
 
Introduction to Microsoft R (Graph)
Introduction to Microsoft R (Graph)Introduction to Microsoft R (Graph)
Introduction to Microsoft R (Graph)Cheah Eng Soon
 

Similar to DNS: from manual records to a modern & dynamic approach (20)

SharePoint on Microsoft Azure
SharePoint on Microsoft AzureSharePoint on Microsoft Azure
SharePoint on Microsoft Azure
 
Dragonflow Austin Summit Talk
Dragonflow Austin Summit Talk Dragonflow Austin Summit Talk
Dragonflow Austin Summit Talk
 
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...
 
OpenStack Dragonflow shenzhen and Hangzhou meetups
OpenStack Dragonflow shenzhen and Hangzhou  meetupsOpenStack Dragonflow shenzhen and Hangzhou  meetups
OpenStack Dragonflow shenzhen and Hangzhou meetups
 
Philly Tech Fest Upgrade To Windows Server 2008 R2
Philly Tech Fest Upgrade To Windows Server 2008 R2Philly Tech Fest Upgrade To Windows Server 2008 R2
Philly Tech Fest Upgrade To Windows Server 2008 R2
 
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 20161049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
1049: Best and Worst Practices for Deploying IBM Connections - IBM Connect 2016
 
VMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld 2013: Architecting VMware Horizon Workspace for Scale and PerformanceVMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
VMworld 2013: Architecting VMware Horizon Workspace for Scale and Performance
 
windows server 2012 R2
windows server 2012 R2windows server 2012 R2
windows server 2012 R2
 
Deployment of DevOps Environment with CA Solutions
Deployment of DevOps Environment with CA SolutionsDeployment of DevOps Environment with CA Solutions
Deployment of DevOps Environment with CA Solutions
 
Openstack meetup: Bootstrapping OpenStack to Corporate IT
Openstack meetup: Bootstrapping OpenStack to Corporate ITOpenstack meetup: Bootstrapping OpenStack to Corporate IT
Openstack meetup: Bootstrapping OpenStack to Corporate IT
 
Visual Mapping of Clickstream Data
Visual Mapping of Clickstream DataVisual Mapping of Clickstream Data
Visual Mapping of Clickstream Data
 
Real-Time Vote Platform Benchmark
Real-Time Vote Platform BenchmarkReal-Time Vote Platform Benchmark
Real-Time Vote Platform Benchmark
 
Windows Server 2012 R2 Jump Start - Intro
Windows Server 2012 R2 Jump Start - IntroWindows Server 2012 R2 Jump Start - Intro
Windows Server 2012 R2 Jump Start - Intro
 
DevOps Toolbox: Infrastructure as code
DevOps Toolbox: Infrastructure as codeDevOps Toolbox: Infrastructure as code
DevOps Toolbox: Infrastructure as code
 
Intro to.net core 20170111
Intro to.net core   20170111Intro to.net core   20170111
Intro to.net core 20170111
 
Namespaces for Local Networks
Namespaces for Local NetworksNamespaces for Local Networks
Namespaces for Local Networks
 
Introduction to Microsoft R
Introduction to Microsoft RIntroduction to Microsoft R
Introduction to Microsoft R
 
Introduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to ChefIntroduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to Chef
 
Introduction to Microsoft R (Graph)
Introduction to Microsoft R (Graph)Introduction to Microsoft R (Graph)
Introduction to Microsoft R (Graph)
 
Server 2016 sneak peek
Server 2016 sneak peekServer 2016 sneak peek
Server 2016 sneak peek
 

More from Scaleway

Entreprises : découvrez les briques essentielles d’une solution IoT
Entreprises : découvrez les briques essentielles d’une solution IoTEntreprises : découvrez les briques essentielles d’une solution IoT
Entreprises : découvrez les briques essentielles d’une solution IoTScaleway
 
Understand, verify, and act on the security of your Kubernetes clusters - Sca...
Understand, verify, and act on the security of your Kubernetes clusters - Sca...Understand, verify, and act on the security of your Kubernetes clusters - Sca...
Understand, verify, and act on the security of your Kubernetes clusters - Sca...Scaleway
 
Éditeurs d'applications mobiles : augmentez la résolution des photos de vos c...
Éditeurs d'applications mobiles : augmentez la résolution des photos de vos c...Éditeurs d'applications mobiles : augmentez la résolution des photos de vos c...
Éditeurs d'applications mobiles : augmentez la résolution des photos de vos c...Scaleway
 
Discover the benefits of Kubernetes to host a SaaS solution
Discover the benefits of Kubernetes to host a SaaS solutionDiscover the benefits of Kubernetes to host a SaaS solution
Discover the benefits of Kubernetes to host a SaaS solutionScaleway
 
6 winning strategies for agil SaaS editors
6 winning strategies for agil SaaS editors6 winning strategies for agil SaaS editors
6 winning strategies for agil SaaS editorsScaleway
 
Webinar - Relying on Bare Metal to manage your workloads
Webinar - Relying on Bare Metal to manage your workloadsWebinar - Relying on Bare Metal to manage your workloads
Webinar - Relying on Bare Metal to manage your workloadsScaleway
 
Webinaire du 09/04/20 - S'appuyer sur du Bare Metal pour gérer ses pics de ch...
Webinaire du 09/04/20 - S'appuyer sur du Bare Metal pour gérer ses pics de ch...Webinaire du 09/04/20 - S'appuyer sur du Bare Metal pour gérer ses pics de ch...
Webinaire du 09/04/20 - S'appuyer sur du Bare Metal pour gérer ses pics de ch...Scaleway
 
Scaleway Approach to VXLAN EVPN Fabric
Scaleway Approach to VXLAN EVPN FabricScaleway Approach to VXLAN EVPN Fabric
Scaleway Approach to VXLAN EVPN FabricScaleway
 
Workshop IoT Hub : Pilotez une ampoule connectée
Workshop IoT Hub : Pilotez une ampoule connectéeWorkshop IoT Hub : Pilotez une ampoule connectée
Workshop IoT Hub : Pilotez une ampoule connectéeScaleway
 
Why and how we proxy our IoT broker connections
 Why and how we proxy our IoT broker connections Why and how we proxy our IoT broker connections
Why and how we proxy our IoT broker connectionsScaleway
 
From local servers up to Kubernetes in the cloud
From local servers up to Kubernetes in the cloudFrom local servers up to Kubernetes in the cloud
From local servers up to Kubernetes in the cloudScaleway
 
L’évolution des serveurs dédiés vers le Bare Metal et les instances : comm...
L’évolution des serveurs dédiés vers le Bare Metal et les instances : comm...L’évolution des serveurs dédiés vers le Bare Metal et les instances : comm...
L’évolution des serveurs dédiés vers le Bare Metal et les instances : comm...Scaleway
 
L’IA, booster de votre activité : principes, usages & idéation
L’IA, booster de votre activité : principes, usages & idéationL’IA, booster de votre activité : principes, usages & idéation
L’IA, booster de votre activité : principes, usages & idéationScaleway
 
Comment automatiser le déploiement de sa plateforme sur des infrastructures ...
Comment automatiser le déploiement de sa plateforme sur des infrastructures ...Comment automatiser le déploiement de sa plateforme sur des infrastructures ...
Comment automatiser le déploiement de sa plateforme sur des infrastructures ...Scaleway
 
Serverless
ServerlessServerless
ServerlessScaleway
 
Migrating the Online’s console with Docker
Migrating the Online’s console with DockerMigrating the Online’s console with Docker
Migrating the Online’s console with DockerScaleway
 
Routage à grande échelle des requêtes via RabbitMQ
Routage à grande échelle des requêtes via RabbitMQRoutage à grande échelle des requêtes via RabbitMQ
Routage à grande échelle des requêtes via RabbitMQScaleway
 
Instances Behind the Scene: What happen when you click on «create a new insta...
Instances Behind the Scene: What happen when you click on «create a new insta...Instances Behind the Scene: What happen when you click on «create a new insta...
Instances Behind the Scene: What happen when you click on «create a new insta...Scaleway
 
Demystifying IoT : Bringing the cloud to connected devices with IoT Station
Demystifying IoT : Bringing the cloud to connected devices with IoT StationDemystifying IoT : Bringing the cloud to connected devices with IoT Station
Demystifying IoT : Bringing the cloud to connected devices with IoT StationScaleway
 
L’odyssée d’une requête HTTP chez Scaleway
L’odyssée d’une requête HTTP chez ScalewayL’odyssée d’une requête HTTP chez Scaleway
L’odyssée d’une requête HTTP chez ScalewayScaleway
 

More from Scaleway (20)

Entreprises : découvrez les briques essentielles d’une solution IoT
Entreprises : découvrez les briques essentielles d’une solution IoTEntreprises : découvrez les briques essentielles d’une solution IoT
Entreprises : découvrez les briques essentielles d’une solution IoT
 
Understand, verify, and act on the security of your Kubernetes clusters - Sca...
Understand, verify, and act on the security of your Kubernetes clusters - Sca...Understand, verify, and act on the security of your Kubernetes clusters - Sca...
Understand, verify, and act on the security of your Kubernetes clusters - Sca...
 
Éditeurs d'applications mobiles : augmentez la résolution des photos de vos c...
Éditeurs d'applications mobiles : augmentez la résolution des photos de vos c...Éditeurs d'applications mobiles : augmentez la résolution des photos de vos c...
Éditeurs d'applications mobiles : augmentez la résolution des photos de vos c...
 
Discover the benefits of Kubernetes to host a SaaS solution
Discover the benefits of Kubernetes to host a SaaS solutionDiscover the benefits of Kubernetes to host a SaaS solution
Discover the benefits of Kubernetes to host a SaaS solution
 
6 winning strategies for agil SaaS editors
6 winning strategies for agil SaaS editors6 winning strategies for agil SaaS editors
6 winning strategies for agil SaaS editors
 
Webinar - Relying on Bare Metal to manage your workloads
Webinar - Relying on Bare Metal to manage your workloadsWebinar - Relying on Bare Metal to manage your workloads
Webinar - Relying on Bare Metal to manage your workloads
 
Webinaire du 09/04/20 - S'appuyer sur du Bare Metal pour gérer ses pics de ch...
Webinaire du 09/04/20 - S'appuyer sur du Bare Metal pour gérer ses pics de ch...Webinaire du 09/04/20 - S'appuyer sur du Bare Metal pour gérer ses pics de ch...
Webinaire du 09/04/20 - S'appuyer sur du Bare Metal pour gérer ses pics de ch...
 
Scaleway Approach to VXLAN EVPN Fabric
Scaleway Approach to VXLAN EVPN FabricScaleway Approach to VXLAN EVPN Fabric
Scaleway Approach to VXLAN EVPN Fabric
 
Workshop IoT Hub : Pilotez une ampoule connectée
Workshop IoT Hub : Pilotez une ampoule connectéeWorkshop IoT Hub : Pilotez une ampoule connectée
Workshop IoT Hub : Pilotez une ampoule connectée
 
Why and how we proxy our IoT broker connections
 Why and how we proxy our IoT broker connections Why and how we proxy our IoT broker connections
Why and how we proxy our IoT broker connections
 
From local servers up to Kubernetes in the cloud
From local servers up to Kubernetes in the cloudFrom local servers up to Kubernetes in the cloud
From local servers up to Kubernetes in the cloud
 
L’évolution des serveurs dédiés vers le Bare Metal et les instances : comm...
L’évolution des serveurs dédiés vers le Bare Metal et les instances : comm...L’évolution des serveurs dédiés vers le Bare Metal et les instances : comm...
L’évolution des serveurs dédiés vers le Bare Metal et les instances : comm...
 
L’IA, booster de votre activité : principes, usages & idéation
L’IA, booster de votre activité : principes, usages & idéationL’IA, booster de votre activité : principes, usages & idéation
L’IA, booster de votre activité : principes, usages & idéation
 
Comment automatiser le déploiement de sa plateforme sur des infrastructures ...
Comment automatiser le déploiement de sa plateforme sur des infrastructures ...Comment automatiser le déploiement de sa plateforme sur des infrastructures ...
Comment automatiser le déploiement de sa plateforme sur des infrastructures ...
 
Serverless
ServerlessServerless
Serverless
 
Migrating the Online’s console with Docker
Migrating the Online’s console with DockerMigrating the Online’s console with Docker
Migrating the Online’s console with Docker
 
Routage à grande échelle des requêtes via RabbitMQ
Routage à grande échelle des requêtes via RabbitMQRoutage à grande échelle des requêtes via RabbitMQ
Routage à grande échelle des requêtes via RabbitMQ
 
Instances Behind the Scene: What happen when you click on «create a new insta...
Instances Behind the Scene: What happen when you click on «create a new insta...Instances Behind the Scene: What happen when you click on «create a new insta...
Instances Behind the Scene: What happen when you click on «create a new insta...
 
Demystifying IoT : Bringing the cloud to connected devices with IoT Station
Demystifying IoT : Bringing the cloud to connected devices with IoT StationDemystifying IoT : Bringing the cloud to connected devices with IoT Station
Demystifying IoT : Bringing the cloud to connected devices with IoT Station
 
L’odyssée d’une requête HTTP chez Scaleway
L’odyssée d’une requête HTTP chez ScalewayL’odyssée d’une requête HTTP chez Scaleway
L’odyssée d’une requête HTTP chez Scaleway
 

Recently uploaded

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Recently uploaded (20)

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

DNS: from manual records to a modern & dynamic approach

  • 1. 1
  • 2. Van Hau TRAN Product Owner #Domain DNS: from manual records to a modern & dynamic approach Emplacement photo 2
  • 3. "Everything is a freaking DNS problem" 3 DNS_PROBE_FINISHED_NXDOMAIN
  • 4. "Everything is a freaking DNS problem" Index Why need to change? 4
  • 5. "Everything is a freaking DNS problem" Index Why need to change? What we need? 5
  • 6. "Everything is a freaking DNS problem" Agenda Why change? What do we need? Scaleway Domains under the hood 6
  • 7. A long time ago Internet's phonebook 7
  • 8. A long time ago BIND Berkeley Internet Name Domain Authoritative and Resolver Working with zone files 8
  • 9. A brand new world Evolutions • Dedicated • Cloud • On-premises • Hybrid Cloud • Multi Cloud • VMs • Containers 9
  • 10. Where is my service? 10
  • 11. Scaleway Domains European cloud computing company Need a DNS product: • To connect to Scaleway products • To allow connection from/to any external services 11
  • 13. Devops Culture • Continuous Anything needs: • Infrastructure Automation • Continuous Delivery INFRA AS CODE 13
  • 14. Devops Culture • Continuous Anything needs: • Infrastructure Automation • Continuous Delivery INFRA AS CODE 14
  • 15. Infra as Code Curl 15 curl --request PATCH --url https://api.scaleway.com/domain/v2alpha2/dns-zones/scaleway-demo.fr/records --header 'content-type: application/json' --header 'x-auth-token: xxxx' --data '{     "return_all_records": true,     "changes": [         {             "clear": {}         },         {             "add": {                 "records": [                     {                         "name": "www",                         "data": "1.2.3.4",                         "type": "A",                         "ttl": 10                     }                 ]             }         }     ] }'
  • 16. Infra as Code { "add": { "records": [ { "name": "www", "data": "1.2.3.4", "type": "A", "ttl": 10 } ] } } Curl 16
  • 17. Infra as Code Ansible - name: define A records domain_scaleway_record: token: "{{ token }}" endpoint: "{{ endpoint | default('') }}" name: "{{ item['name'] }}" zone: "{{ zone }}" type: "{{ item['type'] }}" content : "{{ item['content'] }}" ttl: "{{ item['ttl'] }}" state: "{{ item['state'] }}" with_items: '{{ records }}' register: result 17
  • 18. How we run some of our tests 18
  • 19. Static vs Dynamic STATIC ANSWER 19 www resolve to 1.2.3.4
  • 20. Static vs Dynamic STATIC ANSWER DYNAMIC ANSWER 20
  • 21. Static vs Dynamic STATIC ANSWER DYNAMIC ANSWER record A 1.2.3.4 record A 1.2.3.4 if FR else 4.3.2.1 21
  • 22. Static vs Dynamic STATIC ANSWER DYNAMIC ANSWER 22
  • 24. Scaleway Domains API BASIC VERSION 24 API GW DNS API DOMAIN API
  • 25. BASIC VERSION 25 API GW DNS API DOMAIN API DNS SERVER REGISTRAR Scaleway Domains API
  • 26. BASIC VERSION 26 API GW DNS API DOMAIN API DNS SERVER DNS Queries REGISTRAR Scaleway Domains API
  • 27. BASIC VERSION 27 API GW DNS API DNS SERVER DNS Queries Scaleway Domains API
  • 28. Scaleway Domains API - Basic Version PowerDNS • Don't reinvent the wheel • RFC compliant • API • + Dynamic record LUA example : ifurlup('http://www', {'51.15.121.80','51.15.210.104'}, {stringmatch='works'} 28
  • 29. POWERDNS LUA 29 DNS SERVER DNS Queries engine Scaleway Domains API
  • 30. POWERDNS LUA 30 DNS SERVER DNS Queries engine record LUA script function external call Scaleway Domains API
  • 31. Scaleway Domains API - Basic Version Example 31 web1 web2 resolve www.scaleday-test.fr DNS SERVER don't use if down
  • 32. Scaleway Domains API - Basic Version POWERDNS 32 record LUA script function external call check if http://51.15.121.80 contains the word "works" extract script for WWW use "ifurlup" function check http://51.15.210.104 contains the word "works" ifurlup( 'http://www', {'51.15.121.80','51.15.210.104'},{stringmatch='works'})
  • 33. Scaleway Domains API - Basic Version curl --request PATCH --url https://api.scaleway.com/domain/v2alpha2/dns-zones/scaleway-demo.fr/records --header 'content-type: application/json' --header 'x-auth-token: xxxxxxxxxxxxxxxxxx' --data '{     "return_all_records": false,     "changes": [         {             "clear": {}         },         {             "add": {                 "records": [                     {                         "name": "www",                         "data": "url http://www.scaleway-demo.fr ips 51.15.121.80,51.15.210.104 text '''works'''" ,                         "type": "FUNC_URLUP_A",                         "ttl": 60                     }                 ]             }         }     ] }' Curl using our API 33
  • 34. Scaleway Domains API - Basic Version "name": "www", "data": "url http://www.scaleway-demo.fr ips 51.15.121.80,51.15.210.104 text '''works'''", "type": "FUNC_URLUP_A", 34 Curl using our API
  • 35. "name": "www", "data": "url http://www.scaleway-demo.fr ips 51.15.121.80,51.15.210.104 text '''works'''", "type": "FUNC_URLUP_A", Scaleway Domains API - Basic Version 35 name of record url to ask IPs to check text to check custom type Curl using our API
  • 36. Scaleway Domains API - Basic Version DEMO 36 when www.scaleway-demo.fr record is set to url http://www.scaleway-demo.fr ips 51.15.121.80,51.15.210.104 text 'works' with previous curl dig A www.scaleway-demo.fr @9.9.9.9 +short will answer randomly to 51.15.121.80 or 51.15.210.104 if we update the text of the page to simulate a server down on 51.15.210.104 ssh root@51.15.210.104 "sed -i 's/works/fails/g' /var/www/html/index.html" all dig will always answer 51.15.121.80
  • 37. Scaleway Domains API - Basic Version PowerDNS LUA experience Works fine but: • limited list of functions • only accepting IP • -> limited rules Scaling / performance: • run on same server • limited control / monitoring • only works for PowerDNS 37
  • 38. Scaleway Domains API - Basic Version PowerDNS LUA experience • BIND • KNOT • COREDNS • ... others software Works fine but: • limited list of functions • only accepting IP • -> limited rules Scaling / performance: • run on same server • limited control / monitoring • only works for PowerDNS 38
  • 39. Scaleway Domains API I want more 39
  • 40. Scaleway Domains API - Intermediate Version Need to be agnostic 40
  • 41. INTERMEDIATE VERSION 41 DNS API DNS SERVER STATIC DNS Queries RESOLVE DYNAMIC?backend driver 1 2 Scaleway Domains API
  • 42. INTERMEDIATE VERSION 42 DNS API DNS SERVER STATIC DNS Queries DNS SERVER DYNAMICbackend driver ? 1 2 Scaleway Domains API
  • 43. INTERMEDIATE VERSION 43 DNS API DNS SERVER STATIC DNS Queries DNS SERVER DYNAMIC backend driver DNS SERVER DYNAMIC scaling ? 1 2 Scaleway Domains API
  • 44. INTERMEDIATE VERSION 44 DNS API DNS SERVER STATIC DNS Queries DNS SERVER DYNAMIC backend driver DNS SERVER DYNAMIC A/B Testing ? 1 2 Scaleway Domains API
  • 45. INTERMEDIATE VERSION 45 DNS API DNS SERVER STATIC DNS Queries DNS SERVER DYNAMICbackend driver ? 1 2 Scaleway Domains API
  • 46. Scaleway Domains API - Intermediate Version Forward requests to DNS server running dynamic records 46 DNS SERVER STATIC DNS Queries DNS SERVER DYNAMIC USING ALIAS RECORD IPv4 for www ?
  • 47. Scaleway Domains API - Intermediate Version Forward requests to DNS server running dynamic records 47 DNS SERVER STATIC DNS Queries DNS SERVER DYNAMIC USING ALIAS RECORD IPv4 for www ?
  • 48. Scaleway Domains API - Intermediate Version Forward requests to DNS server running dynamic records 48 DNS SERVER STATIC DNS Queries DNS SERVER DYNAMIC USING ALIAS RECORD IPv4 for www is 1.2.3.4
  • 49. Scaleway Domains API - Intermediate Version ALIAS can almost work but • custom record type • not working with wildcards Forward requests to DNS server running dynamic records 49
  • 50. Scaleway Domains API - Intermediate Version Forward requests to DNS server running dynamic records 50 DNS SERVER STATIC DNS Queries DNS SERVER DYNAMIC USING ZONE DELEGATION IPv4 for www ?
  • 51. Scaleway Domains API - Intermediate Version Forward requests to DNS server running dynamic records 51 DNS SERVER STATIC DNS Queries USING ZONE DELEGATION please ask this DNS DNS SERVER DYNAMIC
  • 52. Scaleway Domains API - Intermediate Version Forward requests to DNS server running dynamic records 52 DNS SERVER STATIC DNS Queries DNS SERVER DYNAMIC USING ZONE DELEGATION IPv4 for www ?
  • 53. Scaleway Domains API - Intermediate Version Delegation zone with NS record: • mechanism for failover, load balancing • allows working with wildcards Forward requests to DNS server running dynamic records 53
  • 54. INTERMEDIATE VERSION 54 DNS API DNS SERVER STATIC DNS Queries backend 1 2 DNS SERVER DYNAMIC 3 driver zone delegation Scaleway Domains API
  • 55. INTERMEDIATE VERSION 55 DNS API DNS SERVER STATIC DNS Queries backend 1 2 zone delegation DNS SERVER DYNAMIC 1 not every request !!! driver Scaleway Domains API
  • 56. INTERMEDIATE VERSION 56 DNS API DNS SERVER STATIC DNS Queries backend 1 2 zone delegation DNS SERVER DYNAMIC 3 engine driver Scaleway Domains API
  • 57. Scaleway Domains API - Intermediate Version LUA engine can work but: • not everybody knows LUA • engine to code, scale and maintain Engine for dynamic records 57
  • 58. Scaleway Domains API - Intermediate Version Microservices engine: • DNS over HTTPS JSON • all langages • external engine Engine for dynamic records 58
  • 59. Scaleway Domains API - Intermediate Version DNS answer in JSON 59 {      "Status":0,    "TC":false,    "RD":true,    "RA":true,    "AD":true,    "CD":false,    "Question":[         {            "name":"www.scaleday-test.fr.",          "type":1       }    ],    "Answer":[         {            "name":"www.scaleday-test.fr.",          "type":1,          "TTL":60,          "data":"51.158.125.207"       }    ] }
  • 60. Scaleway Domains API - Intermediate Version DNS answer in JSON 60    "Answer":[         {            "name":"www.scaleday-test.fr.",          "type":1,          "TTL":60,          "data":"51.158.125.207"       }
  • 61. INTERMEDIATE VERSION 61 DNS API DNS SERVER STATIC DNS Queries backend driver 1 2 zone delegation DNS SERVER DYNAMIC 3 engine resolve service 4 Scaleway Domains API
  • 62. INTERMEDIATE VERSION 62 DNS API DNS SERVER STATIC DNS Queries backend driver 1 2 zone delegation DNS SERVER DYNAMIC 3 engine external resolve service 4 Scaleway Domains API
  • 63. Scaleway Domains API - Intermediate Version Demo - Mix Static & Dynamic 63 Domain: scaleway-test.fr www. time. *.dyn. static record A 1.2.3.4 dynamic record TXT return time dynamic record A/AAAA return IPs from external source
  • 64. Scaleway Domains API - Intermediate Version Demo - Mix Static & Dynamic 64 *.dyn. IPs of instances tagged
  • 65. Scaleway Domains API - Intermediate Version Demo - Mix Static & Dynamic 65 DNS SERVER DYNAMIC engine external resolve service Serverless Instances DNS over HTTPS API
  • 66. Scaleway Domains API - Intermediate Version Declaration is easy 66 { "name": "*.dyn", "data": "https://bdc5d5cc-ccc3-402a-b642-c59d4d87a487- scalewaypython3deveratzbfk.functions.fnc.fr-par.scw.cloud/resolve", "type": "FUNCTION", "ttl": 10 }           
  • 67. Scaleway Domains API - Intermediate Version LIVE DEMO 67
  • 68. Scaleway Domains API - Intermediate Version Next challenges Offer sample dynamics records DNSSEC with dynamics records Manage timeout, cache, warmup Performance etc .. 68
  • 69. Scaleway Domains API Early Access open We need you 69 https://scaleway.com/betas/
  • 70. "Everything is a freaking DNS problem" Source 70 vanonox
  • 71. THANK YOU Stay tuned for exclusive how-to's and updates, follow us on Twitter and LinkedIn @Scaleway Emplacement QR Code 71 https://scaleway.com/betas/