Dèyè sèn nan. Ki jan yo kreye kou?

Yon patisipan vini nan yon kou oswa yon kou entansif. Li wè ranje òdone nan sipò teknik, byen achemine câbles elektrik, yon layout damye nan sal konferans la, foto klere ak dyagram glise. Moun ki pale ak blag ak souri bay enfòmasyon yon fason ke ou jis gen tan konprann li. Stands yo mete kanpe, travay pratik tou senpleman vole sou dwèt ou, eksepte ke pafwa ou bezwen èd nan anplwaye teknik. sipò.

Epi tou repo kafe ak moun ki gen menm lide, yon atmosfè kè kontan ak enèjik, echanj eksperyans, kesyon ki pi inatandi pou moun ki pale. Tou de repons ak enfòmasyon ke ou pa pral jwenn nan manyèl, men sèlman nan pratik.

Konbyen tan, efò ak nè ou panse li te pran pou fè li sanble egzakteman tankou sa a?

Dèyè sèn nan. Ki jan yo kreye kou?

Mèsi a Volodya Guryanov, yon administratè Kubernetes sètifye ak enjenyè/ekip dirijan nan Southbridge, ki te temwen epi patisipe aktivman nan kreyasyon anpil kou Slurm depi nan konmansman an.

Li te wè anba vant natirèlman kreyasyon-konplexite ak rato litijyeu, insights ak solisyon inatandi. Ak entansif Kubernetes ki deja abitye, tankou Slurm Basic ak Slurm Mega. Ak yon nouvo kou lajman revize Slurm DevOps: Zouti & Tricheur, ki ap apwoche inexorableman e ki pral kòmanse 19 out.

Dèyè sèn nan. Ki jan yo kreye kou?

Men, petèt, ase nan lyrics yo, se pou nou deplase sou istwa a tèt li. Ki jan soti nan yon koup nan sijè entansif yon konplètman oto-ase ak plizyè aspè Docker kou. Se konsa, mwen pral kòmanse istwa a nan ki jan kou yo kreye ak devlope - jis tankou "Sa gen yon bon bout tan nan yon galaksi byen lwen, byen lwen ..."

Ki sa ki dèyè sèn yo?

Si w mande ki jan nou fè kou yo ak ki kote tout bagay kòmanse, mwen pral tou senpleman reponn "Li tout kòmanse ak yon lide."

Anjeneral lide a soti nan yon kote - nou pa chita menòt nan sousòl la jiskaske nou vini ak: "Sou sijè nou ta dwe fè yon kou?" Lide soti nan yon kote pou kont yo soti nan sous ekstèn. Pafwa moun yo kòmanse mande aktivman: "Kisa ou konnen sou yon tèl teknoloji espesifik?" Oswa ki jan li te ye ak Docker ke li te enposib anfòm l 'nan tan an pou kou entansif la - li evidamman te dwe pran deyò yo nan lòd yo gen tan di yon bagay pandan kou entansif la.

Dèyè sèn nan. Ki jan yo kreye kou?

Men ki jan yon lide parèt.

Apre li te anonse, nan opinyon mwen, moman ki pi difisil la kòmanse - jeneralman konprann ki sa yo enkli nan kou sa a - sa a trè konparab ak fason moun ki pale yo prepare pou nenpòt konferans.

Gen yon sèl doulè prensipal lè ou sanble te chwazi yon sijè epi panse: "Kisa mwen ka di sou li? Sa a twò senp, sa a se evidan, tout moun konnen sa tou."

Men, an reyalite sa a se pa ka a ditou. E mwan personnelman mon dir dan plizyer kote ki sa ki paret evidan pour ou, pour bann ki vin ekout ou oubyen fer en kou, i pa ditou evidan. Ak isit la tankou yon gwo kouch travay ak konfli entèn rive, kòm nan ki sa yo enkli nan kou a. Kòm yon rezilta, nou jwenn tankou yon lis de chapit ak tankou gwo kou gwo bale, ki sa kou a pral sou.

