Sudionik dolazi na teÄaj ili intenziv. Vidi uredne redove tehniÄke podrÅ”ke, pažljivo postavljene napajalne kablove, Å”ahovski raspored predavaonice, sjajne slike i sheme slajdova. Govornici s osmijehom i Å”alama predstavljaju informacije tako da jedva stignete pratiti. Postavke su podeÅ”ene, zadaci s prakse jednostavno lete s prstiju, jedino ponekad treba pomoÄ tehniÄke podrÅ”ke.
A tu su i kafiÄi s istomiÅ”ljenicima, energiÄna i dinamiÄna atmosfera, razmjena iskustava, najneobiÄnija pitanja govornicima. I odgovori, i informacije koje neÄete pronaÄi u priruÄnicima, veÄ samo u praksi.
Kako mislite, koliko je vremena, truda i živaca uloženo da bi to izgledalo baŔ ovako?

ZahvaljujuÄi Volodi Gurjanovu, certificiranom administratoru Kubernetes-a i inženjeru/tim lideru u Southbridge, koji je od samog poÄetka bio svjedok i aktivni sudionik stvaranja mnogih teÄajeva Sljerma.
Vidjeli smo s unutraÅ”nje strane stvaranja teÄajeva ā poteÅ”koÄe i oÅ”tri trenuci, uvidi i neoÄekivana rjeÅ”enja. I poznate intenzive o Kubernetes-u, kao Å”to su Sljern Basic i Sljern Mega. I novi, uvelike preureÄeni teÄaj , koji neumoljivo dolazi i poÄinje 19. kolovoza.

Ali, pretpostavljam, dosta s lirike, preÄimo na samu priÄu. Kako je iz nekoliko tema intenziva postupno nastao sasvim samostalan i viÅ”edimenzionalan . Tako da Äu zapoÄeti priÄu o tome kako se stvaraju i razvijaju teÄajevi ā gotovo "Prije mnogo stara vremena u galaksiji daleko, dalekoā¦"
A Å”to se dogaÄa iza kulisa?
Ako pitate kako radimo teÄajeve i odakle sve poÄinje, odgovaram jednostavno: "Sve zapoÄinje s idejom".
ObiÄno ideja dolazi odnekud ā ne sjedimo kao vezanici u podrumu dok ne smislimo: "O kojoj temi da napravimo teÄaj?". Ideje dolaze same od vanjskih izvora. Ponekad ljudi poÄnu aktivno pitati: "Å to znate o toj ili onoj tehnologiji?". Ili kao Å”to je bilo s Docker-om, Å”to ga nije bilo moguÄe uklopiti u vrijeme intenziva ā oÄito ga je trebalo iznijeti van, da bi se u okviru intenziva neÅ”to moglo reÄi.

