Letos se Plesk rozhodl poslát několik lidí na KubeCon – hlavní událost zaměřenou na Kubernetes na světě. V Rusku neexistují žádné specializované konference na toto téma. Samozřejmě, o K8s se u nás mluví a všichni ho chtějí, ale tolik firem, které ho skutečně provozují, se jinde na jednom místě nesejde. Byl jsem jedním z účastníků, protože pracuji na platformě založené na Kubernetes.
O organizaci
Rozměry konference jsou ohromující: 7000 účastníků, obrovské výstavní centrum. Přechod z jedné haly do druhé zabral 5-7 minut. Současně probíhalo 30 přednášek na různá témata. Bylo zde nespočet firem se svými stánky, některé nabízely skvělé a dokonce výborné ceny, a také rozdávaly různé předměty jako trička, propisky a jiné milé věci. Všechna komunikace probíhala v angličtině, ale neměl jsem žádné potíže. Pokud je to jediný faktor, kvůli kterému nejezdíte na zahraniční konference, směle jeďte. Angličtina v IT je jednodušší než běžná angličtina díky množství známých slov, která denně píšete a čtete v kódu a dokumentaci. Vnímání přednášek také nepředstavovalo problémy. Bylo mi do hlavy zpečeno hodně informací. K večeru jsem připomínal server, na kterém došlo k přetečení zásobníku, a byly mi přímo nalévány informace do podvědomí.
O přednáškách
Chci krátce přiblížit přednášky, které se mi líbily nejvíce, a doporučil bych je zhlédnout.
Ta poročilo me je močno navdušilo, ker se je dotaknilo močne bolečine. Imamo veliko razdrobljenih storitev, ki jih podpirajo in razvijajo različni ljudje v ekipi. Sledimo pristopom infrastrukture kot kode, vendar obstajajo nekatera nerešena vprašanja. Obstaja repozitorij s kodo na Ansible, toda trenutna stanja in inventar so shranjena na računalniku razvijalca, ki zažene skripto, skupaj s poverilnicami. Del informacij se lahko najde v Confluence, vendar ni vedno očitno, kje. Ni mesta, kjer bi lahko preprosto pritisnili gumb in bi bilo vse dobro. Predlagano je, da se pripravi opis in shrani v repozitorij ne le kodo, temveč tudi orodja za namestitev. Opišite, kje pridobiti stanja in poverilnice, uporabite make Install in uživajte v rezultatu. Želim več reda v storitvah, spremljal bom izide CNAB, jih uporabljal, uvajal in prepričeval. Dober vzorec za oblikovanje Readme v repozitoriju.
Obstaja zelo veliko informacij o težavah pri pisanju operaterjev. Menim, da je to poročilo obvezno za ogled za tiste, ki želijo napisati svoj operater za Kubernetes. Upošteva vse stvari, kot so statusi, zbiranje smeti, konkurentnost in vse ostalo. Zelo poučno. Zelo mi je bila všeč citat iz kode persistent volumes Kubernetes'a:
K8s ublaži kompleksnost integracije za enostavnost implementacije.
To poročilo podrobno razkriva enega od osnovnih arhitekturnih elementov klasterja — control plane, natančneje niz kontrolerjev. Opišejo njihovo vlogo in arhitekturo, osnovna načela za ustvarjanje lastnega kontrolerja na primeru že obstoječih.
Eden izmed najbolj izvirnih trenutkov je priporočilo, da ne prikrivate nenavadnih situacij za pravilnim obnašanjem kontrolerja, temveč spremenite obnašanje na nek način, da sistemu signalizirate, da so se pojavile težave.
Zelo zanimiva izkušnja, zelo veliko informacij s recepti o tem, na kaj je treba paziti, ko imate res visoko obremenitev. V Kubernetes so se dobro vključili in podpirajo 50 klasterjev. Povedali so o vseh vidikih izžemanju maksimalne zmogljivosti. Priporočam ogled poročila pred sprejemanjem kakršnih koli tehničnih odločitev o klasterjih.
Доклад, после которого я понял, что Loki нужно обязательно попробовать для логов в кластере и, скорее всего, с ним остаться. Суть: эластик тяжелый. Графана хотела разработать легкое масштабируемое решение, подходящее для дебага проблем. Решение получилось элегантным: Loki выбирает из Kubernetes мета информацию (лейблы, как Prometheus), и по ним раскладывает логи. Таким образом, можно выбрать куски лога по сервису, найти конкретный под, выбрать конкретное время, отфильтровать по коду ошибки. Эти фильтры работают без полнотекстового поиска. Постепенно сужая круг поиска, можно добраться до конкретной нужной ошибки. В конце поиск все-таки задействуется, но так как круг сужен, хватает скорости без индексирования. По нажатию на нее подгружается контекст — пара строк до и пара строк лога после. Таким образом, это выглядит как поиск файла с логами и греп по нему, но чуть удобнее и в том же интерфейсе, где метрики. Умеет считать количество вхождений поискового запроса. Сами поисковые запросы похожи на язык Прометея и выглядят просто. Докладчик обратил наше внимание на то, что решение не очень подходит для аналитики. Крайне советую посмотреть всем, кому нужны логи, очень легкая подача.
Na veoma jasan način prikazani su procesi kanarečkog i plave-zelene implementacije. Preporučujem da pogledate izlaganje onima koji se još nisu upoznali s ovim. Izlagači prezentiraju rešenje kao proširenje za perspektivni CI-CD sistem ARGO. Engleski govor izlagatelja iz Rusije je lakše slušati nego govor ostalih izlagatelja.
Jedan od najtežih aspekata upravljanja klasterom ostaje postavljanje sigurnosti, posebno prava pristupa resursima. Ugrađeni primitivni alati K8s omogućuju vam postavljanje autorizacije kako želite. Kako bezbolno održavati njihove aktuelne verzije? Kako se snaći u tome što se događa s pravima pristupa i otkloniti greške u kreiranim ulogama? U ovom izlaganju predstavljen je ne samo pregled nekoliko alata za dijagnostiku autorizacije u k8s, već su također navedene opće preporuke za izgradnju jednostavnih i efektivnih politika.
Ostala izlaganja
Ne bom priporočil. Nekateri so bili kapitanščni, drugi pa zelo zahtevni. Priporočam, da si ogledate to seznam predvajanja in si ogledate vse, kar je označeno kot keynote. To vam bo omogočilo širši vpogled v industrijo okoli Cloud Native Apps, kasneje pa pritisnite ctrl+f in iščite po zanimivih ključnih besedah, podjetjih, izdelkih in pristopih.
Tukaj je povezava do seznama predvajanja z govorom, bodite pozorni nanjo.
O stojnicah podjetij
Na stojnici Haproxy so mi podarili majico za sina. Dvomim, da bom zaradi tega zamenjal Nginx v produkciji za haproxy, a jih bom zapomnil. Kdo ve, kaj bodo novi lastniki storili z Nginxom.
Na stojnici IBM so tri dni potekali kratki govori, s katerimi so privabljali ljudi, saj so razporejali Oculus Go, slušalke Beats in dron. Na stojnici morate biti prisotni pol ure. Dvakrat v treh dneh sem poskusil srečo — ni mi uspelo. Tudi kratke govore so imeli VMWare in Microsoft.
Na stojnici Ubuntu sem naredil to, kar je verjetno naredil vsak — fotografiral sem se s Shuttleworthom. Prijeten mož, vesel, da sem mu povedal, da jo uporabljam že od 8.04 in da je strežnik deloval 10 let brez dist upgrade brez enega samega pretrganja (resda brez dostopa do interneta).
Ubuntu razvija svoj MicroK8s — Hiter, Lahek, Razvijalec Kubernetes
Nisem mogel mimo utrujenega Dmitrija Stolyrova, pogovoril sem se z njim o napornih delovnih dneh inženirjev, ki podpirajo Kubernetes. Predavanja bo delegiral svojim kolegom, a pripravlja nek nov format predavanja. Pozval je, da se naročite na kanal Flanta na youtube.
IBM, Cisco, Microsoft in VMWare so v stojnice vložili veliko denarja. Stojnice odprtokodnih prijateljev so bile skromnejše. Na stojnici sem se pogovoril s predstavniki Grafana, prepričali so me — treba je preizkusiti Loki. Zdi se, da je polno besedilno iskanje v sistemu beleženja potrebno samo za analitiko, medtem ko za odpravljanje težav zadostujejo sistemi na ravni Loki. Pogovarjal sem se z razvijalci Prometheus. Ne nameravajo vzpostaviti dolgotrajnega shranjevanja metrik in downsampling podatkov. Priporočajo, da pogledate cortex in thanos kot rešitve. Stojnic je bilo zelo veliko, potrebovali smo cel dan, da smo obiskali vse. Deset rešitev za spremljanje kot storitev. Pet varnostnih storitev. Pet storitev za uspešnost. Deset uporabniških vmesnikov za Kubernetes. Veliko je tistih, ki ponujajo k8s kot storitev. Vsi želijo svoj kos trga.
Amazon in Google stažirali dvorišta z umetno travo na krovovih, postavili su ležaljke. Amazon je delio šolje i točio limunadu, dok je na štandu govorio o novostima u radu sa spot instancama. Google je delio kolačiće sa logotipom Kubernetes i napravio odličnu fotonagradnu zonu, dok je na štandu lovio velike enterprise ribe.
O Barseloni
Zaljubljen sam u Barselonu. Bio sam tamo drugi put, prvi put 2012. godine na razgledanju. Neverovatno je, ali mnoge činjenice su mi isplivale na pamet, mogao sam mnogo da ispričam svojim kolegama, bio sam mini vodič. Čisti morski vazduh me trenutnu oslobodio alergije. Ukusna morska hrana, paelja, sangrija. Veoma topla, sunčana arhitektura. Mala spratnost, puno zelenila. Peške smo prošli tih tri dana oko 50 kilometara, po ovom gradu se želi hodati iznova i iznova. Sve to posle izlaganja, u večernjim satima.
Šta sam najvažnije shvatio
Veoma sam srećan što sam imao priliku da prisustvujem ovoj konferenciji. Rasložila je na policama ono što do tada nije bilo rasloženo. Inspirisala je, učinila očiglednim neke stvari.
Kao crvena nit provukla se misao: Kubernetes nije krajnja tačka, već alat. Platforma za kreiranje platformi.
A glavni zadatak cele pokreta: prikupljati i pokretati skalabilne aplikacije.
Glavne oblasti na kojima zajednica radi su se kristalizovale. Otprilike, kao što su se nekada pojavili 12 faktora za aplikacije, stvorena je lista onoga što i kako raditi za infrastrukturu u celini. Ako želite, možete to nazvati trendovima:
- Dinamična okolja
- Javne, hibridne i privatne oblake.
- Kontejneri.
- Servisna mreža.
- Mikroservisi.
- Nepromenljiva infrastruktura.
- Deklarativni API.
Ove tehnike omogućavaju izgradnju sistema sa takvim karakteristikama:
- Zaštićeni od gubitka podataka.
- Elastični (prilagođavaju se opterećenju).
- Održivi.
- Posmatrani (tri stuba: monitoring, logging, tracing).
- Sposobni da često i predvidivo sigurno implementiraju velike promene.
CNCF bira najbolje projekte (mali spisak) i promoviše takve stvari:
- Zdrava automatizacija.
- Otvoreni kod.
- Sloboda u izboru dobavljača usluga.
Kubernetes je zapleten. Ideološki je jednostavan i delimično, ali je u celini složen. Niko nije predstavio all-in-one rešenja. Na tržištu k8s kao usluga, pa čak i na celokupnom tržištu, vlada Divlji zapad: podršku prodaju za 50$, ali i za 1000$ mesečno. Svako se produbljuje u neku komponentu i istražuje je. Neko se bavi praćenjem i nadzornim tablama, neko performansama, a neko bezbednošću.
K8S, sve tek počinje!
Izvor: habr.com
