GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come configurare kubectl Port Forwarding

Introduzione

Port forward di Kubectl ti consente di accedere e interagire con i processi interni del cluster Kubernetes dal tuo localhost. Puoi utilizzare questo metodo per indagare sui problemi e modificare i tuoi servizi in locale senza che sia necessario esporli in anticipo.

Kubectl è il principale strumento da riga di comando per la gestione dei cluster Kubernetes. È essenziale per la distribuzione di applicazioni, l'amministrazione delle risorse del cluster e la creazione di framework complessi.

Questo breve tutorial mostra come utilizzare kubectl per il port forwarding su un pod in un cluster Kubernetes.

Prerequisiti

  • Un cluster Kubernetes
  • Un kubectl completamente configurato strumento da riga di comando

Come funziona Kubernetes Port Forwarding?

Anche se Kubernetes è un sistema di orchestrazione altamente automatizzato, il processo di port forwarding richiede l'input dell'utente diretto e ricorrente. Una connessione termina quando l'istanza del pod non riesce ed è necessario stabilire un nuovo inoltro immettendo manualmente lo stesso comando.

L'intero processo è semplificato dal fatto che kubectl ha già una funzionalità di port forwarding integrata.

  1. Un utente interagisce con Kubernetes utilizzando kubectl riga di comando sul loro computer locale.
  2. Il port-forward Il comando specifica il nome della risorsa del cluster e definisce il numero di porta a cui inoltrare la porta.
  3. Di conseguenza, il server API Kubernetes stabilisce un'unica connessione HTTP tra il tuo localhost e la risorsa in esecuzione sul tuo cluster.
  4. L'utente è ora in grado di attivare direttamente quel pod specifico, per diagnosticare un problema o eseguire il debug, se necessario.

Il port forwarding è un metodo che richiede molto lavoro. Tuttavia, in alcuni casi, è l'unico modo per accedere alle risorse interne del cluster.

Comandi di base per il port forward di kubectl

Il port-forward il comando stabilisce un tunnel dal pod di destinazione al tuo localhost. Il comando richiede di definire il tipo o il nome della risorsa, nonché i numeri di porta locale e remota:

kubectl port-forward TYPE/NAME [options] LOCAL_PORT:REMOTE_PORT

Se diversi pod corrispondono ai criteri del tipo/nome, per impostazione predefinita ne viene selezionato uno casuale. Per evitare tali incongruenze, definire un pod nel modo più preciso possibile. Puoi trovare il nome esatto del pod elencando manualmente i pod all'interno di uno spazio dei nomi digitando:

kubectl -n yournamespace get pods

L'elenco fornisce i nomi dei pod all'interno di quello spazio dei nomi.

port forward di kubectl a un pod specifico

Ad esempio, il comando seguente ti consentirà di accedere a una distribuzione MongoDB all'interno del tuo cluster. Il nome del pod è mongo-db-r3pl1ka3 e il numero di porta è 5762:

kubectl port-forward pod/mongo-db-r3pl1ka3 8080:5762

L'API Kubernetes ora è in ascolto sulla porta locale 8080 e inoltra i dati alla porta 5762 sul pod definito.

Porta locale casuale

Ascolta su una porta casuale in locale e inoltra alla porta 5762 all'interno del pod specificato:

kubectl port-forward pod/mongo-db-r3pl1ka3 :5762

Porta locale e remota corrispondente

Ascolta e inoltra i dati utilizzando porte identiche (8080, 5762) sia localmente che all'interno del pod specifico:

kubectl port-forward pod/mongo-db-r3pl1ka3 8080 5762

Indirizzo IP locale casuale

Ascolta sulla porta 8080 su qualsiasi indirizzo locale, inoltra alla porta 5762 nel pod specificato:

kubectl port-forward --address 0.0.0.0 pod/mongo-db-r3pl1ka3 8888:5762

Specifica l'indirizzo IP locale per il port forwarding

Ascolta sulla porta 8080 sull'host locale utilizzando l'IP definito, inoltra alla porta 5762 nel pod:

kubectl port-forward --address localhost,10.153.40.102 pod/mongo-db-r3pl1ka3 8080:5762

Utilizzare Deployment per selezionare il pod port forward

Ascolta e inoltra i dati utilizzando le stesse porte (8080 5762) sia localmente che all'interno del pod. La Distribuzione definisce quale pod deve essere utilizzato:

kubectl port-forward deployment/mydeployment 8080 5762

Consenti al servizio di definire il pod port forward

Ascolta e inoltra i dati utilizzando le stesse porte (8080 5762) sia localmente che all'interno del pod. Il Servizio seleziona quale pod deve essere utilizzato:

kubectl port-forward service/myservice 8080 5762

Cent OS
  1. Come impostare l'inoltro web

  2. Come configurare i server dei nomi in CWP

  3. Come configurare le impostazioni internazionali del sistema su CentOS 7

  4. Come aprire una porta in CentOS / RHEL 7

  5. Come eseguire l'inoltro ssh con AllowTcpForwarding impostato su no?

Come impostare un IP statico su Debian 11

Come abilitare SSH su CentOS

Come configurare il port forwarding dinamico SSH su Linux

Come impostare l'inoltro e-mail in cPanel

Come configurare il server DHCP su CentOS 8

Come impostare gli inoltri e-mail nei miei account e-mail?