Apre sa, travay woutin senp la kòmanse:

  • Seleksyon materyèl
  • Li ak anpil atansyon dokiman an pou vèsyon aktyèl la, depi mond lan IT ap devlope kounye a nan yon kalite vitès cosmic. Menm si ou travay ak yon bagay epi fè yon kou sou li, ou dwe ale nan dokiman an epi wè sa ki nouvo la, ki sa ki enteresan yo pale sou, ki sa ki ta ka itil espesyalman mansyone.
  • Ak yon skelèt sèten nan kou a parèt, kote pifò nan sijè yo, an jeneral, yo deja kouvri e li sanble ke kèlkeswa sa ki la - videyo anrejistreman epi lanse yo nan pwodiksyon an.
  • Men, an reyalite, non, Lè sa a, travay di a kòmanse, men se pa pou otè yo nan kou a, men pou moun ki teste. Anjeneral tèsteur alpha nou yo se sipò teknik, ki, premye, korije kou yo pou nenpòt ki erè sentaktik ak gramatikal. Dezyèmman, yo bat nou ak baton ak baton ak fè sèman lè gen kèk kote konplètman enkonpreyansib. Lè kèk fraz sibòdone ki konpoze konplèks nan yon koup nan paj oswa istwa san sans parèt nan tèks yo. Yo li tout, gade deyò pou li.
  • Lè sa a, etap tès pratik la kòmanse, kote kèk bagay evidan ki pa travay tou yo kenbe ak kèk moman yo montre ki ka swa vin pi difisil, depi li vin pa trè enteresan - jis chita ak kopye - ak kote yo idantifye kote li trè. difisil e nou gen anpil bagay nou vle fè nan men moun ki pral pran kou sa a. Apre sa, rekòmandasyon vini: "Mesye, fè li pi senp isit la, li pral pi fasil yo wè epi pral gen plis benefis nan sa."
  • Apre kantite travay sa a fin fè, pati ki gen rapò ak videyo a ekri, tout bagay sanble ap anfòm. Epi ou ka deja bay li pou pwodiksyon, pou piblisite kou sa a. Men, ankò, non, li twò bonè - paske dènyèman nou te sispann fè tèt nou konfyans yon ti kras epi, nan prensip, yo te kòmanse travay plis ak fidbak. Gen yon bagay tankou tès beta - sa a se lè moun yo envite soti nan deyò, ki pa konekte ak konpayi nou an nan nenpòt fason, ak pou kèk kado yo montre yo tout pati nan kou a, videyo, tèks, travay pratik, pou ke yo evalye bon jan kalite a nan materyèl la, aksè nan materyèl la epi li te ede nou fè kou a pi bon ke posib.
  • Epi lè plizyè iterasyon sa yo pase, moun kap pale, tès alfa nan fòm sipò teknik, tès beta, amelyorasyon. Lè sa a, tout bagay kòmanse tout ankò - sipò teknik, tès beta, amelyorasyon.
  • Ak nan kèk pwen sèten, konpreyansyon an vini ke swa nou fini ak modifikasyon, paske li se konplètman ireyèl asire w ke tout moun renmen li, oswa kèk desizyon radikal yo pran. Lè anpil kòmantè sou sèten kote yo kritik, refè yo globalman, paske yon bagay ale mal.
  • Lè sa a, lè a rive pou modifye minè - yon kote fraz la pa fòmile trè byen, yon kote yon moun pa renmen font la, 14,5, men li ta renmen 15,7.
  • Lè sa a ki kalite kòmantè rete, Lè sa a, se li, kou a plis oswa mwens ouvè, lavant ofisyèl kòmanse.

Ak nan premye gade, travay la kout ak senp nan kreye yon kou vire soti yo pa ditou senp epi li pran yon tan ekstrèmman long.

E gen yon lòt pwen enpòtan ke travay ak kou a pa fini lè kou a lage. Premyèman, nou li ak anpil atansyon kòmantè yo ki rete sou sèten pati. E menm malgre tout efò nou te fè yo, gen kèk defo yo toujou idantifye, kèk erè yo korije ak amelyore sou wout la, an tan reyèl, pou chak itilizatè ki vin apre yo resevwa yon pi bon sèvis.

Dèyè sèn nan. Ki jan yo kreye kou?

Chak kou gen pwopriyetè pwodwi pwòp li yo, ki moun ki, anplis defini konsèp jeneral la, tcheke dat limit yo, li fè nòt nan maj yo ke lè lè a rive konplètman reekri kou a, epi li pral definitivman vini, paske nan de ane, oswa menm yon ane apre, kèk nan sa nou di yo ap vin pa enpòtan tou senpleman paske li pral vin demode moralman. Pwopriyetè pwodwi a fè nòt nan maj yo ke pi souvan moun mande ki pwen yo te klè, ki travay ki te sanble trè difisil, ak ki te sanble, okontrè, trè senp. Ak tout bagay sa yo pran an kont lè re-anrejistreman kou a, pandan kèk kalite refactoring, se konsa ke chak iterasyon nan kou mondyal la vin pi bon, pi pratik ak konfòtab.

