srs technical update...srs web user interface 30 • full turnkey solution (a web server, a db, an...
TRANSCRIPT
![Page 1: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/1.jpg)
SRS Technical UpdateDave Baker & Taras Klish, .nz Conference 2017
•NZRS Operations
•SRS Software Development
![Page 2: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/2.jpg)
NZRS OperationsA brief journey
![Page 3: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/3.jpg)
Technical Update #dotnz17
• Monthly development cycle
• Releases monthly / bi-monthly
• Releases included all the system configuration much of which was hard-coded.
In the beginning
3
![Page 4: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/4.jpg)
Technical Update #dotnz17
• Monthly development cycle
• Releases monthly / bi-monthly
• System configuration pulled out but still many hard-coded config values
• Application / configuration releases at the same time
In-sourced + 1 day
4
![Page 5: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/5.jpg)
Technical Update #dotnz17
• Monthly (application) development cycle
• Monthly / bi-monthly releases
• Almost all application config parameterised
• System config releases done hourly/daily/on-demand
Today
5
![Page 6: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/6.jpg)
Technical Update #dotnz17
• The SRS application is quite stable, a monthly development cycle suits
• Code-base only needs small amounts of maintenance
• New features need much testing
• Slow and steady wins the ccTLD race
but.. why?
6
![Page 7: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/7.jpg)
Technical Update #dotnz17
• System changes need to be fast; security updates, user management + auditing
• The same playbook deploys integration and production. Shared code is good
• Previously, hard-coded values meant testing was difficult, now running 20 separate clusters is no problem
• Parameters mean we can spin up a full SRS cluster, on a laptop, in 5 minutes finely tuned for any test
so why change ?
7
![Page 8: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/8.jpg)
Technical Update #dotnz17
• Nothing special, just do it• Plan for flexibility, run-time parameters are good• Safe defaults• .nz as the default ccTLD
• Tools• Jenkins + vSphere for regression / integration• Ansible for configuration management• Vagrant for local machine testing
so, how ?
8
![Page 9: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/9.jpg)
Technical Update #dotnz17
What next ?• 100% automation • 99% is good, but we can do better
• Automated ansible testing • configuration assertion / unit testing
• Release all the things • So you can test too
9
![Page 10: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/10.jpg)
Technical Update #dotnz17
• Whoisd
• SRS Web User Interface
• Future development
SRS Software Development
10
![Page 11: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/11.jpg)
Technical Update #dotnz17
Current architecture
Whoisd
11
whoisd
Backend
Frontend
Master DB
SRS internalas a special
registrarSRS WhoisTransaction
7-12 SQL queries
TCP
• ACL• Rate limiting
• Validation• Conversion to SRS
protocol
300 - 500 ms
![Page 12: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/12.jpg)
Technical Update #dotnz17
Current architecture
Whoisd
12
whoisd
Backend
Frontend
Master DB
SRS JSONas a special
registrarSRS WhoisTransaction
7-12 SQL queries
TCP
• ACL• Rate limiting
• Validation• Conversion to SRS
protocol
200 - 500 ms300 - 500 ms
![Page 13: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/13.jpg)
Technical Update #dotnz17
New architecture
Whoisd
13
HA ProxyTCP
ACLRate Limiting
![Page 14: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/14.jpg)
Technical Update #dotnz17
New architecture
Whoisd
14
HA Proxy
whoisd-ng
TCP
TCP
Validation
ACLRate Limiting
![Page 15: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/15.jpg)
Technical Update #dotnz17
New architecture
Whoisd
15
HA Proxy
whoisd-ng
Slave DB
TCP
Slave DB
TCP
Validation
Postgres protocol
PL/pgSQLfunction…
ACLRate Limiting
![Page 16: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/16.jpg)
Technical Update #dotnz17
New architecture
Whoisd
16
HA Proxy
whoisd-ng
PgBouncer
Slave DB
TCP
Slave DB
TCP
Validation
Postgres protocol
PL/pgSQLfunction…
ACLRate Limiting
![Page 17: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/17.jpg)
Technical Update #dotnz17
New architecture
Whoisd
17
HA Proxy
whoisd-ng
PgBouncer
Slave DB
TCP
Slave DB
TCPDB Load Balancing
Failover
Validation
Postgres protocol
PL/pgSQLfunction…
Postgres protocol
ACLRate Limiting
![Page 18: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/18.jpg)
Technical Update #dotnz17
New architecture
Whoisd
18
HA Proxy
whoisd-ng
PgBouncer
Slave DB
TCP
Slave DB
TCPDB Load Balancing
Failover
Validation
Postgres protocol
PL/pgSQLfunction…
Postgres protocol
ACLRate Limiting
10-50 ms
![Page 19: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/19.jpg)
Technical Update #dotnz17
New architecture
Whoisd
19
HA Proxy
whoisd-ng
PgBouncer
Slave DB Slave DB…
10-50 msHA Proxy
whoisd-ng
PgBouncer
![Page 20: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/20.jpg)
Technical Update #dotnz17
New architecture
Whoisd
20
Slave DB
10-50 msHA Proxy
whoisd-ng
PgBouncer
Current status:
• Last stage of testing• Performance fine tuning• Scheduled deployment as a partof SRS Release 7.9 (28/05/2017)
Will be available on github
![Page 21: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/21.jpg)
Technical Update #dotnz17
• Standalone application• Generates and submits SRS XML requests• Batch transactions• Advanced user management and audit• Helper tools• API• EPP support (future)
SRS Web User Interface
21
![Page 22: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/22.jpg)
22
SRS Transactions
HelperTools
Admin
![Page 23: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/23.jpg)
SRS Web User Interface
23
PreviewXML
![Page 24: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/24.jpg)
Technical Update #dotnz17
SRS Web User Interface
24
XMLRequest
![Page 25: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/25.jpg)
SRS Web User Interface
25
XMLResponse
![Page 26: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/26.jpg)
SRS Web User Interface
26
ParsedResults
![Page 27: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/27.jpg)
SRS Web User Interface
27
EmailResults
![Page 28: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/28.jpg)
SRS Web User Interface
28
Globalsettings
![Page 29: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/29.jpg)
SRS Web User Interface
29
Fine tuneuser
permissions
![Page 30: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/30.jpg)
Technical Update #dotnz17
SRS Web User Interface
30
• Full turnkey solution (a web server, a DB, an application)
• Not a part of SRS deployment cycle, so will be released independently
• Will be available on github as open source
• Will be available as an appliance
![Page 31: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/31.jpg)
Technical Update #dotnz17
• New EPP extensions (new UDAI)
• RDAP
• EPP Server rewrite
• Internal communications improvements
Future SRS Development
31
![Page 32: SRS Technical Update...SRS Web User Interface 30 • Full turnkey solution (a web server, a DB, an application) • Not a part of SRS deployment cycle, so will be released independently](https://reader035.vdocument.in/reader035/viewer/2022071419/61181fced433df600c252b8b/html5/thumbnails/32.jpg)
Technical Update #dotnz17
Questions?
SRS Technical Update
32