Distribuire e utilizzare i DN esterni per Kubernetes

Distribuire e utilizzare i DN esterni per Kubernetes

In questo articolo, impareremo come configurare un DNS esterno in un cluster Kubernetes. Il cluster ha un controller per Kubernetes implementato come DNS esterno. Con numerosi fornitori di servizi DNS tra cui CloudFlare, Google Cloud DNS e molti altri, è possibile utilizzare il DNS esterno. Distribuendo in un cluster di kubernetes e utilizzando questo DNS esterno, possiamo semplificare rapidamente il processo di gestione dei record DNS per la nostra applicazione. Usando i comandi necessari, installeremo i DN esterni nel nostro cluster. Spiegheremo questo argomento con l'aiuto di esempi e screenshot.

Cos'è DNS esterno in Kubernetes?

In Kubernetes, il DNS esterno è essenzialmente uno strumento che ci consente di gestire i record DNS per le applicazioni Kubernetes ed è installato in Kubernetes. Il DNS esterno è un server di nomi di dominio di terze parti a cui è possibile accedere e aggiornare chiunque con una connessione Internet.

Prerequisiti:

Il tuo sistema sta eseguendo la versione più recente di Ubuntu. L'utente di Windows può anche eseguire facilmente il sistema operativo Ubuntu in parallelo con l'aiuto di una macchina virtuale. L'utente garantisce inoltre che lo strumento di riga di comando Kubectl sia in esecuzione perfettamente e abbia una certa conoscenza di baccelli e contenitori. Qui, dividiamo la spiegazione del processo DNS esterno in diverse parti o passaggi. Iniziamo il processo dall'inizio.

Passaggio 1: avviare il pannello di controllo Kubernetes

Inizialmente, eseguiamo il cluster nel sistema. Per avviare il cluster su una macchina locale, eseguiamo il seguente comando:

kalsoom@kalsoom-virtualbox> minikube

Quando viene eseguito il comando, nel nostro sistema viene avviato un contenitore minikube. Il contenitore minikube è il cluster di kubernetes in cui eseguiamo operazioni diverse.

Passaggio 2: creare un file di configurazione in Kubernetes

In questo passaggio, definiamo i nostri requisiti per installare un server DNS esterno nel sistema creando un file YAML nel cluster Kubernetes. Eseguiamo il seguente comando per creare un file:

kalsoom@kalsoom-virtualbox> nano dns.Yaml

Quando eseguiamo questo comando, il sistema apre un DNS.file yaml che contiene il nome del pod e il tipo di questo pod che è un account di servizio. Tutte le specifiche per questo contenitore sono disponibili nella seguente screenshot. Leggi attentamente le regole relative ai DN esterni.

E ora, creiamo di nuovo un file di configurazione per un pod il cui tipo è il ruolo di cluster. Il nome di questo pod è esterno-DNS-Viewer. Leggi le informazioni in questo pod come allegato nei seguenti:

Abbiamo anche creato un file per un'etichetta DNS esterna in Kubernetes. Inoltre, leggere attentamente le specifiche del pod dell'etichetta come mostrato nella seguente screenshot:

Passaggio 3: distribuire questo file di configurazione in Kubernetes

In questo passaggio, distribuiamo questi file di configurazione nel nostro cluster Kubernetes. Installiamo il controller DNS esterno nel nostro cluster eseguendo il manifest. Il comando è il seguente:

kalsoom@kalsoom -virtualbox> kubectl crea -f dns.Yaml

Quando eseguiamo questo comando, possiamo vedere che nell'account del servizio, tutte le risorse sono create correttamente nel nostro cluster.

Passaggio 4: arruola i baccelli in kubernetes

In questo passaggio, otteniamo l'elenco di tutti i pod in esecuzione nel cluster Kubernetes. Vedremo come va la verifica del pod DNS esterno. Eseguiamo il seguente comando sullo strumento di riga di comando Kubectl:

kalsoom@kalsoom-virtualbox> kubectl ottieni baccelli

L'output di questo comando è allegato nello screenshot fornito. Il comando mostra i dettagli di pod come nome, pronto, stato, riavvio ed età.

Passaggio 5: recuperare il registro di un pod specifico in kubernetes

In questo passaggio, otteniamo il registro del pod DNS esterno il cui nome è "esterno-DNS-5957CCC64C47-BW3BH".

kalsoom@kalsoom-virtualbox> kubectl logs esterno-dns-5957cc64c47-bw3bh

Eseguindo questo comando, vedremo i registri o gli errori che si sono verificati durante l'installazione.

Passaggio 6: creare un file di configurazione nel cluster Kubernetes

In questo passaggio, creiamo un file di configurazione. Eseguiamo il seguente comando:

kalsoom@kalsoom-virtualbox> nano sam. Yaml

All'esecuzione del comando, viene aperto il file di configurazione, come mostrato nel seguente allegato. Questo file contiene una serie di informazioni tra cui i metadati e molte altre cose.

Passaggio 7: distribuire il DNS esterno in Kubernetes

In questo passaggio, distribuiamo il file di configurazione per i DN esterni in Kubernetes. Eseguiamo il seguente comando:

kalsoom@kalsoom -virtualbox> kubectl applica -f sam. Yaml

Eseguindo il comando, il pod MyWebApp viene distribuito correttamente.

Passaggio 8: creare un file di configurazione del servizio in kubernetes

In questo passaggio, creiamo un file di configurazione del servizio nel cluster. Eseguiamo il seguente comando:

kalsoom@kalsoom-virtualbox> nano servizio.Yaml

Dopo l'esecuzione del comando, il "servizio.Il file Yaml ”è aperto nel cluster Kubernetes. Questo file contiene tipo, metadati e selettore in cui il nome del servizio è nginx. Lo screenshot del file è allegato nel seguente:

Passaggio 9: distribuire un file di servizio in Kubernetes

In questo passaggio, distribuiamo il file di configurazione del servizio in Kubernetes. Eseguiamo il seguente comando:

kalsoom@kalsoom -virtualbox> kubectl applica -f servizio.Yaml

Quando viene eseguito il comando, il pod di servizio chiamato "MyWebApp" viene distribuito in Kubernetes.

Passaggio 10: arruola le distribuzioni in esecuzione in Kubernetes

In questo passaggio, prendiamo l'elenco delle distribuzioni in Kubernetes. Eseguiamo il seguente comando sul terminale Kubectl:

kalsoom@kalsoom-virtualbox> kubectl ottieni distribuzioni

Il pod esterno-DNS appare dopo l'esecuzione del comando, come mostrato nello screenshot fornito.

Passaggio 11: ottieni i servizi in Kubernetes

In questo passaggio, otteniamo l'elenco dei servizi che abbiamo recentemente distribuito in Kubernetes. Eseguiamo il seguente comando:

kalsoom@kalsoom-virtualbox> kubectl get servizi

Quando viene eseguito il comando, appare un elenco di servizi in esecuzione. Qui, possiamo vedere che un pod di servizio è stato recentemente mostrato in un elenco come MyWebApp. Possiamo anche vedere lo stato di questo servizio che è 80: 30589/TCP. Lo stato di questo servizio è "in sospeso". Molte altre cose sono menzionate con questo comando.

Conclusione

Concludiamo che potremmo utilizzare facilmente il server DNS su Internet utilizzando il POD DNS esterno. Speriamo che tutti voi capiscano come possiamo configurare e utilizzare i DN esterni nella nostra applicazione Kubernetes. Gli screenshot che abbiamo allegato sono solo per la tua comprensione. Potresti facilmente testare tutti questi comandi sulla tua applicazione Kubernetes.