Tako se pojavljuje ideja.
Nakon Å”to se ona pojavi, zapoÄinje, po mom miÅ”ljenju, najteži trenutak ā shvatiti Å”to ukljuÄiti u ovaj teÄaj ā to je vrlo usporedivo s pripremama govornika za razne konferencije.
Postoji jedan glavni problem kada odabereÅ” temu i misliÅ”: āÅ to bih o tome mogao reÄi? Ovo je previÅ”e jednostavno, to je oÄito, to svi znaju.ā
Ali zapravo to nipoÅ”to nije istina. Osobno Äesto naglaÅ”avam da ono Å”to se tebi Äini oÄitim, osobama koje dolaze da te sluÅ”aju ili pohaÄaju teÄaj, to uopÄe nije oÄito. I ovdje nastaje veliki sloj posla i unutarnjeg sukoba oko toga Å”to ukljuÄiti u teÄaj. Kao rezultat toga nastaje popis poglavlja sa Å”irokim zamahom, o Äemu Äe teÄaj biti.
A onda poÄinje jednostavan rutinski rad:
- Odabir materijala
- Pažljivo Äitanje dokumentacije o trenutnoj verziji, buduÄi da se IT svijet trenutno razvija nevjerojatnim brzinama. Äak i ako radiÅ” s neÄim i radiÅ” teÄaj o tome, moraÅ” otiÄi do dokumentacije i vidjeti Å”to je novo, o Äemu bi bilo zanimljivo govoriti, o Äemu bi moglo biti posebno korisno napomenuti.
- I pojavljuje se neka vrsta kostura teÄaja, gdje je veÄina tema opÄenito razraÄena i izgleda da je sve Å”to trebaÅ” ā snimaj videe i pokreni u produkciju.
- Ali zapravo nije tako, onda poÄinje težak posao, ali ne za autore teÄaja, veÄ za one koji testiraju. ObiÄno su naÅ”i alfa testeri tehniÄka podrÅ”ka, koja, s jedne strane, pregledava teÄajeve radi raznih sintaktiÄkih i gramatiÄkih greÅ”aka. S druge strane, oÅ”tro nas kritiziraju kada postoje neki takvi posve nejasni, zbunjujuÄi dijelovi. Kada se u tekstovima pojavljuju složene reÄenice razdvojene na nekoliko stranica ili oÄiti besmisli. Sve to pregledavaju, traže.
- Potom poÄinje faza praktiÄnog testiranja, gdje se takoÄer otkrivaju neka oÄita nefunkcionalna mjesta i istiÄu se neki momenti koji se mogu ili komplicirati, buduÄi da je dosadno samo sjediti i kopirati ā te se otkrivaju mjesta gdje mnogo oÄekujemo od ljudi koji Äe prolaziti kroz ovaj teÄaj. Tada dolaze preporuke: āUÄinite, ljudi, ovdje malo jednostavnije, to Äe biti lakÅ”e za razumjeti i donijet Äe viÅ”e koristi.ā
- Nakon Å”to je taj obim posla obavljen, napisana je ona deo koja se odnosi na video, izgleda da je sve u redu. I veÄ se može dati na objavljivanje, za reklamu ovog kursa. No opet, nije joÅ” uvijek, prerano je ā jer u poslednje vreme smo prestali malo verovati sebi i uopÅ”te poÄeli viÅ”e raditi s povratnim informacijama. Pojavio se koncept beta-testiranja ā to je kada se pozivaju ljudi koji nemaju nikakve veze s naÅ”om kompanijom i za neke pogodnosti im se prikazuju svi delovi kursa, video, tekst, praktiÄne zadatke, kako bi ocijenili kvalitet materijala, dostupnost materijala i pomogli nam da kurs uÄinimo maksimalno dobrim.
- I kada proÄe nekoliko takvih iteracija, govornici, alfa-testiranje u obliku tehniÄke podrÅ”ke, beta-testiranje, dorade. A zatim sve poÄinje ispoÄetka ā tehniÄka podrÅ”ka, beta-testiranje, dorade.
- I u odreÄenom trenutku dolazi do shvatanja da ili zavrÅ”avamo sa doradama, jer uÄiniti tako da se svima sviÄa ā potpuno je nerealno, ili se donose neke radikalne odluke. Kada su mnoge primedbe o odreÄenim mestima kritiÄne ā prepraviti ih globalno, jer neÅ”to nije ispalo kako treba.
- Zatim dolazi vreme manjih ispravki ā negde reÄenica nije lepo formulisana, negde nekom ne odgovara font, 14,5, a želeo bi 15,7.
- Kada ostanu ovakve vrste primedbi, onda je to to, kurs se viÅ”e-manje otvara, poÄinju zvaniÄne prodaje.
I na prvi pogled jednostavan i kratak zadatak da se napravi kurs, ispostavlja se da nije tako jednostavan i zahteva neverovatno mnogo vremena.
I postoji joÅ” jedan važan momenat, a to je da rad na kursu ne zavrÅ”ava kada je kurs puÅ”ten. Prvo, pažljivo Äitamo komentare koje ostavljaju na odreÄenim delovima. I Äak i pored svih napora koje smo uložili, i dalje se otkrivaju neki propusti, neki nedostaci, koji se tokom vremena, u realnom vremenu ispravljaju, doradio, kako bi svaki sledeÄi korisnik dobio kvalitetniju uslugu.

