Vai al contenuto principale

CoreDNS

CoreDNS è il server DNS dei cluster Kubernetes Hikube. Garantisce la risoluzione dei nomi dei service e dei pod interni al cluster e l'inoltro delle richieste verso i nomi esterni.

Nella console​

CoreDNS fa parte della Advanced Configuration del passaggio Addons: è sempre presente nel cluster e non si può disattivare. È possibile soltanto sovrascriverne la configurazione.

  1. Alla creazione (passaggio Addons) oppure da Edit > Extensions & Addons, espanda il blocco CoreDNS della sezione Advanced Configuration.
  2. Inserisca i suoi valori in Helm Configuration (YAML) — optional.
  3. Confermi con Next e poi Create cluster (creazione) oppure Save (modifica).
nota

Svuotare il campo, o cancellare una riga della sovrascrittura, da Edit non rimuove un valore già applicato al cluster. Contatti il supporto per tornare ai valori predefiniti.

Nella pagina di dettaglio del cluster, la riga DNS della sezione Network indica CoreDNS quando viene applicata una configurazione CoreDNS.

Sovrascrivere la configurazione​

Il valore YAML viene trasmesso al chart Helm di CoreDNS, sotto la chiave coredns. Ad esempio, per impostare il numero di repliche e le risorse:

coredns-override.yaml
coredns:
replicaCount: 2
resources:
limits:
cpu: 500m
memory: 256Mi
requests:
cpu: 100m
memory: 128Mi

Le opzioni disponibili (plugin, zone, cache, forward…) sono descritte nel chart Helm di CoreDNS.

Utilizzo nel cluster​

# Pod CoreDNS
kubectl get pods -A | grep coredns

# Testare la risoluzione da un pod
kubectl run dns-test --rm -it --image=busybox --restart=Never -- nslookup kubernetes.default

Buone pratiche​

  • Mantenga almeno 2 repliche per garantire l'alta disponibilità del DNS.
  • Monitori la memoria: il consumo di CoreDNS aumenta con il numero di service e di richieste.
  • Non modifichi manualmente il ConfigMap di CoreDNS nel cluster: utilizzi la sovrascrittura nella console, altrimenti le sue modifiche verranno sovrascritte.