11 alata koji Kubernetes čine boljim

11 alata koji Kubernetes čine boljim

Ne zadovoljavaju sve serverske platforme, čak i one najmoćnije i najskalabilnije, takve kakve jesu. Iako Kubernetes odlično radi sam po sebi, možda mu nedostaju pravi dijelovi da bi bio kompletan. Uvijek ćete pronaći poseban slučaj koji zanemaruje vašu potrebu ili u kojem Kubernetes neće raditi u zadanoj instalaciji - na primjer, podrška baze podataka ili rad CD-a.

Ovdje se pojavljuju dodaci, proširenja i druge dobrote za ovaj orkestrator kontejnera, uz podršku široke zajednice. Ovaj članak će sadržavati 11 najboljih stvari koje smo pronašli. Za sebe u Southbridge veoma su interesantne i planiramo da se bavimo njima praktično - rastavite ih na šrafove i navrtke i vidite šta je unutra. Neki od njih će savršeno nadopuniti bilo koji Kubernetes klaster, dok će drugi pomoći u rješavanju specifičnih problema koji nisu implementirani u standardnom Kubernetes paketu.

Gatekeeper: Policy Management

Projekat Open Policy Agent (OPA) pruža mogućnost kreiranja politika na vrhu stokova aplikacija u oblaku u Kubernetesu, od ulaza do servisne mreže. Gatekeeper daje mogućnost Kubernetes-u da automatski nametne politike u cijelom klasteru, a također pruža inspekciju svih događaja ili resursa koji krše politiku. Svim ovim upravlja relativno novi mehanizam u Kubernetesu, Webhooks menadžer pristupa, koji se pokreće kada se resursi promijene. Uz Gatekeeper, OPA politike postaju još jedan dio zdravlja vašeg Kubernetes klastera bez potrebe za stalnim nadzorom.

Gravitacija: prenosivi Kubernetes klasteri

Ako želite da primenite aplikaciju na Kubernetes, mnoge aplikacije imaju Helm grafikon koji vodi i automatizuje ovaj proces. Ali šta ako želite da uzmete svoj Kubernetes klaster kakav jeste i postavite ga negdje drugdje?

gravitacija pravi snimke stanja Kubernetes klastera, njihovih registara za slike kontejnera i pokrenutih aplikacija koje se nazivaju „paketi aplikacija“. Takav paket, koji je običan fajl .tar, može replicirati klaster bilo gdje Kubernetes može pokrenuti.

Gravity takođe potvrđuje da se ciljna infrastruktura ponaša isto kao i izvorna i da je Kubernetes okruženje na ciljnoj lokaciji dostupno. Plaćena verzija Gravity-a takođe dodaje sigurnosne funkcije, uključujući RBAC i mogućnost sinhronizacije sigurnosnih postavki u različitim implementacijama klastera.

Najnovija glavna verzija, Gravity 7, može uvesti Gravity sliku u postojeći Kubernetes klaster, umjesto da okreće cijeli novi klaster iz slike. Gravity 7 također može raditi sa klasterima instaliranim bez Gravity slike. Gravity takođe podržava SELinux i radi nativno sa Teleport SSH gateway-om.

Kaniko: Izgradnja kontejnera u Kubernetes klasteru

Većina slika kontejnera je izgrađena na sistemima izvan steka kontejnera. Međutim, ponekad je potrebno da napravite sliku unutar steka kontejnera, na primer negde u pokrenutom kontejneru ili u Kubernetes klasteru.

Kaniko gradi kontejnere unutar okruženja kontejnera, ali bez ovisnosti o usluzi kontejnerizacije, kao što je Docker. Umjesto toga, Kaniko izdvaja sistem datoteka iz osnovne slike, pokreće sve naredbe izgradnje u korisničkom prostoru na vrhu ekstrahovanog sistema datoteka, praveći snimak sistema datoteka nakon svake naredbe.

Napomena: Kaniko je trenutno (maj 2020., cca. prevodilac) ne može napraviti Windows kontejnere.

Kubecost: Parametri troškova pokretanja Kubernetesa

Većina alata za administraciju Kubernetes-a fokusira se na jednostavnost korištenja, nadgledanje, razumijevanje ponašanja unutar modula, itd. Ali šta je sa gledanjem na troškove - u dolarima i penijama - povezane sa pokretanjem Kubernetesa?

Kubecost Obrađuje Kubernetes parametre u realnom vremenu, što rezultira ažuriranim informacijama o troškovima iz pokretanja klastera preko glavnih dobavljača oblaka, prikazanih na kontrolnoj tabli koja prikazuje mjesečne troškove svakog klastera. Cijene za RAM, CPU vrijeme, GPU i diskovni podsistem su raščlanjene prema Kubernetes komponenti (kontejner, pod, usluga, itd.)

Kubecost takođe prati troškove resursa izvan klastera kao što su Amazon S3 buckets, iako je to ograničeno na AWS. Podaci o troškovima se mogu poslati Prometheusu tako da ih možete koristiti za programsku promjenu ponašanja klastera.

Kubecost je besplatan za korištenje sve dok vam je dovoljno 15 dana dnevnika. Za dodatne funkcije, cijene počinju od 199 USD mjesečno za praćenje 50 čvorova.