Svaki kurs ima svog product ownera koji, osim Å”to definira opÄu koncepciju i provjerava rokove, bilježi napomene za kasniju potrebu da se kurs potpuno obnovi, a to Äe se sigurno dogoditi jer Äe za godinu ili dvije dio onoga Å”to govorimo postati neaktualan zbog moralne zastarjelosti. Product owner bilježi najÄeÅ”Äa pitanja, Å”to je ljudima bilo nejasno, koje su zadaÄe bile vrlo teÅ”ke, a koje su, naprotiv, bile vrlo jednostavne. Sve se to uzima u obzir prilikom ponovne snimke kursa, kod nekog refaktoringa, kako bi svaki globalni ciklus kursa bio bolji, praktiÄniji i ugodniji.
Tako nastaju kursevi.
Kako je nastao kurs o Dockeru
Ovo je posebna, Äak i neobiÄna tema za nas. S jedne strane, nismo planirali njegovu izradu jer ga mnoge online Å”kole veÄ nude. S druge strane, sam je zatražio svoj put i naÅ”ao logiÄno mjesto u naÅ”oj koncepciji obuke IT struÄnjaka za Kubernetes.
Ako govorimo vrlo opÄenito, sve je zapoÄelo s kursom o Kubernetesu, kada ga je tek zapoÄeto, mislim, nakon prve Službene zasednice. Prikupili smo povratne informacije i vidjeli da mnogi žele proÄitati dodatne informacije o Dockeru, a mnogi dolaze na osnovni kurs o Kubernetesu, ne znajuÄi Å”to je to. .
Stoga smo za drugu Službenu zasednicu napravili kurs ā ili bolje reÄeno, nekoliko poglavlja o Dockeru. Gdje smo izlagali osnovne stvari, kako bi ljudi koji dolaze na intenzivno uÄiliÅ”te nisu osjeÄali da su zakinuti i da uopÄe razumiju Å”to se dogaÄa.

A onda su se dogaÄaji odvijali otprilike ovako. KoliÄina materijala rasla je i prestala se uklapati u 3 dana. Pojavila se logiÄna i oÄita ideja: zaÅ”to ne bismo napravili mali kurs iz onoga Å”to priÄamo na Službenoj Bazi, na koji bismo mogli slati ljude koji žele prije intenzivnog kursa o Kubernetesu pogledati neÅ”to o Dockeru.
Službena Junior ā to je zapravo objedinjavanje nekoliko osnovnih kurseva. Na kraju je kurs o Dockeru postao dio Službene Junior. To je neka nulta razina prije i . A kasnije su se tu nalazile vrlo osnovne apstrakcije.

