Hi James, when you deploy Netmaker to the first node, a CoreDNS pod is spun up, which handles private DNS. Netmaker creates A records for each host based on their name and private address. The netclient (on each node) then sets CoreDNS as a nameserver, and retrieves those DNS entries, which will look like this:

node1.microk8s A 10.101.0.1

node2.microk8s A 10.101.0.2

node3.microk8s A 10.101.0.3

So, DNS lookups from nodes will be routed to the CoreDNS pod, and that pod does not need to be tied to the first host. Every host also gets a distinct DNS record.

However (and maybe you are alluding to this), in my example I use the default microk8s "storage" plugin. The CoreDNS volume IS tied to the host in this case, which means that if host goes down, the CoreDNS instance will break, so I would not recommend using this plugin as your storage provider in production.

One other note is that the DNS/hostname based routing is just one small part of the traffic routing for MicroK8s. For instance, the pod and service network run fine over Netmaker without this. Certain lookups just won't function unless all hostnames are resolvable from each host.

--

Alex is CEO of Netmaker (https://netmaker.io), a cloud networking company building the next-gen virtual networking platform.

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Alex Feiszli

Alex Feiszli

209 Followers

Alex is CEO of Netmaker (https://netmaker.io), a cloud networking company building the next-gen virtual networking platform.