Men ki jan kou yo parèt.

Ki jan kou a Docker te fèt

Sa a se yon sijè separe e menm etranj pou nou. Paske sou yon bò, nou pa t planifye pou fè li, paske anpil lekòl sou entènèt ofri li. Nan lòt men an, li menm li te mande pou libète epi li te jwenn yon plas lojik nan konsèp nou an nan fòmasyon IT espesyalis nan Kubernetes.

Pale trè globalman, okòmansman li tout te kòmanse ak yon kou sou Kubernetes, lè li jis te kòmanse, nan opinyon mwen, apre premye Slurm la. Nou kolekte fidbak e nou te wè ke anpil moun vle li yon lòt bagay sou Docker yon lòt kote, e an jeneral anpil moun vin nan kou debaz sou Kubernetes san yo pa konnen sa li ye. Koupre.

Se poutèt sa, pou dezyèm Slurm yo te fè yon kou - oswa pito, pa menm yon kou, men yo te fè yon koup la chapit sou Dockers. Kote yo te di kèk nan bagay ki pi fondamantal yo, pou moun ki vin nan entansif la pa ta santi yo prive epi yo ta jeneralman konprann sa k ap pase.

Dèyè sèn nan. Ki jan yo kreye kou?

Lè sa a, evènman yo devlope apeprè tankou sa a. Kantite materyèl la te grandi epi yo sispann anfòm nan 3 jou. Ak yon lide ki lojik ak evidan parèt: poukisa yo pa vire sa nou kouvri nan Slurm Basic nan yon kalite ti kou kote ou ta ka voye moun ki vle gade yon bagay sou Docker anvan yo pran yon kou entansif sou Kubernetes.

Slurm Junior se, an reyalite, yon konbinezon de plizyè kou debaz sa yo. Kòm yon rezilta, kou a Docker te vin tounen yon moso nan Slurm Junior. Sa vle di, sa a se tankou yon etap zewo anvan Debaz и Mega. Lè sa a, te gen jis trè debaz abstraksyon.

Dèyè sèn nan. Ki jan yo kreye kou?

Nan kèk pwen, moun yo te kòmanse mande: "Mesye, sa a se gwo, sa a se ase yo konprann sa w ap pale sou nan kou entansif yo. Ki kote mwen ka li an plis detay sou sa docker ka fè ak kijan pou travay avèk li, ak sa li ye?" Se konsa lide a te vini pou fè li dwat kou konplè sou Docker, se konsa ke, premyèman, moun ki vin nan Slurm lè l sèvi avèk Kubernetes ka toujou voye ba li, ak nan lòt men an, pou moun ki pa menm enterese nan Kubernetes nan etap sa a nan devlopman. Pou yon espesyalis IT ka vin gade kou nou an sou Docker epi kòmanse chemen evolisyonè li tou senpleman ak Docker pi. Se konsa, ke nou gen tankou yon kou konplè, konplè - ak Lè sa a, anpil moun, ki te gade kou sa a, ki te travay pou kèk tan ak Docker pi, yo te grandi nan nivo a kote yo bezwen Kubernetes oswa kèk lòt sistèm òkestrasyon. Epi yo te vin jwenn nou an patikilye.

Pafwa yo poze kesyon an: "Ki kalite moun kounye a pa ka bezwen Kubernetes?" Men, kesyon sa a se pa sou moun, se pito yon kesyon sou konpayi yo. Isit la ou bezwen konprann ke Kubernetes gen sèten ka kote li byen adapte ak travay ke li rezoud byen, men okontrè, gen kèk senaryo pou itilize Kubernetes lè li lakòz doulè adisyonèl ak soufrans adisyonèl. Se poutèt sa, li pa menm depann sou moun, men sou ki konpayi yo te devlope ak pou konbyen tan.

Pou egzanp, gen kèk monolit terib Legacy - pwobableman ou pa ta dwe pouse li nan Kubernetes, paske li pral lakòz plis pwoblèm pase benefis yo. Oswa, pou egzanp, si sa a se kèk ti pwojè, li gen yon ti chaj oswa, an prensip, pa anpil lajan ak resous. Pa gen okenn pwen nan trenen li nan Kubernetes.