U nekom trenutku ljudi su poÄeli pitati: āHej, ovo je sve dobro, dovoljno je da razumijemo o Äemu govorite na intenzivnim teÄajevima. Gdje možemo proÄitati viÅ”e o tome Å”to Docker može i kako ga koristiti te Å”to zapravo predstavlja?ā. Tako se rodila ideja da se od njega napravi , kako bismo, s jedne strane, mogli u njega slati sve one koji dolaze na Slurm za Kubernetes, a s druge strane, za one koji trenutno nisu zainteresirani za razvoj Kubernetes-a. Da IT struÄnjak može doÄi i pogledati naÅ” teÄaj o Dockeru i zapoÄeti svoje evolucijsko putovanje jednostavno s Äistim Dockerom. Da imamo takav potpun, zavrÅ”eni teÄaj ā i mnogi Äe, nakon Å”to pogledaju ovaj teÄaj i rade neko vrijeme s Äistim Dockerom, napredovati do razine kada im je veÄ potreban Kubernetes ili neki drugi sustav orkestracije. I doÅ”li su konkretno kod nas.
Ponekad postavljaju pitanje: "Koje osobe sada možda ne trebaju Kubernetes?" No ovo pitanje nije toliko o ljudima, koliko o kompanijama. Ovdje treba razumjeti da Kubernetes ima odreÄene sluÄajeve upotrebe gdje dobro odgovara i zadatke koje dobro rjeÅ”ava, ali postoje i neki scenariji gdje Kubernetes može izazvati dodatne probleme i patnje. Stoga ovdje ne ovisi o ljudima, nego o tome Å”to i kako kompanije razvijaju.
Na primjer, neki straÅ”ni monolit naslijeÄa ā vjerojatno ga ne treba gurati u Kubernetes, jer Äe to donijeti viÅ”e problema nego prednosti. Ili, na primjer, ako je to neki mali projekt ā ima male optereÄenje ili jednostavno nema puno novca i resursa. Tada nema smisla povlaÄiti ga u Kubernetes.
I opÄenito, kao Å”to je veÄ mnogo ljudi reklo, ako se pitate: "Treba li mi Kubernetes?", onda vam vjerojatno i ne treba. Ne sjeÄam se tko je to prvi smislio, mislim da je to bio PaÅ”a Selivanov. S tim se slažem 100%. Treba narasti do Kubernetes-a ā i kada se veÄ pojavi razumijevanje da vam je baÅ” Kubernetes potreban i da Äe pomoÄi rijeÅ”iti odreÄene probleme, tada vjerojatno ima smisla otiÄi uÄiti i razjasniti kako ga ispravno postaviti, kako bi proces prijelaza na Kubernetes bio Å”to manje bolan.
Neke djeÄje boljke i neke jednostavne, a Äak i ne tako jednostavne stvari, mogu se saznati kod nas, a ne prolaziti kroz vlastite prepreke i bol.
Mnoge tvrtke su prvotno krenule s nekakvom infrastrukturom bez kontejnerizacije. Kasnije su se suoÄili s poteÅ”koÄama u upravljanju sustavima, preÅ”li su na Dockere, a u nekom trenutku su shvatili da im u okviru Dockera postaje tijesno. PoÄeli su istraživati Å”to se nudi izvan toga, koja rjeÅ”enja postoje i Kubernetes je jedan od tih sustava koji rjeÅ”ava probleme kada u Äistom Dockeru postane tijesno i nedostaje funkcionalnosti. To je odliÄan primjer kako ljudi postupno evoluiraju, shvaÄaju da im ta tehnologija nije dovoljna i prelaze na viÅ”u razinu. Isprobali su neÅ”to, ponovno im je postalo nedovoljno ā i idu dalje.
To je promiÅ”ljen izbor ā i to je vrlo lijepo.
Zapravo vidim da se vrlo lijepo oblikuje naÅ” sustav, na primjer, , Äak i kroz video teÄajeve. Nakon Dockera slijedi , zatim , zatim . Sve se logiÄno povezuje ā osoba proÄe teÄajeve i dobije cjelovitu profesiju.
U principu, set teÄajeva pokriva vrlo mnogo suvremenih sluÄajeva. Postoje i podruÄja koja ostaju nejasna, nadam se da Äemo uskoro osmisliti teÄajeve koji Äe pokriti ta nejasna podruÄja, posebno neÅ”to vezano uz sigurnost. Jer to postaje vrlo aktualno.
Ako bismo ukratko rekli, postoje neka nejasna podruÄja koja bi bilo odliÄno zatvoriti, da dobijemo cjelovitu sliku ā da ljudi mogu doÄi i da je Kubernetes poput Lego kocaka, iz kojih se mogu sastavljati razni kompleti, a ako neÄega nedostaje ā dopuniti. Tako i naÅ”i teÄajevi omoguÄuju ljudima da razumiju Å”to im treba iz toga, sastavljajuÄi neki mozaik ili konstruktor iz naÅ”ih teÄajeva.

