Configuring the DNS Server

On This Page

Overview

Application services in the Iguazio Data Science Platform (“the platform”) clusters run on top of Kubernetes (see Components, Services, and Development Ecosystem). The services are accessed via Kubernetes ingresses, which act as gateways that allow access to cluster applications and internal services through service URLs. The platform uses the CoreDNS DNS server to resolve cluster service URLs and map them to internal service IP addresses. The cluster’s DNS server should be configured to use conditional forwarding, so that DNS queries that contain the domain name of the cluster, and only such queries, are forwarded to the platform for resolution. This document provides step-by-step instructions for configuring conditional DNS forwarding on Linux or Windows.

Terminology

DNS
Domain Name System — an internet service that translates domain names into IP addresses.
DNS forwarding
DNS forwarding is the process by which particular sets of DNS queries are forwarded to a designated server for resolution according to the DNS domain name in the query rather than being handled by the initial server that was contacted by the client. This process improves the network’s performance and resilience. It provides a way to resolve name queries both inside and outside of the network by passing on namespaces or resource records that aren’t contained in the zone of a local DNS server to a remote DNS server for resolution. When a DNS server is configured to use a forwarder, if it can’t resolve a name query by using its local primary zone, secondary zone, or cache, it forwards the request to the designated forwarder instead of attempting to resolve it by using root hints (as done when no forwarder is configured).
Conditional forwarders
Conditional forwarders are DNS servers that only forward queries for specific domain names. Instead of forwarding all queries it cannot resolve locally to a forwarder, a conditional forwarder is configured to forward name queries to specific forwarders based on the domain name contained in the query. Forwarding according to domain names improves conventional forwarding by adding a name-based condition to the forwarding process. It enables improving name resolution between internal (private) DNS namespaces that aren’t part of the DNS namespace of the internet, such as results from a company merger.
FQDN
Fully qualified domain name

Linux DNS Configuration

Perform the following steps to configure conditional DNS forwarding on Linux by using BIND — a popular open-source DNS server from the Internet Systems Consortium (ISC), which is found in most Linux distributions; for more information about BIND, see the Additional Resources section of this document.

Note
The following procedure assumes that you have a configured BIND server.
  1. Open the BIND name-server configuration file (named.conf) in a text editor, and add the following lines; replace the <domain> placeholder with FQDN of the platform cluster to which you want to forward queries, and replace the <datanode IP> placeholders with the IP addresses of the cluster’s master data nodes:

    zone "<domain name>" {
        type forward;
        forward only;
        forwarders { <datanode IP>; [<datanode IP>; ...] };
    };
  2. Check and reload the configuration by running the following commands from a Linux command-line shell:

    named-checkconf
    rndc reload

Windows DNS Configuration

Perform the following steps to configure conditional DNS forwarding on Windows.

Note
The following instructions are compatible with Windows Server 2012 R2. The specific steps and menu options may differ on other versions of Windows.
  1. Open the Windows Server Manager (for example, by entering ServerManager in the Windows command prompt). In the Server Manager window, select the Tools tab. Then, select DNS from the tools list.

    DNS Server Manager - select DNS
  2. In the DNS Manager window, select your DNS server. Then, select Conditional Forwarders from the server browse tree.

    DNS Server Manager - select DNS
  3. Select Action from the top menu toolbar, and then select the New Conditional Forwarder menu option.

    DNS Server Manager - select DNS
  4. In the New Conditional Forwarder window —

    • In the DNS Domain field, enter the FQDN of the platform cluster for which you want to forward queries.
    • In the IP addresses of the master servers field, add the IP addresses of your cluster’s master data nodes.
    • Check the Store this conditional forwarder in Active Directory … check box, if applicable.
    DNS Server Manager - select DNS

Additional Resources

The information in this document is based, in part, on the following resources:

See Also