Du trenger følgende verktøy installert og riktig konfigurert i systemet ditt før du begynner fremover:
Når du har installert disse verktøyene, er du klar til å eksponere en Kubernetes -tjeneste for en ekstern IP -adresse.
Hvordan kan jeg gjøre en Kubernetes -tjeneste tilgjengelig for eksterne IP -adresser?
Her er en trinn-for-trinns guide for å utsette en Kubernetes-tjeneste for en ekstern IP-adresse.
Trinn 1: Start Minikube
La oss starte med å sette i gang Minikube -klyngen. Det er viktig å starte Minikube -klyngen hver gang du trenger å konfigurere noe eller kjøre applikasjonene dine i Kubernetes -miljøet ditt. Å starte Minikube -klyngen sikrer riktig at Minikube -klyngen er i gang og går og er klar til å utføre søknaden din. Derfor er det bare å bruke kommandoen som er vist nedenfor for å starte Minikube -klyngen:
Kalsoom@Kalsoom-VirtualBox> Start Minikube
Trinn 2: Opprett en distribusjon
I denne guiden utsetter vi Kubernetes -tjenesten for en ekstern IP -adresse ved å bruke en distribusjon. Vi har konfigurasjonen definert i Load-Balancer-Example.YAML -fil som vi vil bruke for å opprette en distribusjon i klyngen. For å opprette distribusjonen, vil vi utføre følgende kommando:
kalsoom@kalsoom -virtualbox> Kubectl Bruk -f https: // k8s.io/eksempler/service/last-balanser-eksemple.Yaml
Som vist ble det generert en utplassering med tittelen Hello-World.
Trinn 3: Bekreft distribusjonen
La oss nå sjekke hva slags distribusjon som er opprettet og tilhørende detaljer. For å bekrefte distribusjonen, vil kommandoen gitt nedenfor bli brukt:
Kalsoom@Kalsoom-VirtualBox> Kubectl Få distribusjoner Hello-World
Denne kommandoen vil vise detaljene i distribusjonen, se utdataene nedenfor:
Som vist, er distribusjonen Hello-World blitt opprettet med et replikasett som inneholder fem pods. Hver av de fem podene vil kjøre Hello-World-applikasjonen. Imidlertid har denne kommandoen vist en kort detalj om distribusjonen, hvis du vil sjekke flere detaljer om distribusjonen, kan du bruke følgende kommando:
Kalsoom@Kalsoom-VirtualBox> Kubectl Beskriv distribusjoner Hello-World
Kommandoen 'Kubectl beskriver' gir en detaljert beskrivelse av distribusjonen som hjelper deg å vite mer om distribusjonen. Se utdataene nedenfor for å få en detaljert beskrivelse av distribusjonen:
Trinn 4: Bekreft replikasettene objekter
Som vi vet, er distribusjonen blitt opprettet med et Replicaset -objekt. Så la oss sjekke detaljene i disse objektene. For å inspisere Replicasets detaljer, kan vi bruke kommandoen som er oppført nedenfor:
Kalsoom@Kalsoom-VirtualBox> Kubectl Få replikasetter
Som vist inkluderer detaljene i replikasettene: navn, ønsket, strøm, klar og alder. Hvis du vil vite mer om replikasettene til distribusjonen, kan du bruke følgende kommando:
Kalsoom@Kalsoom-VirtualBox> Kubectl Beskriv replikasetter
Denne kommandoen vil gi deg de dyptgående detaljene i replikasettene som er tilknyttet Hello-World-distribusjonen, se utdataene gitt i skjermdumpen nedenfor:
Trinn 5: Opprett et tjenesteobjekt for å eksponere distribusjonen
La oss nå avsløre distribusjonen ved å bruke et tjenesteobjekt. Når vi utsetter Kubernetes -tjenesten for en ekstern IP ved hjelp av en distribusjon, trenger vi et serviceobjekt for å avsløre distribusjonen.
Kalsoom@Kalsoom-VirtualBox> Kubectl Expose Deployment Hello-World-Type = LoadBalancer --Name = My-Service
Som du ser, er det to flagg som brukes med kommandoen, -type = LoadBalancer og -navn = My -Service. Det første flagget bestemmer hvilken type balanser og det andre flagget bestemmer navnet på tjenesteobjektet. La oss nå referere til utdataene gitt nedenfor:
Som du kan se i utdataene gitt ovenfor, er et serviceobjekt som heter My-Service blitt utsatt for utsatt.
Trinn 6: Få detaljene i tjenesteobjektet
Neste trinn er å se detaljene i tjenesteobjektet som vi har laget tidligere. Vi kan bruke kommandoen gitt nedenfor for å få detaljene i tjenesteobjektet:
Kalsoom@Kalsoom-VirtualBox> Kubectl Få service my-service
Kommandoen 'Kubectl Get' brukes til å få tilgang til klyngen, pod, node eller noe i Kubernetes -miljøet. Vi prøver å få detaljene i tjenesteobjektet. Så vi har levert "Services" -flagget etterfulgt av tjenesteobjektnavnet My-Service. Se utgangen nedenfor:
Igjen, hvis du trenger å vite mer om tjenesteobjektet, kan du alltid bruke 'Kubectl beskriv' -kommandoen. Den komplette kommandoen er gitt nedenfor for din referanse:
Kalsoom@Kalsoom-VirtualBox> Kubectl Beskriv tjenester My-Service
Etter å ha utført denne kommandoen, får du en lignende utdata som den som er gitt nedenfor:
Fra utgangen over kan du merke at IP -adressen er 10.110.159.180. Porten som brukes er 8080 og NodePort er 30215, mens det ikke er noen endepunkter, og IP -adressen tilhører IPv4 -familien.
Trinn 7: Sjekk podadressen
Nå som vi kjenner detaljene i tjenesteobjektet, kan vi sjekke adressen til belgene som de for øyeblikket kjører Hello-World-applikasjonen. Kommandoen beskrevet nedenfor gjør det enkelt å oppnå dette:
kalsoom@kalsoom -virtualbox> Kubectl Get Pods -output = Wide
Denne kommandoen vil vise oss adressen til belgene som kjører Hello-World-applikasjonen, se utdataene gitt i øyeblikksbildet nedenfor:
Så dette er hvordan du utsetter Kubernetes -tjenester for en ekstern IP -adresse.
Trinn 8: Rydd opp
Etter å ha utsatt Kubernetes -tjenestene for en ekstern IP -adresse, må du sørge for at du sletter tjenesteobjektet sammen med distribusjonen. Dette kan gjøres med følgende kommando:
Kalsoom@Kalsoom-VirtualBox> Kubectl Delete Services My-Service
Med denne kommandoen vil tjenesteobjektet bli fjernet fra klyngen:
For å slette den komplette distribusjonen inkludert belg og replikasett, bruk følgende kommando:
Kalsoom@Kalsoom-VirtualBox> Kubectl Delete Deployment Hello-World
Konklusjon
I denne guiden lærte vi hvordan vi kan eksponere Kubernetes -tjenestene på en ekstern IP -adresse. Ved hjelp av en trinn-for-trinns guide utsatte vi en Kubernetes-tjeneste for en ekstern IP-adresse ved hjelp av en distribusjon. Etter å ha utsatt Kubernetes -tjenesten for en ekstern IP -adresse, utførte vi også en riktig opprydningsprosess.