A Kubernetes egy olyan platform, amely kiküszöböli a konténeres alkalmazások telepítésével kapcsolatos manuális folyamatokat. A Kubernetes oktatóanyag ezen a blogján áttekintheti a többtartályos felügyeleti megoldáshoz kapcsolódó összes fogalmat.
Az oktatóanyag a következő témákkal foglalkozik:
- Kihívások konténeres hangszerelés nélkül
- Docker raj vagy Kubernetes
- Mi az a Kubernetes?
- Kubernetes funkciók
- Kubernetes építészet
- Kubernetes esettanulmány
- Hands-On
Mielőtt továbblépnék ebben a blogban, hadd tájékoztassam gyorsan a konténerezésről.
Tehát, mielőtt a konténerek létrejöttek volna, a fejlesztőknek és a tesztelőknek mindig volt tiff. Ez általában azért történt, mert ami a fejlesztői oldalon működött, az nem működne a tesztelés oldalán. Mindkettő különböző környezetekben létezett. Az ilyen esetek elkerülése érdekében a tárolókat úgy vezették be, hogy a fejlesztők és a tesztelők is ugyanazon az oldalon tartózkodtak.
Nagy mennyiségű konténer együttes kezelése is problémát jelentett. A konténerek futtatása során a termék oldalán néha kevés olyan kérdés merült fel, amelyek nem voltak jelen a fejlesztési szakaszban. Ez a fajta forgatókönyv bevezette a Container Orchestration rendszert.
Mielőtt belemerülnék a hangszerelési rendszerbe, hadd soroljam fel gyorsan a rendszer nélkül felmerülő kihívásokat.
konvertálja a dupla-t int-ba java-ban
Kubernetes oktatóanyag: Kihívások konténeres hangszerelés nélkül
Amint a fenti ábrán látható, amikor több szolgáltatás fut a tárolók belsejében, érdemes ezeket a tárolókat méretezni. Nagyüzemi iparban ezt nagyon nehéz megtenni. Ennek oka, hogy növelné a szolgáltatások fenntartásának költségeit, és összetettebbé tenné egymás mellett történő futtatásukat.
Most, hogy elkerüljük a szolgáltatások manuális beállítását és a kihívások leküzdését, valami nagyra volt szükség. Itt jön a képbe a Container Orchestration Engine.
Ez a motor lehetővé teszi több konténer megszervezését oly módon, hogy az összes mögöttes gép elinduljon, a konténerek egészségesek és fürtözött környezetben legyenek elosztva. A mai világban főleg két ilyen motor létezik: Kormányzók & Docker Raj .
Kubernetes oktatóanyag: Kubernetes vs Docker Swarm
Kormányzók és Docker Raj a konténeres hangszerelés eszközei a mai piacon. Tehát mielőtt prod-ban használná őket, tudnia kell, hogy pontosan mik és hogyan működnek.
Továbbá, a blogban elmélyülök a Kubernetesben, de a Dockerről való tudnivalókra kattinthat .
Amint a fenti képre hivatkozhat, a Kubernetes a Docker Swarmhoz képest nagy aktív közösséggel rendelkezik, és számos szervezetben lehetővé teszi az automatikus méretezést. Hasonlóképpen, a Docker Swarm könnyen indítható fürtjével rendelkezik, összehasonlítva a Kubernetes-szel, de ez a Docker API képességeire korlátozódik.
Nos, emberek, nem csak ezek a különbségek vannak a legfontosabb eszközök között. Ha meg szeretné tudni a konténeres hangszerelési eszközök részletes különbségeit, kattintson a gombra
Szeretne többet tudni a Kubernetesről?Ha a kettő közül választhatnék, akkor Kubernetesnek kell lennie, mivel a konténereket kezelni kell, és csatlakozni kell a külvilághoz olyan feladatokhoz, mint az ütemezés, a terheléselosztás és az elosztás.
De ha logikusan gondolkodik, a Docker Swarm jobb megoldást kínálna, mivel a Docker tetején fut? Ha a helyedben lennék, határozottan összezavarodtam volna, hogy melyik eszközt használjam. De hé, Kubernetes vitathatatlan vezető szerepet tölt be a piacon, és a jobb funkciókkal rendelkező Docker konténerek tetején is fut.
Most, hogy megértette a Kubernetes szükségességét, ez egy jó idő, amit mondok Mi az a Kubernetes?
Kubernetes oktatóanyag: Mi az a Kubernetes?
egy nyílt forráskódú rendszer, amely kezeli a konténerek ütemezésének munkáját egy számítási fürtön, és kezeli a munkaterheléseket annak biztosítására, hogy azok a felhasználó szándéka szerint működjenek. A Google ötletgazdájaként kiváló közösséget kínál, és remekül együttműködik az összes felhőszolgáltatóval, hogy a több konténeres menedzsment megoldás.
Kubernetes oktatóanyag: Kubernetes funkciók
A Kubernetes jellemzői a következők:
- Automatizált ütemezés: A Kubernetes fejlett ütemezőt kínál a konténer elindításához a fürtcsomópontokon az erőforrásigényük és egyéb korlátok alapján, a rendelkezésre állás feláldozása nélkül.
- Öngyógyító képességek: A Kubernetes lehetővé teszi a konténerek cseréjét és átütemezését, amikor a csomópontok elpusztulnak. Megöli azokat a konténereket is, amelyek nem reagálnak a felhasználó által meghatározott állapotfelmérésre, és nem hirdeti azokat az ügyfelek számára, amíg nem állnak készen a kiszolgálásra.
- Automatizált bevezetés és visszagörgetés: A Kubernetes végrehajtja az alkalmazás vagy annak konfigurációjának módosításait, miközben figyelemmel kíséri az alkalmazás állapotát annak biztosítására, hogy az ne ölje meg egyszerre az összes példányát. Ha valami nem stimmel, a Kubernetes segítségével visszavonhatja a változtatást.
- Vízszintes méretezés és terheléselosztás: A Kubernetes egy egyszerű paranccsal, felhasználói felület használatával, vagy a CPU-használat alapján automatikusan bővítheti és kicsinyítheti az alkalmazást a követelményeknek megfelelően.
Kubernetes oktatóanyag: Kubernetes építészet
A Kubernetes Architecture a következő fő elemekkel rendelkezik:
- Mester bólint
- Munkavállaló / szolga csomópontok
Mindegyiket egyenként fogom megvitatni. Tehát kezdetben kezdjük azzal, hogy megértsük a Master Node .
Master Node
A fő csomópont felelős a Kubernetes-fürt kezeléséért. Ez elsősorban az összes adminisztratív feladat belépési pontja. A fürtben több fő csomópont is lehet, hogy ellenőrizze a hibatűrést.
Amint a fenti ábrán látható, a fő csomópont különféle összetevőkkel rendelkezik, például API Server, Controller Manager, Scheduler és ETCD.
- API szerver: Az API szerver a fürt vezérléséhez használt összes REST parancs belépési pontja.
- Vezérlő menedzser: Olyan démon, amely szabályozza a Kubernetes fürtöt, és kezeli a különböző, nem végződő vezérlő hurokokat.
- Ütemező: Az ütemező a feladatokat slave csomópontokra ütemezi. Tárolja az erőforrás-használati információkat az egyes rabszolgacsomópontokról.
- ETCD: Az ETCD egy egyszerű, elosztott, következetes kulcsérték-tároló. Főleg megosztott konfigurációhoz és szolgáltatás felfedezéshez használják.
Munkavállaló / szolga csomópontok
A munkavállalói csomópontok tartalmazzák az összes szükséges szolgáltatást a tárolók közötti hálózat kezeléséhez, a fő csomópontgal való kommunikációhoz és erőforrások hozzárendeléséhez az ütemezett tárolókhoz.
Amint a fenti ábrán látható, a munkáscsomópont különféle összetevőkkel rendelkezik, például Docker Container, Kubelet, Kube-proxy és Pods.
- Docker konténer: A Docker a munkás minden csomópontján fut, és futtatja a konfigurált hüvelyeket
- Kubelet: A Kubelet megkapja a Pod konfigurációját az API szerverről, és biztosítja, hogy a leírt tárolók működjenek.
- Kuba proxy: A Kube-proxy hálózati proxyként és terheléselosztóként működik egy munkához egyetlen munkacsomóponton
- Hüvelyek: A hüvely egy vagy több olyan tároló, amely logikusan együtt fut a csomópontokon.
Ha részletes magyarázatot szeretne kapni a Kubernetes Architecture összes eleméről, akkor tekintse meg ezt: blog a
Szeretne minősítést szerezni a Kubernetesben?Kubernetes oktatóanyag: Kubernetes esettanulmány
Y ahoo! JAPÁN egy webszolgáltató, amelynek székhelye a kaliforniai Sunnyvale-ban található. Mivel a vállalat a hardver virtualizálását tűzte ki célul, a vállalat elkezdte használni OpenStack Belső környezetük nagyon gyorsan megváltozott. A felhő- és konténertechnológia fejlődése miatt azonban a vállalat a capát akartaszolgáltatás indítása különböző platformokon.
Probléma: Hogyan készítsünk képeket az összes szükséges platformhoz egy alkalmazáskódból, és telepítsem ezeket a képeket minden platformra?
A jobb megértés érdekében olvassa el az alábbi képet. Amikor a kód megváltozik a kódnyilvántartásnál, akkor a csupasz fémképeket, a Docker-tárolókat és a virtuálisgép-képeket folyamatos integrációs eszközök hozzák létre, betolják a képnyilvántartásba, majd telepítik az egyes infrastrukturális platformokra.
Most összpontosítsunk a konténer munkafolyamatára, hogy megértsük, miként használták Kuberneteset telepítési platformként. Tekintse meg az alábbi képet, hogy betekinthessen a platform architektúrájába.
Az OpenStack példányokat a Docker, a Kubernetes, a Calico stb. Tetején különféle műveletek végrehajtására használják, például Container Networking, Container Registry stb.
Ha számos klasztered van, akkor nehéz lesz őket jól kezelni?
Tehát csak egy egyszerű, alap OpenStack-fürtöt akartak létrehozni, amely biztosítja a Kubernetes számára szükséges alapvető funkciókat, és megkönnyíti az OpenStack környezet kezelését.
A Képalkotó munkafolyamat és a Kubernetes kombinációjával felépítették az alábbi eszköztárat, amely megkönnyíti a kódnyújtástól a telepítésig.
def __init __ (én):
Ez a fajta eszközlánc gondoskodott arról, hogy a termelés telepítésének minden olyan tényezőjét figyelembe vegyék, mint például a bérbeadás, a hitelesítés, a tárolás, a hálózatépítés és a szolgáltatás felfedezése.
Így emberek, Jehu! JAPÁN beépített egy automatizálási eszközláncot az OpenStacken futó Kubernetes „egy kattintással” történő központi telepítéséhez, a Google és Solinea .
Kormányzók bemutatója: gyakorlati
Ebben a gyakorlati útmutatóban megmutatom, hogyan hozhat létre központi telepítést és szolgáltatást. Az Amazon EC2 példányt használom a Kubernetes használatához. Nos, az Amazon előállt Amazon Elastic Container Service mert Kormányzók (Amazon EKS) , amely lehetővé teszi számukra, hogy Kubernetes-fürtöket nagyon gyorsan és egyszerűen hozzanak létre a felhőben. Ha többet szeretne megtudni róla, hivatkozhat a blogra
1. lépés: Első hozzon létre egy mappát amelyen belül létrehozza telepítését és szolgáltatását. Ezt követően használjon szerkesztőt és nyisson meg egy Telepítési fájlt .
mkdir handsOn cd handsOn vi Deploy.yaml
2. lépés: A telepítési fájl megnyitása után említse meg a telepíteni kívánt alkalmazás összes specifikációját. Itt próbálok telepíteni egy httpd Alkalmazás.
apiVersion: apps / v1 # Meghatározza az API verziót: Deployment #Kinds paraméter meghatározza, hogy melyik fájlról van szó, itt található a Telepítés metaadatai: név: dep1 # A telepítési specifikáció nevét tárolja: # A Specifikációk alatt megemlít minden a telepítési replikák specifikációi: 3 # A replikák száma 3 lenne: selector: matchLabels: app: httpd # A keresendő címke neve: httpd template: metadata: labels: app: httpd #Sablon neve httpd spec: # Under Specifikációk, megemlíti a konténerek konténereinek összes specifikációját: - név: httpd # A konténerek neve httpd kép lesz: httpd: latest #A letöltendő kép a következő: httpd: legújabb portok: - containerPort: 80 #Az alkalmazás ki lenne téve a 80-as porton
3. lépés: A telepítési fájl megírása után alkalmazza a központi telepítést a következő paranccsal.
kubectl Apply -f Deploy.yaml
Itt az -f egy zászló név, amelyet használunktreszelnév.
4. lépés: Miután a telepítést alkalmazta, szerezze be a futó podok listáját.
kubectl hüvelyeket kap - túl széles
Itt a -o széles elemeket használják annak ismeretében, hogy melyik csomóponton fut a telepítés.
5. lépés: Miután létrehozott egy központi telepítést, most létre kell hoznia egy szolgáltatást. Ehhez ismét használjon szerkesztőt, és nyisson meg egy üres részt szolgáltatás. yaml fájl .
vi service.yaml
6. lépés: A szolgáltatásfájl megnyitása után említse meg a szolgáltatás összes specifikációját.
apiVersion: v1 # Meghatározza az API verzió típusát: A Service #Kinds paraméter meghatározza, hogy melyik fájlról van szó, itt a Szolgáltatás metaadatai: név: netsvc # A szolgáltatás specifikációjának nevét tárolja: # A Specifikációk alatt megemlít minden specifikációt a szolgáltatás típusához: NodePort választó: alkalmazás: httpd portok: -protokoll: TCP-port: 80 targetPort: 8084 # A célport száma 8084
7. lépés: Miután megírta a szervizfájlt, alkalmazza a szervizfájlt a következő paranccsal.
kubectl Apply -f service.yaml
8. lépés: Most, miután a szolgáltatást alkalmazta annak ellenőrzésére, hogy a szolgáltatás fut-e vagy sem, használja a következő parancsot.
kubectl get svc
9. lépés: Most, hogy megtekinthesse a szolgáltatás specifikációit, és ellenőrizze, hogy melyik végpontról van szóhozzákötve használja a következő parancsot.
kubectl írja le svc
10. lépés: Mivel az amazon ec2 példányt használjuk, a weboldal beolvasásához és a kimenet ellenőrzéséhez használja a következő parancsot.
curl ip-cím
Ha relevánsnak találta ezt a Kubernetes bemutató blogot, nézze meg a az Edureka, egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóval rendelkező hálózata elterjedt az egész világon.
Van egy kérdésünk? Kérjük, említse meg a megjegyzések részben. ” Kubernetes bemutató ”És visszatérek hozzád.