Kubernetes-jakelun Asennus ja Käynnistys
Nyt kun sovelluksesi toimii sujuvasti konteissa, seuraava haaste on näiden konttien orkestrointi ja hallinta laajassa mittakaavassa. Tässä kohtaa Kubernetes astuu kuvaan.
Aloittaaksesi määrittelet sovelluksesi halutun tilan käyttäen YAML-tiedostoja. Yksi tiedosto kuvaa Deploymentin, joka huolehtii päivityksistä ja skaalaamisesta, kun taas toinen määrittelee Servicen, joka avaa sovelluksesi verkkoon ja tekee siitä käyttäjille saavutettavan.
YAML (YAML Ain't Markup Language) on ihmisen luettavissa oleva muoto konfiguraatiotiedostoille. Sitä käytetään usein infrastruktuurin kuvaamiseen, prosessien automatisointiin ja sovellusasetusten tallentamiseen.
Deployment varmistaa, että haluttu määrä sovellusinstansseja (Podit) on aina käynnissä ja mahdollistaa päivitysten sekä palautusten tekemisen helposti. Service avaa nämä kontit verkkoon ja jakaa saapuvan liikenteen niiden kesken.
Minikuben käynnistäminen
Minikube on kevyt työkalu, jonka avulla voit ajaa paikallisen Kubernetes-klusterin omalla tietokoneellasi. Se luo virtuaaliympäristön, jossa voit testata ja tutkia Kubernetesia ilman pilvipalveluita.
Kun olet asentanut Minikuben ja lisännyt sen järjestelmän PATH-muuttujaan, avaa PowerShell (tai haluamasi pääte) ja suorita:
Tämä komento tarkistaa, onko Minikube saatavilla, ja näyttää asennetun version.
Kun olet varmistanut, että Minikube on asennettu, käynnistä paikallinen Kubernetes-klusteri seuraavasti:
Tämä komento luo ja käynnistää paikallisen Kubernetes-klusterin koneellasi. Se lataa tarvittavat komponentit ja käynnistää ohjaustason sekä työntekijäsolmut.
Käyttöönotto: Sovelluksen julkaisu
Aloita luomalla deployment.yaml
-tiedosto. Deployment Kubernetesissa varmistaa, että tietty määrä Podeja (sovellusinstansseja) on aina käynnissä, ja niitä voidaan päivittää tai palauttaa ilman käyttökatkoa.
deployment.yaml
Tässä manifestissa replicas-parametri määrittää, kuinka monta Pod-instanssia tulisi olla käynnissä samanaikaisesti — tässä tapauksessa kaksi. Tietääkseen, mitä Podeja hallita, Deployment käyttää yhdistelmää selectorista ja labeleista: selector toimii suodattimena löytääkseen Podit, joilla on tietty label, ja Pod-malli määrittää kyseisen labelin. Kun labelit täsmäävät, Deployment pitää näitä Podeja ominaan ja huolehtii niiden lukumäärästä, päivittämisestä ja uudelleenkäynnistyksestä tarvittaessa.
Kaikki Podit käyttävät porttia 3000. Ne voivat kaikki käyttää samaa porttia, koska jokainen Pod toimii omassa eristetyssä verkkoavaruudessaan, joten niiden välillä ei ole ristiriitaa.
Service: Sovelluksen verkkoyhteys
Kun Deployment on luotu, tarvitaan Service tarjoamaan verkkoyhteys ja kuormantasauksen Podien välillä. Luo service.yaml
-tiedosto:
service.yaml
Tämä manifesti määrittelee Palvelun nimeltä my-app-service
, joka ohjaa liikenteen Podeihin, joilla on tunniste app: my-app
. Se kuuntelee ulkoisesti porttia 80 ja välittää pyynnöt porttiin 3000 Podin sisällä.
LoadBalancer
-tyyppi on tärkeä, koska se altistaa sovelluksen ulkoisesti ja jakaa liikenteen useiden Podien kesken.
Sovelluksen käyttöönotto Kubernetesissa
Kun YAML-tiedostot ovat valmiit, ne voidaan ottaa käyttöön klusterissa:
kubectl apply -f deployment.yaml
kubectl apply -f service.yaml
Komento kubectl apply -f
luo tai päivittää resurssit klusterissa YAML-tiedostojen sisällön perusteella.
Tilanteen tarkistaminen
Kun konfiguraatiotiedostot on otettu käyttöön, on tärkeää varmistaa, että kaikki on otettu käyttöön odotetusti. Koska Podit ja Palvelut käynnistyvät hetken viiveellä, aloita listaamalla käynnissä olevat Podit:
Jos deployment.yaml
-tiedostossa on määritelty replicas: 2
, kaksi Podia tulisi näkyä tulosteessa.
Varmistaaksesi, että Palvelu on käynnissä ja saavutettavissa:
Tämä näyttää Palvelun IP-osoitteen sekä portit, joiden kautta sovellukseen pääsee käsiksi.
Hanki palvelun URL-osoite
Voit käyttää sovellustasi suorittamalla seuraavan komennon PowerShellissä tai terminaalissa:
Tämä komento pyytää Minikubea palauttamaan URL-osoitteen, jossa sovelluksesi on saatavilla. Minikube tarkistaa luomasi palvelun (my-app-service
) ja antaa linkin, jonka voit avata selaimessa.
Sovelluksen skaalaaminen
Kubernetes mahdollistaa helposti käynnissä olevien Podien määrän säätämisen ilman, että sovellusta tarvitsee pysäyttää.
Esimerkiksi, jos haluat kasvattaa replikoiden määrän 2:sta 4:ään:
Suorittamalla kubectl get pods
uudelleen näet nyt neljä aktiivista Podia.
Kubernetes tarjoaa tehokkaat työkalut konttipohjaisten sovellusten hallintaan kaikissa mittakaavoissa.
Deployment varmistaa, että oikea määrä Podeja on käynnissä, ja mahdollistaa päivitykset tai palautukset helposti.
Service julkaisee sovelluksen verkkoon ja tasapainottaa saapuvan liikenteen.
YAML-määritystiedostot tekevät asetuksista selkeitä ja luettavia, kun taas kubectl
-komennot mahdollistavat näiden määritysten käyttöönoton ja hallinnan reaaliajassa.
1. Mikä on Deploymentin pääasiallinen tarkoitus Kubernetesissa?
2. Miksi useat Podit voivat käyttää samaa porttinumeroa (esim. 3000
) ilman ristiriitoja?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 3.7
Kubernetes-jakelun Asennus ja Käynnistys
Pyyhkäise näyttääksesi valikon
Nyt kun sovelluksesi toimii sujuvasti konteissa, seuraava haaste on näiden konttien orkestrointi ja hallinta laajassa mittakaavassa. Tässä kohtaa Kubernetes astuu kuvaan.
Aloittaaksesi määrittelet sovelluksesi halutun tilan käyttäen YAML-tiedostoja. Yksi tiedosto kuvaa Deploymentin, joka huolehtii päivityksistä ja skaalaamisesta, kun taas toinen määrittelee Servicen, joka avaa sovelluksesi verkkoon ja tekee siitä käyttäjille saavutettavan.
YAML (YAML Ain't Markup Language) on ihmisen luettavissa oleva muoto konfiguraatiotiedostoille. Sitä käytetään usein infrastruktuurin kuvaamiseen, prosessien automatisointiin ja sovellusasetusten tallentamiseen.
Deployment varmistaa, että haluttu määrä sovellusinstansseja (Podit) on aina käynnissä ja mahdollistaa päivitysten sekä palautusten tekemisen helposti. Service avaa nämä kontit verkkoon ja jakaa saapuvan liikenteen niiden kesken.
Minikuben käynnistäminen
Minikube on kevyt työkalu, jonka avulla voit ajaa paikallisen Kubernetes-klusterin omalla tietokoneellasi. Se luo virtuaaliympäristön, jossa voit testata ja tutkia Kubernetesia ilman pilvipalveluita.
Kun olet asentanut Minikuben ja lisännyt sen järjestelmän PATH-muuttujaan, avaa PowerShell (tai haluamasi pääte) ja suorita:
Tämä komento tarkistaa, onko Minikube saatavilla, ja näyttää asennetun version.
Kun olet varmistanut, että Minikube on asennettu, käynnistä paikallinen Kubernetes-klusteri seuraavasti:
Tämä komento luo ja käynnistää paikallisen Kubernetes-klusterin koneellasi. Se lataa tarvittavat komponentit ja käynnistää ohjaustason sekä työntekijäsolmut.
Käyttöönotto: Sovelluksen julkaisu
Aloita luomalla deployment.yaml
-tiedosto. Deployment Kubernetesissa varmistaa, että tietty määrä Podeja (sovellusinstansseja) on aina käynnissä, ja niitä voidaan päivittää tai palauttaa ilman käyttökatkoa.
deployment.yaml
Tässä manifestissa replicas-parametri määrittää, kuinka monta Pod-instanssia tulisi olla käynnissä samanaikaisesti — tässä tapauksessa kaksi. Tietääkseen, mitä Podeja hallita, Deployment käyttää yhdistelmää selectorista ja labeleista: selector toimii suodattimena löytääkseen Podit, joilla on tietty label, ja Pod-malli määrittää kyseisen labelin. Kun labelit täsmäävät, Deployment pitää näitä Podeja ominaan ja huolehtii niiden lukumäärästä, päivittämisestä ja uudelleenkäynnistyksestä tarvittaessa.
Kaikki Podit käyttävät porttia 3000. Ne voivat kaikki käyttää samaa porttia, koska jokainen Pod toimii omassa eristetyssä verkkoavaruudessaan, joten niiden välillä ei ole ristiriitaa.
Service: Sovelluksen verkkoyhteys
Kun Deployment on luotu, tarvitaan Service tarjoamaan verkkoyhteys ja kuormantasauksen Podien välillä. Luo service.yaml
-tiedosto:
service.yaml
Tämä manifesti määrittelee Palvelun nimeltä my-app-service
, joka ohjaa liikenteen Podeihin, joilla on tunniste app: my-app
. Se kuuntelee ulkoisesti porttia 80 ja välittää pyynnöt porttiin 3000 Podin sisällä.
LoadBalancer
-tyyppi on tärkeä, koska se altistaa sovelluksen ulkoisesti ja jakaa liikenteen useiden Podien kesken.
Sovelluksen käyttöönotto Kubernetesissa
Kun YAML-tiedostot ovat valmiit, ne voidaan ottaa käyttöön klusterissa:
kubectl apply -f deployment.yaml
kubectl apply -f service.yaml
Komento kubectl apply -f
luo tai päivittää resurssit klusterissa YAML-tiedostojen sisällön perusteella.
Tilanteen tarkistaminen
Kun konfiguraatiotiedostot on otettu käyttöön, on tärkeää varmistaa, että kaikki on otettu käyttöön odotetusti. Koska Podit ja Palvelut käynnistyvät hetken viiveellä, aloita listaamalla käynnissä olevat Podit:
Jos deployment.yaml
-tiedostossa on määritelty replicas: 2
, kaksi Podia tulisi näkyä tulosteessa.
Varmistaaksesi, että Palvelu on käynnissä ja saavutettavissa:
Tämä näyttää Palvelun IP-osoitteen sekä portit, joiden kautta sovellukseen pääsee käsiksi.
Hanki palvelun URL-osoite
Voit käyttää sovellustasi suorittamalla seuraavan komennon PowerShellissä tai terminaalissa:
Tämä komento pyytää Minikubea palauttamaan URL-osoitteen, jossa sovelluksesi on saatavilla. Minikube tarkistaa luomasi palvelun (my-app-service
) ja antaa linkin, jonka voit avata selaimessa.
Sovelluksen skaalaaminen
Kubernetes mahdollistaa helposti käynnissä olevien Podien määrän säätämisen ilman, että sovellusta tarvitsee pysäyttää.
Esimerkiksi, jos haluat kasvattaa replikoiden määrän 2:sta 4:ään:
Suorittamalla kubectl get pods
uudelleen näet nyt neljä aktiivista Podia.
Kubernetes tarjoaa tehokkaat työkalut konttipohjaisten sovellusten hallintaan kaikissa mittakaavoissa.
Deployment varmistaa, että oikea määrä Podeja on käynnissä, ja mahdollistaa päivitykset tai palautukset helposti.
Service julkaisee sovelluksen verkkoon ja tasapainottaa saapuvan liikenteen.
YAML-määritystiedostot tekevät asetuksista selkeitä ja luettavia, kun taas kubectl
-komennot mahdollistavat näiden määritysten käyttöönoton ja hallinnan reaaliajassa.
1. Mikä on Deploymentin pääasiallinen tarkoitus Kubernetesissa?
2. Miksi useat Podit voivat käyttää samaa porttinumeroa (esim. 3000
) ilman ristiriitoja?
Kiitos palautteestasi!