GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nastavit přesměrování portů kubectl

Úvod

Kubectl port-forward umožňuje přístup a interakci s interními procesy clusteru Kubernetes z vašeho localhostu. Pomocí této metody můžete prozkoumat problémy a upravit své služby lokálně, aniž byste je museli předem odhalit.

Kubectl je hlavní nástroj příkazového řádku pro správu clusterů Kubernetes. Je nezbytný pro nasazování aplikací, správu klastrových zdrojů a budování komplexních rámců.

Tento stručný výukový program vám ukáže, jak použít kubectl k přesměrování na modul v clusteru Kubernetes.

Předpoklady

  • Cluster Kubernetes
  • Plně nakonfigurovanýkubectl nástroj příkazového řádku

Jak funguje předávání portů Kubernetes?

Přestože je Kubernetes vysoce automatizovaný orchestrační systém, proces přesměrování portů vyžaduje přímý a opakovaný uživatelský vstup. Připojení se ukončí, jakmile instance modulu selže, a je nutné vytvořit nové přesměrování ručním zadáním stejného příkazu.

Celý proces je zjednodušen tím, že kubectl již má vestavěnou funkci přesměrování portů.

  1. Uživatel komunikuje s Kubernetes pomocí kubectl příkazového řádku na jejich místním počítači.
  2. port-forward příkaz určuje název klastrového prostředku a definuje číslo portu, na který má být port přesměrován.
  3. V důsledku toho server Kubernetes API vytvoří jediné připojení HTTP mezi vaším localhostem a prostředkem běžícím na vašem clusteru.
  4. Uživatel může nyní přímo zapojit konkrétní pod, buď za účelem diagnostiky problému, nebo ladění, je-li to nutné.

Přesměrování portů je metoda náročná na práci. V některých případech je to však jediný způsob přístupu k interním zdrojům klastru.

Základní příkazy kubectl port-forward

port-forward příkaz vytvoří tunel z cílového modulu do vašeho localhost. Příkaz vyžaduje, abyste definovali typ nebo název zdroje a také čísla místních a vzdálených portů:

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

Pokud kritériím typu/názvu odpovídá několik podů, ve výchozím nastavení se vybere náhodný. Abyste se vyhnuli takovým nesrovnalostem, definujte lusk co nejpřesněji. Přesný název podu můžete najít ručním uvedením podů v jmenném prostoru zadáním:

kubectl -n yournamespace get pods

Seznam obsahuje názvy podů v daném jmenném prostoru.

kubectl port-forward na konkrétní pod

Například následující příkaz vám umožní přístup k nasazení MongoDB v rámci vašeho clusteru. Název modulu je mongo-db-r3pl1ka3 a číslo portu je 5762:

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

Kubernetes API nyní naslouchá na místním portu 8080 a předává data na port 5762 na definovaném modulu.

Náhodný místní port

Poslouchejte lokálně na náhodném portu a přesměrujte na port 5762 v rámci zadaného modulu:

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

Odpovídající místní a vzdálený port

Poslouchejte a předávejte data pomocí identických portů (8080, 5762) lokálně i v rámci konkrétního modulu:

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

Náhodná místní IP adresa

Poslouchejte na portu 8080 na jakékoli místní adrese, přepošlete na port 5762 v zadaném modulu:

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

Zadejte místní IP adresu pro přesměrování portů

Poslouchejte na portu 8080 na localhost pomocí definované IP adresy, předejte na port 5762 v modulu:

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

Pomocí Deployment vyberte modul pro předávání portů

Poslouchejte a předávejte data pomocí stejných portů (8080 5762) lokálně i v modulu. Nasazení definuje, který modul se má použít:

kubectl port-forward deployment/mydeployment 8080 5762

Povolit službě definovat modul pro předávání portů

Poslouchejte a předávejte data pomocí stejných portů (8080 5762) lokálně i v modulu. Služba vybere, který modul se má použít:

kubectl port-forward service/myservice 8080 5762

Cent OS
  1. Jak nastavit přesměrování webu

  2. Jak nastavit jmenné servery v CWP

  3. Jak přesměrovat ssh s AllowTcpForwarding nastaveným na ne?

  1. Jak nastavit SSH tunelování

  2. Nastavení serveru DHCP na CentOS 8 – Jak na to?

  3. Jak změnit port SSH v CentOS

  1. Jak nastavit Wireguard VPN na CentOS 8

  2. Jak nastavit národní prostředí systému na CentOS 7

  3. Jak otevřít port v CentOS / RHEL 7