You are browsing a read-only backup copy of Wikitech. The live site can be found at wikitech.wikimedia.org

DNS/Netbox: Difference between revisions

From Wikitech-static
< DNS
Jump to navigation Jump to search
imported>Volans
m (→‎Transition: Add reference to the Netbox script)
imported>Volans
(→‎Transition: Update what changes referring to the transition dedicated page)
Line 14: Line 14:


=== Active ===
=== Active ===
==== Management ====
* NONE
==== Primary IPs ====
* NONE
* NONE


=== To be migrated ===
=== To be migrated ===
* Management in <code>ulsfo</code>
==== Management ====
* Management in <code>eqsin</code>
* <code>ulsfo</code>
* Management in <code>esams</code>
* <code>eqsin</code>
* Management <code>frack</code> in <code>codfw</code>
* <code>esams</code>
* Management <code>frack</code> in <code>eqiad</code>
* <code>frack</code> in <code>codfw</code>
* Management in <code>codfw</code>
* <code>frack</code> in <code>eqiad</code>
* Management in <code>eqiad</code>
* <code>codfw</code>
* Primary IPv4/6 in <code>ulsfo</code>
* <code>eqiad</code>
* Primary IPv4/6 in <code>eqsin</code>
==== Primary IPs ====
* Primary IPv4/6 in <code>esams</code>
* <code>ulsfo</code>
* Primary <code>frack</code> IPv4/6 in <code>codfw</code>
* <code>eqsin</code>
* Primary <code>frack</code> IPv4/6 in <code>eqiad</code>
* <code>esams</code>
* Primary IPv4/6 in <code>codfw</code>
* <code>frack</code> in <code>codfw</code>
* Primary IPv4/6 in <code>eqiad</code>
* <code>frack</code> in <code>eqiad</code>
* <code>codfw</code>
* <code>eqiad</code>


== Operations ==
== Operations ==
Line 48: Line 53:


==== What changes ====
==== What changes ====
Once we start the transition '''all new management records''' must be created using the [https://netbox.wikimedia.org/extras/scripts/interface_automation/CreateManagementInterface/ Create Management Interface] Netbox script.
The changes in procedure are outlined in the [[Server_Lifecycle/DNS_Transition]] page.
 
It can be reached from Netbox menu <code>Other -> Scripts</code>.
 
Fill the required parameters and run it. To test it, it can also be run in dry-run mode.
 
A similar one will be provided before we start transitioning any primary IP record.
 
 
Once a category of records has been migrated those are the differences from the previous system:
* No more changes to the <code>operations/dns</code> git repository are needed
* Update Netbox data
* Run the <code>sre.dns.netbox</code> cookbook, see above the [[DNS/Netbox#Update_generated_records|Update generated records]] section


[[Category:Wikimedia infrastructure]]
[[Category:Wikimedia infrastructure]]

Revision as of 11:42, 27 May 2020

Part of the DNS records are or will soon be automatically generated from data that resides in Netbox.

Infrastructure

  • Netbox data is exported via Netbox#DNS.
  • Netbox data is checked out on the authoritative DNS servers in /srv/git/netbox_dns_snippets.
  • When compiling the gdnsd final zones, the Netbox data is copied into /etc/gdnsd/zones/netbox for later inclusion.
  • In the actual zonefiles, within an $ORIGIN, the related snippet file is included using the $INCLUDE directive.

DNS records involved

  • Management forward (A) and reverse (PTR) records for both the hostname (foo.mgmt.eqiad.wmnet) and the asset tag (wmf1234.mgmt.eqiad.wmnet)
  • Primary IPv4 (A) and IPv6 (AAAA) and related reverse (PTR) records for the hostname (foo.eqiad.wmnet or foo.wikimedia.org)

Active

Management

  • NONE

Primary IPs

  • NONE

To be migrated

Management

  • ulsfo
  • eqsin
  • esams
  • frack in codfw
  • frack in eqiad
  • codfw
  • eqiad

Primary IPs

  • ulsfo
  • eqsin
  • esams
  • frack in codfw
  • frack in eqiad
  • codfw
  • eqiad

Operations

Update generated records

To update the dynamically generated records based on the current Netbox data and deploy them to all the authoritative DNS servers, the sre.dns.netbox cookbook must be run. See also Cookbooks#Cookbook_Operations. For example:

 sudo cookbook sre.dns.netbox -t T12345 "Add newly racked cp hosts in eqiad"

Convert an hardcoded $ORIGIN to Netbox

This is an example patch to convert an hardcoded $ORIGIN to the dynamically generated data.

Transition

The records involved in the transition from hardcoded records to the Netbox driven ones and the order of the transition is listed above, see the To be migrated section.

Here's an example patch of the transition of management records for ulsfo.

What changes

The changes in procedure are outlined in the Server_Lifecycle/DNS_Transition page.