Ako se postavi pravo i iskreno pitanje: "Kome Äe sada koristiti aktivni teÄaj o Dockeru?", onda:
- Studentima koji tek poÄinju.
- Zaposlenicima odjela za testiranje.
- Uistinu, postoji mnogo tvrtki koje joÅ” uvijek, ne samo da ne koriste dockere, veÄ nitko nije Äuo za ovu tehnologiju i ne zna kako je koristiti. Znam nekoliko velikih tvrtki u Sankt Peterburgu koje se veÄ godinama bave razvojem i koriste stare tehnologije, te se u tom smjeru kreÄu. Osobito za takve tvrtke i inženjere u njima, ovaj teÄaj može biti veoma zanimljiv, jer Äe, prvo, omoguÄiti brzo uranjanje u ovu tehnologiju, a drugo, kada se pojavi nekoliko inženjera koji razumiju kako to sve funkcionira, mogu to donijeti u tvrtku i unutar nje razviti tu kulturu i te smjerove.
- Smatram da Äe ovaj teÄaj možda biti koristan i onima koji su veÄ radili s dockerom, ali vrlo malo i viÅ”e u stilu ānapraviti jedan, napraviti dvaā ā i sada se planiraju na bilo koji naÄin povezati s Kubernetesom, Å”to na njih stavlja odreÄene obveze. Ako imaju vrlo povrÅ”no znanje o tome Å”to je docker, kako ga pokrenuti, ali ne znaju kako on funkcionira iznutra, ne znaju Å”to je najbolje raditi s njim, a Å”to ne, onda je ovaj teÄaj odliÄan za sistematizaciju i produbljivanje znanja.
Ali ako su vaÅ”a znanja na razini: āNe znam kako pravilno pisati docker datoteke, imam pojma Å”to su namespaces, kako rade kontejneri, kako su oni stvarno implementirani na razini operativnog sustavaā ā tada nema smisla doÄi k nama, neÄete nauÄiti niÅ”ta novo i bit Äe vam malo žao zbog utroÅ”enog novca i vremena.
Ako bismo mogli formulirati koje su prednosti naÅ”eg teÄaja, onda:
- pokuÅ”ali smo ovaj teÄaj osmisliti s dovoljno praktiÄnih sluÄajeva koji Äe vam omoguÄiti ne samo da shvatite teorijski dio, veÄ i da razumijete zaÅ”to vam to treba i kako Äete to koristiti u buduÄnosti;
- Postoji nekoliko odjeljaka koji se rijetko susreÄu ā i opÄenito se o njima ne može pronaÄi mnogo materijala. Odnose se na interakciju Dockera s operativnim sustavom, Äak i malo drugaÄije. Koje mehanizme je Docker preuzeo iz operativnog sustava kako bi implementirao sustav kontejnerizacije ā i to pruža dublje razumijevanje pitanja pokretanja kontejnera unutar operativnog sustava Linux. Kako to funkcionira, kako meÄusobno djeluju unutar operativnog sustava, izvana i tako dalje.
To je stvarno dubok pogled, koji se rijetko viÄa, i stoga, po mom miÅ”ljenju, to je vrlo važno. Ako želite dobro shvatiti bilo koju tehnologiju i razumjeti Å”to od nje oÄekivati, potrebno je barem u opÄim crtama znati kako ona funkcionira na niskoj razini.
NaÅ” teÄaj pokazuje i objaÅ”njava kako to funkcionira iz perspektive operativnog sustava. S jedne strane, sve kontejnerizacijske sustave koriste iste mehanizme operativnog sustava. S druge strane, koriste ono Å”to postoji u operativnom sustavu Linux, poput Dockera. Ostali sustavi kontejnerizacije nisu smislili niÅ”ta novo ā preuzeli su ono Å”to veÄ postoji u Linuxu i napisali jednostavnu omotnicu koja omoguÄuje brzo pozivanje, pokretanje ili interakciju s time. Sam Docker nije velika slojevita struktura izmeÄu operativnog sustava i naredbenog retka; to je alat koji omoguÄuje da ne piÅ”ete kilotone komandi ili neki C kod kako biste stvorili kontejner, veÄ da to uÄinite unosom nekoliko redaka u terminal.
A osim toga, ako govorimo posebno o Dockera, ono Ŕto je stvarno donio u svijet IT-a su standardi. Kako bi se aplikacija trebala pokrenuti, kako bi trebala raditi, koji su zahtjevi za logove, koji su zahtjevi za skalabilnost i konfiguriranje same aplikacije.
U velikoj mjeri, Docker je o standardima.
Standardi se takoÄer prenose u Kubernetes ā i tamo su toÄno ti isti standardi, ako znate kako dobro pokrenuti svoju aplikaciju u Dockeru, ona Äe 99% vremena raditi jednako dobro i unutar Kubernetesa.
Ako vas je zanimalo ne samo kako je teÄaj Docker nastao, veÄ i ostali teÄajevi, a takoÄer vas zanima sam teÄaj iz praktiÄne perspektive, onda
Bit Äemo radosni vidjeti vas!
Izvor: habr.com