Ak an jeneral, pwobableman, an jeneral, jan anpil moun te deja di, si w ap poze kesyon an: "Èske mwen bezwen Kubernetes?", Lè sa a, gen plis chans ou pa bezwen li. Mwen pa sonje ki moun ki premye te vini ak li, nan opinyon mwen, Pasha Selivanov. Mwen dakò ak sa a 100%. Epi ou bezwen grandi nan Kubernetes - epi lè li deja vin klè ke mwen bezwen Kubernetes ak konpayi nou an bezwen li, epi li pral ede rezoud pwoblèm sa yo ak sa yo, Lè sa a, li pwobableman fè sans pou ale aprann ak konnen egzakteman ki jan yo mete. li moute byen, se konsa ke pwosesis la nan chanje nan Kubernetes se pa trè douloure.

Gen kèk maladi timoun yo ak kèk bagay ki senp, e menm pa trè senp yo, ka jwenn deyò an patikilye nan men nou, epi yo pa ale nan pwòp rato ou ak doulè.

Anpil konpayi yo te ale egzakteman wout la ke nan premye te gen jis kèk kalite enfrastrikti san yo pa kontenèrizasyon. Lè sa a, yo te rive nan pwen kote li te vin difisil pou jere li tout, yo chanje nan Docker ak nan kèk pwen yo te grandi nan pwen kote li te vin restrenn nan kad Docker ak sa li ofri. Apre sa, yo te kòmanse gade nan sa ki te alantou, ki sistèm rezoud pwoblèm sa yo, ak an patikilye Kubernetes - sa a se youn nan sistèm sa yo ki pèmèt ou rezoud pwoblèm lè pi bon kalite Docker vin gen anpil moun epi li manke fonksyonalite, sa a se yon ka reyèlman bon lè moun. Yo ale etap pa etap soti nan anba a moute, konprann ke teknoloji sa a se pa ase ak deplase nan nivo siperyè-a. Yo te itilize yon bagay, li te vin ra ankò, epi yo te deplase sou.

Sa a se yon chwa konsyan - epi li trè fre.

An jeneral, mwen wè ke sistèm nou an trè bèl bati, pou egzanp, kou docker, menm atravè kou videyo. Lè sa a, apre docker li ale Kubernetes debaz yolè sa a Mega Kuberneteslè sa a Ceph. Tout bagay liy moute lojikman - yon moun pase ak yon pwofesyon solid parèt.

Nan prensip, seri a nan kou pèmèt ou kouvri yon anpil nan ka, menm moun modèn. Genyen toujou zòn ki rete yon zòn gri, mwen espere ke nou pral byento kreye kèk kou ki pral pèmèt nou fèmen zòn gri sa yo, an patikilye, nou pral vini ak yon bagay sou sekirite. Paske sa a ap vin trè enpòtan.

Nan ti bout tan, nou gen kèk zòn gri ke li ta trè bèl yo fèmen, se konsa ke li ta dwe yon foto konplè, konplè - ak moun ka vini, ak jis tankou Kubernetes tèt li se tankou yon konstrukteur Lego, ou ka fè bagay diferan de li kolekte, si gen toujou pa ase - sipleman, menm bagay la tou ak kou nou yo, pou moun ka konprann sa yo bezwen soti nan sa a yo bezwen rasanble yon kalite devinèt, yon kalite konstriksyon mete nan kou nou yo.

Dèyè sèn nan. Ki jan yo kreye kou?

Si w poze tèt ou yon kesyon jeneralman kòrèk e onèt: "Kiyès ki ka sèvi ak yon kou Docker aktif kounye a?", Lè sa a:

  • Pou elèv ki fèk kòmanse antre ladann.
  • Anplwaye depatman tès yo.
  • An reyalite, gen anpil konpayi ki toujou, pa sèlman pa sèvi ak Docker, men pesonn pa te tande pale de teknoloji sa yo epi, nan prensip, pa konnen ki jan yo sèvi ak li. Apre sa, mwen konnen plizyè gwo konpayi nan Saint Petersburg ki te devlope pou anpil ane, epi yo te itilize kèk teknoloji ansyen, yo ap deplase nan direksyon sa a. An patikilye, pou konpayi sa yo, pou enjenyè nan konpayi sa yo, kou sa a ka trè enteresan, depi, premyèman, li pral pèmèt ou byen vit plonje tèt ou nan teknoloji sa a, ak dezyèmman, le pli vit ke plizyè enjenyè parèt ki konprann ki jan li tout. travay, yo ka pote li nan konpayi an epi devlope kilti sa a ak direksyon sa yo nan konpayi an.
  • Nan opinyon mwen, kou sa a ka toujou itil pou moun ki te deja travay ak Docker, men trè ti kras ak plis nan style la "fè yon fwa, fè de fwa" - e kounye a, yo pral yon jan kanmenm kominike ak Kubernetes yo menm, ak sa a. enpoze yo sèten obligasyon, si ou gen yon konesans trè supèrfisyèl sou kisa docker ye, ki jan yo kouri li, men an menm tan ou pa konnen ki jan li fonksyone soti nan anndan an, ou pa konnen ki sa ki pi bon fè ak li ak sa ki pi bon pa fè, Lè sa a, kou sa a se byen adapte pou sistematize ak apwofondi konesans.

