Porta kubectl in avanti

Porta kubectl in avanti
L'interruzione di una porta utilizzando Kubectl è relativamente semplice, sebbene funzioni solo con singoli baccelli ma non con servizi. Port Forwarding è uno strumento prezioso per il debug di diverse applicazioni e distribuzioni nel cluster Kubernetes. Per illustrazione, se uno dei tuoi baccelli si comporta in modo strano, dovrai collegarlo direttamente ad esso. Poiché si tratta di un'impostazione di microservizio, è possibile utilizzare il port forwarding per comunicare con un servizio back-end che altrimenti sarebbe nascosto. Il kubelet fornisce tutte le informazioni inserite nel flusso sul baccello di destinazione e sulla porta. Durante la progettazione di applicazioni Kubernetes, è comune desiderare l'uso immediato di un servizio dall'ambiente circostante senza esporlo tramite un bilanciamento del carico o forse una risorsa di ingresso.

Possiamo usare Kubectl per creare un proxy che inoltra tutto il traffico da una porta locale a una porta collegata al nostro pod scelto. L'istruzione porta-forward di Kubectl può essere utilizzata per raggiungere questo obiettivo. Il port-forward di Kubectl invia un appello all'API di Kubernetes. Ciò implica che la macchina che esegue richiede l'accesso al server API e tutte le comunicazioni vengono tunnel tramite una singola connessione HTTP. Passando una (o più) porte locali a un pod, possiamo accedere al contenuto del contenitore con questo comando. Questo comando si comporta in modo efficace quando è necessario eseguire il debug di un pod malfunzionante. Parleremo di un metodo passo-passo per controllare l'inoltro della porta usando Kubectl.

Prerequisiti

Per utilizzare Kubectl per inoltrare una porta, dobbiamo prima verificare il sistema operativo. Nel nostro caso, stiamo gestendo Ubuntu 20.04 su un laptop. Puoi, tuttavia, esaminare distribuzioni Linux alternative per vedere se soddisfano le tue esigenze. Il cluster minikube è necessario per l'esecuzione dei servizi Kubernetes su Linux. È necessario avviare un cluster minikube sul tuo sistema per implementare questo tutorial in modo efficace.

Metodo per inoltrare la porta usando Kubectl in Kubernetes

Per inoltrare la porta usando Kubectl in Kubernetes, è necessario seguire i passaggi prescritti spiegati in questo tutorial.

Per impostare un cluster di minikube sul tuo Ubuntu 20.04 Sistema, usa il terminale della riga di comando. Puoi usare uno dei due metodi per aprirlo:

  • Cercare "terminale"In Ubuntu 20.04 Sezione di ricerca dell'applicazione del sistema.
  • Usa il tasto di scelta rapida "Ctrl+alt+t".

È possibile avviare in modo efficiente il terminale selezionando uno dei metodi sopra descritti. Una volta terminato l'apertura del terminale, è necessario eseguire il comando aggiunto di seguito per avviare il cluster Minikube:

$ Minikube cluster

Si consiglia di non uscire dal terminale fino a quando il minikube non sarà iniziato perché l'intera procedura richiederà alcuni minuti. Il passo più significativo in questo tutorial è creare un elenco di tutte le informazioni sui pod nel sistema. Il seguente comando elencato dovrebbe essere eseguito sul terminale per elencare i baccelli:

$ kubectl ottieni baccelli

Potresti vedere i nomi, lo stato, i riavvii e le età di tutti i pod che operano nel sistema. È possibile elencare individualmente i pod all'interno di uno spazio dei nomi per trovare il nome di pod specifico eseguendo il seguente comando:

$ kubectl -n ottieni baccelli

Può essere sostituito con uno dei nomi desiderati. L'output visualizzerà l'elenco dei pod inclusi nello spazio dei nomi del sistema kube.

$ Kubectl Port-forward 8080: 5762

Può essere cambiato in quello desiderato. L'output visualizza che la porta sta inoltrando in modo efficace.

Conclusione

Per un baccello Kubernetes, hai configurato la port forwarding. È possibile utilizzare questo metodo per eseguire il debug di distribuzioni affrontando le porte che non sono normalmente esposte. All'interno delle distribuzioni del contenitore, è possibile aggiungere questa tecnica fondamentale per attività come database, applicazione o risoluzione dei problemi di rete. Spero che tu possa facilmente inoltrare la porta usando kubectl.