Deoarece nu există informații despre soluția exactă Kubernetes utilizată, ar putea fi dificil să identificăm soluția exactă.
Presupunând că există 2 opțiuni:
Docker Desktop cu Kubernetes
Minikube
Câteva soluții pentru ei ar putea fi:
Docker Desktop cu Kubernetes
Serviciu
de tip Echilibrarea greutății
Clusterul dvs. Kubernetes poate utiliza Serviciu
de tip Echilibrarea greutății
și fiți conectat la dvs gazdă locală
(Mac-ul dvs gazdă locală
).
Puteți verifica acest lucru rulând următorul exemplu:
$ kubectl creați implementarea nginx --image=nginx
$ kubectl expune implementarea nginx --port=80 --type=LoadBalancer
$ kubectl obține servicii
NUME TIP CLUSTER-IP EXTERN-IP PORT(E) Vârsta
kubernetes ClusterIP 10.96.0.1 <niciunul> 443/TCP 10d
nginx LoadBalancer 10.111.214.48 localhost 80:30032/TCP 77s
curl 127.0.0.1:80
/ curl kubernetes.docker.internal:80
<-- REDACTED -->
<title>Welcome to nginx!</title>
<-- REDACTED -->
O notă secundară!
Îl puteți modifica în continuare utilizând --port
(port pe dvs gazdă locală
) și --targetPort
(portul care ascultă în dvs Pod
) parametrii la utilizare $ kubectl expune...
Schimba NodePort
intervalul de porturi
Puteți urma acest răspuns în profunzime care vă va arăta cum vă puteți modifica kubeapi-server
pentru a schimba NodePort
interval de porturi (prin conectarea la Docker VM):
Utilizare Intrare
controlor
De asemenea, puteți utiliza un Intrare
controler care se va lega de Mac-ul tău gazdă locală
și vă va permite să utilizați Intrare
resursă (este în principal pentru HTTP
/HTTPS
dar cu unele ajustări poate trece TCP
/UDP
trafic). Aici puteți găsi mai multe informații despre acest subiect:
Minikube
Cu Minikube
pot exista o mulțime de variații din cauza --conducător auto
folosit.
Schimba NodePort
intervalul de porturi
Încă o dată, puteți urma răspunsul de mai jos pentru a schimba minikube
NodePort
interval de porturi:
Utilizare metalb
De asemenea, puteți utiliza metalb pentru a aloca adresele pentru dvs Serviciu
de tip Echilibrarea greutății
.
Pașii pentru a o face ar fi următorii:
$ minikube start --driver=hyperkit
$ suplimentele minikube activează metallb
$ lista de noduri minikube
(observați adresa IP a dvs minikube
)
Suplimentele $ minikube configurează metallb
(Puneți intervalul alocat lângă minikube
ip ca:
minikube ip
: 192.168.64.11
metalb start
: 192.168.64.100
capăt metalb
: 192.168.64.110
- Creați volumul de lucru și expuneți-l cu
Serviciu
de tip Echilibrarea greutății
$ curl SVC_EXTERNAL_IP:PORT
O notă secundară!
--driver=hyperkit
a fost folosit din cauza:
Deoarece utilizați un driver Docker pe darwin, terminalul trebuie să fie deschis pentru a-l rula.
Acest mesaj este legat de accesul dvs minikube
exemplu când se utilizează --driver=docker
și sunt limitări. Trebuie să utilizați serviciul minikube SERVICE_NAME
pentru a accesa Serviciu
(și terminalul trebuie să funcționeze în timp ce sunteți la el).
O notă secundară!
Consider că, ca măsură de soluție, puteți folosi și a $ kubectl port-forward
.
Resurse aditionale: