Ismerkedek a Kubernetes-szel. Nagyon tetszik, lenyűgöz, szeretem...
Mielőtt elkezdenék munkát keresni ezen a területen, jó lenne ha legalább alapvető ismeretekkel rendelkeznék, működésben képben lennék.
Kérlek ajánljatok tutorial-t, videót, bármit ami segít megismerni! Elképesztő mennyiségű anyag érhető el, kezdőként nehéz eldönteni, mi jelent valódi értéket.
Milyen eszközökkel érdemes ismerkedni, kipróbálni vagy legalább tudni, hogy mire való?
Pl. ez a válogatott lista is eléggé terjedelmesnek tűnik nekem:
https://collabnix.github.io/kubetools/
Jó lenne tudni melyik az ígéretesebb, hasznosabb.
Érdemes specializálódni? Pl. vonz a monitorozás, optimalizálás. Szeretem nyomozni mi falja fel a memóriát vagy használja túlzottan a procit, azonosítani a lassító okot, megoldást találni.
Megnyugtató lenne tudni, hogy van erre igény és ez esetben több időt szánnék Prometheus, Jaeger, Kiali és hasonló eszközökre.
Hozzászólások
Én az ő videóin indultam el: https://www.youtube.com/c/TechWorldwithNana
Leginkább szerintm ezzel kezdj: https://www.youtube.com/watch?v=X48VuDVv0do
Olvasni szeretsz vagy videót nézni?
https://iotguru.cloud
Tekintve, hogy ez egy nyilvános fórum és a téma másokat is érdekelhet, szerintem meséld el nyugodtan mindkettőről, amit tudsz.
Science for fun...
Én olvasni. :) Alig rejtett sub...
Lehet mondani, hogy köcsög vagyok, de szerintem: https://kubernetes.io/docs/home/
Meglepően jó és naprakész a dokumentációja, igen kevés dolgot kellett máshonnan megszereznem. A legtöbb tutorial és videó több mint egy éves, könnyen bele tudsz szaladni abba a hibába, hogy már megváltozott az API.
https://iotguru.cloud
sub
// Happy debugging, suckers
#define true (rand() > 10)
ha fizetős is lehet akkor slapic-nak van kubernetes kezdőknek videója is.
remélem indulok a legsemmitmondóbb komment cimért :)
ne használd
Biztos el tudja dönteni, mivel akarja a szabadidejét tölteni.
Szerintem a címben lévő felkérésre válaszolt, bár valóban erősebb lenne indoklással és alternatíva javaslással.
A kürtőskalács egy nagy lyuk, tésztával faszán körbetekerve.
Fura egy ízlésed van, mit ne mondjak (:)).
Szado-mazo hajlamokra utal.
Dockerben expert vagy már?
Szerintem elsőnek azt érdemes kitanulgatni.
Egyébként én mindkettőt úgy tanultam meg, hogy feladataim, problémáim voltak és azokra kerestem megoldást a fenti tech-ben.
Én nem hiszek abban, hogy üresjáratban ki lehetne tanulni egy ilyen cuccot. Bár tény, sokan csinálják meg nézik a videókat. Nekem nem jöttek be.
Van egy probléma, és akkor abban addig kutatok míg sikerül megoldanom, illetve kitapasztalnom a lehetőségeket. Mivel több lehetőség is van és nem minden esetben van "jó" megoldás. Van amikor több jó megoldás van, van amikor az adott probléma dönti el, hogy épp melyik lesz a megfelelő.
Most dobták ki a Docker-t az 1.24-ben: https://kubernetes.io/blog/2020/12/02/dont-panic-kubernetes-and-docker/
https://iotguru.cloud
Csak a futtató környezet, ami végül dobtak (régóta nem is ez az ajánlott runtime), az UI (Dockerfile) továbbra is használható, amit otthon megcsinálsz Dockerrel, azt feltöltheted a k8s-be.
Értem, de ha üzemeltetőként akarsz foglalkozni Kubernetes dolgokkal, akkor a Docker, mint olyan, már semmi előnyt nem ad, sőt. A Dockerfile meg alapvetően OCI.
https://iotguru.cloud
És Dockerfileon kívül van még valami, amivel szokás konténereket csinálni (vagyis inkább leírni)?
(Ja, most látom lentebb, buildah)
Hogyne lenne: Podman, LXD, Containerd (ami ugye RunC alapú), Buildah, BuildKit, Kaniko, RunC, hogy csak a nagyobbakat említsem, nyilván egy részük container engine is. Ebből a Kaniko és a Containerd az, amit most érdemes figyelni, de bármelyik még lenyomhatja a többit.
https://iotguru.cloud
Dockert csak dev/test-re használom. Production alatt csak a buildelt image-t húzom le a registry-ből K8S/AKS stb alatt.
Természetesen nem csak a docker létezik, de eléggé elterjedt és egyszerű. Én szeretem és használom. Ennyi. Egyelőre nem láttam értelmét váltani csak azért mert... Max azért lenne hasznos más eszközöket is kipróbálni, mert így bővülhet a tapasztalatom.
Ahogy _Franko_ is irta fent, a sajat doksija kivalo.
Az erdeklodesed alapjan a kotelezo kort tudd le: kubernetes the hard way.
Utana A Cloud Guru videoi, meginkabb a Pluralsight anyagai amik nalunk bevaltak.
Szerintem a docker mellé nem árt utánajárni a OCI konténerezésnek is, pl. buildah, de a privilégiumok nélküli kaniko-t is (bizonyos szempontokból, másból nem) javaslom. HA-ban elég könnyű 3 node-ot összekapcsolni, monitorozni részben a prometheus-grafana-alermanager részben pedig a szokásosan ajánlott k9s-el tudsz szerintem elég jól, persze ha mondjuk microk8s-et használsz ahhoz elég könnyű feltenni a dashboard-ot is, de hogy self-serve is legyen a dolog, esetleg keycloak-al beállítva egy AD-hez a hitelesítést egész hatékonyan tud működni a dolog. Persze kubernetes is tud docker-t és a docker-in-docker is megoldható, de ugye erre a kaniko adja meg a nemprivilegizált megoldást, viszont ha systemd is kell bele, akkor a PID1 konténereknek nézz utána. Remélem ez segít!
Udemy Mumshad féle tanfolyamok. Jár hozzá Kodekloud hozzáférés, végig gyakorlati a képzés (a feladatokhoz valódi klasztert automatizál a háttérben, bármit csinálsz vele). Ráadásul nem lehet copy-paste módon csinálni, csak rávezet a megoldás irányára, saját gondolkodás és doksi olvasás kell hozzá (mindig csak utólag mutatja meg a teljes megoldást)
https://www.cloudskillsboost.g
Kapsz virtuális plecsnit is :
https://www.cloudskillsboost.google/public_profiles/39ae0e65-9d00-4e30-a3d9-c8c9ae1ce444/badges/1142289?qlcampaign=1m-skills-sse%3A%3Am1KgpH1eke6fQLKqo7lWbQ+
https://blog.claryel.hu
Van ilyen is: https://kube.academy/
Nana Zero to Hero videoja(és csatornája) nagyon jó kiindulási alap.
Milyen területen? Önmagában még nem ér sokat, hogy láttál már container orchestration rendszert. Ha az a terved, hogy Kubernetes expert legyél, akkor is nagyon hosszú út áll előtted egy nem specializált területen, amíg megszerzed a hands-on tapasztalatot.
Ha az SRE irány érdekel, akkor is elsődlegesen legyél jó fejlesztő, érteni kell az architektúrákat, ismerni kell a szolgáltatás menedzsment alapjait, és emellé kell felszedni azt a nem kis méretű technológia stacket, ami kell egy ilyen pozícióhoz. Viszont ez a stack nem egyforma az egyes munkahelyeken, szóval a normális helyeken rugalmasak azon a téren, hogy milyen konkrét technológiát kell ismerned. Majd élesben megtanulod. :)
Ahogy többen is írták, először kell egy kis Docler tudás, legalább az image build és futtatása.
Utána érdemes megismerkedni a K8s építőköveivel: pod, deployment, service, ingress, job, cronjob, namespace.
Helm :) Ez a Kubernetes apt-je. Nem érdemes nem hasznalni (itt van minden is: https://artifacthub.io/).
Ha érdekel a perzisztencia, akkor statefulset, persistent volume-ok, persistent volume claimek, storage classok, provisionerek.
Secretek, configmapek, role-ok, RBAC, serviceaccount.
Én ebben a sorrendben tanultam meg.
---
A gyakorlat fontos része az útnak, én K3s-sel kezdenék, a Raspberrymen is az fut, de ha találsz jó kurzust, az előadó biztosan javasol majd egy "disztribúciót".
Itt találsz pár linket, remélem, segít: https://github.com/fuszenecker/Kubernetes
Sok sikert és kitartást, érdemes megtanulni a Kubernetest.
Szerintem nem kell. Sőt. Ha nincs még rá kész image, akkor nem jó irányba mész, főleg, ha csak tanulsz. Ha van, csak nem találod, akkor érdemes a keresést megtanulni, mint folyamatosan feltalálni a meleg vizet.
https://iotguru.cloud
Ezzel is tudok azonosulni. Én fejlesztő vagyok, nekem valahogy be kell csomagolnom a vackaimat, de igen, magához a Kuberneteshez nem kell Docker.
Ahogy már írtam, olyannyira nem kell, hogy most dobták ki a Docker-t az 1.24-ben: https://kubernetes.io/blog/2020/12/02/dont-panic-kubernetes-and-docker/
https://iotguru.cloud
Szerintem pont ez a rossz irány a tanulásban.
Nagyon sokat tanultam annó fejlesztőként úgy, hogy nem a kész megoldást használtam, hanem magam alkottam. Tanulni igen is így kell.
Nem úgy, hogy azonnal beleugrunk a készbe, azt se tudva mit csinálunk.
Ha most alkotnom kell valamit fejlesztőként, akkor hülye lennék elkezdeni nulláról. Kész keretrendszerek léteznek, toolok, lib-ek, stb. Az idő pénz, maszek melóban és beosztottként is. A kész cuccok használatával pénzt spórolsz. Egy tanulónál nem spórolsz pénzt, csak a tapasztalatot.
Szerintem kell a docker tudás. (vagy bármilyen konrénerizáció) Saját tapasztalat. Bár szerinten a kubi szintaktikája sokban hasonlít a dockerre, hasznos azt választani.
Dockerben egy csomó dolgot csináltam. A service deploymenten-től az nginx proxy-s cuccokig... Amikor elkezdtem kubernetesezni, jöttem rá, hogy ezekre kínálja a megoldást. Ismertem a docker hiányosságait, hibáit amit a kubernetes kiegészített. Ha azonnal kuberentessel kezdek, nem értettem volna igazán mi mire való.
Nah mind1. Szóval szerintem gond, hogy a mai fiatalok azonnal a legfelső szinten akarják kezdeni. Nem kell visszamenni asm-be, de azért kicsit lejjebb....
Szerintem te rossz irányból közelítetted meg a Kubernetes-t...
https://iotguru.cloud
Van millió angol free tutorial youtubeon, amiket a többiek írtak. Ha magyart keresel, akkor a hwsw kubernetes tanfolyamát jó szívvel tudom ajánlani. 60-70ezer körül meg lehet venni, annyit bőven megér, mert elég szájbarágós az alapokkal, de ha máshol elcsúszol az angol miatt, akkor később csak pislogsz :)
Ha pedig naprakész toolokat akarsz, akkor itt hetente szokták bemutatni: https://www.youtube.com/devopsparadox
Láttam írták páran a Kubernetes Hard Way-t, az kezdőnek elrettentő lehet szerintem :)