KubeDB: Pokretanje borbenih baza podataka na Kubernetesu

Baze podataka je takođe prilično teško efikasno pokrenuti na Kubernetesu. Pronaći ćete Kubernetes operatore za MySQL, PostgreSQL, MongoDB i Redis, ali svi oni imaju nedostatke. Takođe, tipičan skup funkcija Kubernetesa ne rešava direktno većinu specifičnih problema baze podataka.

KubeDB pomaže vam da kreirate svoje Kubernetes izjave za upravljanje bazama podataka. Pokretanje sigurnosnih kopija, kloniranje, praćenje, snimci i kreiranje deklarativne baze podataka su njegove komponente. Imajte na umu da podrška za funkcije može varirati ovisno o bazi podataka. Na primjer, kreiranje klastera radi za PostgreSQL, ali ne i za MySQL (već postoji, kao što je tačno napomenuto dnbstd, cca. prevodilac).

Kube-majmun: Haos majmun za Kubernetes

Metoda stresnog testiranja bez grešaka smatra se nasumičnim kvarovima. To je teorija koja stoji iza Netflixovog Chaos Monkeya, haotičnog inženjerskog alata koji nasumično isključuje virtuelne mašine i proizvodne kontejnere kako bi "podstaknuo" programere da grade otpornije sisteme. Kube-majmun — implementacija iste osnovne teorije stresnog testiranja za Kubernetes klastere. Radi tako što nasumično ubija podove u klasteru koji odredite, a također se može konfigurirati da radi u određenom vremenskom intervalu.

Kubernetes Ingress Controller za AWS

Kubernetes pruža usluge eksternog balansiranja opterećenja i umrežavanja klastera putem usluge pod nazivom Ulaz AWS pruža funkciju balansiranja opterećenja, ali je ne povezuje automatski sa istim mogućnostima Kubernetesa. Kubernetes Ingress Controller za AWS zatvara ovaj jaz.

Automatski upravlja AWS resursima za svaki ulazni objekt u klasteru, stvara balansere opterećenja za nove ulazne resurse i uklanja balansere opterećenja kada se resursi izbrišu. Koristi CloudFormation kako bi osigurao da stanje klastera ostane dosljedno. Takođe podržava postavke CloudWatch alarma i automatski upravlja drugim elementima koji se koriste u klasteru, kao što su SSL certifikati i EC2 grupe za automatsko skaliranje.

Kubespray: Automatska instalacija Kubernetesa

Kubespray automatizuje instalaciju Kubernetes klastera spremnog za proizvodnju, od instalacije na hardverskim serverima do velikih javnih oblaka. Koristi Ansible (Vagrant - opciono) za pokretanje implementacije i kreiranje visoko dostupnog klastera od nule s vašim izborom mrežnih dodataka (kao što su Flannel, Calico i drugi) na odabranoj popularnoj Linux distribuciji kada je instaliran na hardverskim serverima.

Skaffold: Iterativni razvoj za Kubernetes

Skaffold - jedan od Google alata koji se koristi za organizovanje CD aplikacija u Kubernetesu. Čim izvršite promjene u izvornom kodu, skaffold to automatski detektuje, počinje graditi i implementirati te vas upozorava ako postoje greške. Skaffold radi u potpunosti na strani klijenta, tako da može doći do manjih problema s instalacijom ili ažuriranjem. Može se koristiti sa postojećim CICD cevovodima i može se povezati sa nekim eksternim alatima za pravljenje, uglavnom Google-ovim Bazelom.

Tereza: Najjednostavniji PaaS na Kubernetesu

Teresa je sistem za implementaciju aplikacija koji pokreće jednostavan PaaS na vrhu Kubernetesa. Korisnici organizirani u timove mogu implementirati i upravljati aplikacijama koje posjeduju. Ovo malo olakšava stvari ljudima koji vjeruju aplikaciji i ne žele da se bave Kubernetesom i svim njegovim složenostima.

Nagib: Streaming ažuriranja kontejnera za Kubernetes klastere

nagib, koju je razvio Windmill Engineering, prati promjene u različitim Docker fajlovima, a zatim postepeno postavlja odgovarajuće kontejnere u Kubernetes klaster. U suštini, omogućava vam da ažurirate svoj proizvodni klaster u realnom vremenu jednostavnim ažuriranjem Dockerfiles-a. Tilt se gradi unutar klastera, izvorni kod je sve što treba promijeniti. Takođe možete napraviti snimak zdravlja klastera i uhvatiti uslove greške direktno iz Tilt-a da biste ih podelili sa članovima tima radi otklanjanja grešaka.

PS Sve ove alate smo više puta koristili Southbridge ispitani našim radoznalim rukama. Da predstavim stvarne prakse već (nadajmo se!) na offline intenzivnim kursevima u februaru. Kubernetes Base 8–10. februar 2021. I Kubernetes Mega 12–14 februara. Iskreno, nedostaje nam i topla i energično nabijena atmosfera vanmrežnog učenja. Koliko god da su tehnologije napredne, one ne mogu zamijeniti živu ljudsku komunikaciju i posebnu atmosferu kada se okupljaju istomišljenici.

izvor: www.habr.com

Dodajte komentar