Men, si ou gen konesans nan nivo: "Mwen pa konnen ki jan yo ekri menm dosye Docker yo kòrèkteman, mwen ka imajine ki espas non yo ye, ki jan resipyan yo travay, ki jan yo aktyèlman aplike nan nivo sistèm operasyon an" - Lè sa a, gen nan. definitivman pa gen okenn pwen nan ale nan nou, ou pa pral aprann anyen nouvo epi ou pral yon ti kras tris pou lajan an ak tan pase.

Si nou fòmile ki avantaj kou nou an genyen, lè sa a:

  • Nou te eseye fè kou sa a ak yon kantite ase pratik ki pral pèmèt ou non sèlman konprann pati teyorik ki egziste a, men tou, konprann poukisa ou bezwen li ak ki jan ou pral sèvi ak li nan lavni;
  • gen plizyè seksyon ki trè raman jwenn nenpòt kote - e an jeneral pa gen anpil materyèl sou yo. Yo gen rapò ak entèraksyon Docker ak sistèm operasyon an, menm yon ti jan diferan. Ki mekanis Docker te pran nan sistèm operasyon an pou aplike sistèm kontenèrasyon an - e sa bay yon konpreyansyon pi pwofon sou pwoblèm nan kouri kontenè nan sistèm opere Linux la. Ki jan li fonksyone, ki jan li reyaji youn ak lòt andedan sistèm operasyon an, deyò, ak sou sa.

Sa a se tankou yon gade vrèman gwo twou san fon ke li rive byen raman, ak an menm tan an, nan opinyon mwen, li trè enpòtan. Si ou vle konprann nenpòt teknoloji byen epi konprann sa ou dwe atann de li, ou bezwen omwen gen yon lide jeneral sou ki jan li fonksyone nan yon nivo ki ba.

Kou nou an montre ak di ki jan sa a fonksyone nan pwen de vi sistèm operasyon an. Sou yon bò, tout sistèm containerization itilize menm mekanis sistèm operasyon yo. Nan lòt men an, yo pran sa ki nan sistèm nan opere Linux, tankou Docker. Lòt sistèm containerization pa t 'vin ak anyen nouvo - yo te pran sa ki te deja nan Linux epi yo te ekri jis yon anbalaj pratik ki pèmèt ou byen vit rele li, kouri li, oswa yon jan kanmenm kominike avèk li. Docker a menm se pa yon kouch trè gwo ant sistèm operasyon an ak liy lòd la, li se yon kalite sèvis piblik ki pèmèt ou pa ekri kilotonn nan kòmandman oswa kèk kalite C kòd yo kreye yon veso, men fè sa lè w antre. yon koup de liy nan tèminal.

Ak yon lòt bagay, si nou ap pale espesyalman sou Docker, sa ki Docker reyèlman pote nan mond lan IT yo se estanda. Ki jan aplikasyon an ta dwe lanse, ki jan li ta dwe travay, ki kondisyon yo pou mòso bwa, ki kondisyon yo pou dekale, konfigirasyon aplikasyon an tèt li.

Nan plizyè fason, docker se sou estanda.

Estanda yo ap deplase tou nan Kubernetes - epi gen egzakteman menm estanda yo si ou konnen ki jan yo byen kouri aplikasyon w lan nan Docker, Lè sa a, 99% nan tan an ap travay menm jan an nan Kubernetes.

Si ou te jwenn tèt ou enterese pa sèlman nan ki jan yo te kreye kou a Docker, men tou, nan lòt kou, men tou, ki enterese nan kou a tèt li soti nan yon pwen de vi pratik, Lè sa a Gen toujou tan pou achte li nan yon rabè pre-lòd nan 5000 rubles jiska 30 jiyè.

Nou pral kontan wè ou!

Sous: www.habr.com

Add nouvo kòmantè