Poukisa administratè sistèm, devlopè ak tèsteur yo ta dwe aprann pratik DevOps?

Poukisa administratè sistèm, devlopè ak tèsteur yo ta dwe aprann pratik DevOps?

Ki kote yo ale ak konesans sa a, ki sa yo dwe fè nan pwojè a ak konbyen lajan yo touche, ki sa yo di ak mande nan yon entèvyou - di Alexander Titov, jere patnè nan Express 42 ak otè. kou sou entènèt "Prattik ak zouti DevOps".

Bonjou! Malgre ke tèm DevOps la egziste depi 2009, pa gen okenn konsansis toujou nan kominote Ris la. Ou te pwobableman remake ke kèk konsidere DevOps yon espesyalite, lòt moun konsidere li yon filozofi, ak lòt moun konsidere tèm nan yon seri teknoloji. Mwen te deja fè anpil fwa ak konferans sou devlopman nan direksyon sa a, kidonk mwen pa pral antre nan detay nan atik sa a. Kite m jis di ke nan Express 42 nou enkli bagay sa yo nan li:

DevOps se yon metodoloji espesifik, yon kilti pou kreye yon pwodwi dijital, lè tout espesyalis nan ekip la patisipe nan pwodiksyon an.

Nan devlopman antrepriz klasik, tout bagay ale sekans: pwogramasyon, tès ak sèlman Lè sa a, operasyon, ak vitès la nan pwosesis sa a soti nan lide nan pwodiksyon se 3 mwa. Sa a se yon pwoblèm mondyal pou pwodwi dijital, paske li enposib byen vit resevwa fidbak nan men kliyan yo.

Nan DevOps, zouti ak apwòch yo fèt pou asire ke pwosesis devlopman, tès ak operasyon yo kouri ansanm.

Ki sa ki soti nan apwòch sa a?

  • Ou pa ka anboche kèk "enjenyè" ki pral vin rezoud tout pwoblèm yo ak pwodiksyon an. Tout ekip la dwe aplike teknik la.

    Poukisa administratè sistèm, devlopè ak tèsteur yo ta dwe aprann pratik DevOps?

  • DevOps se PA pwochen fòm sysadmin pou ajou. "DevOps Engineer" son apeprè menm jan ak "Agile devlope."

    Poukisa administratè sistèm, devlopè ak tèsteur yo ta dwe aprann pratik DevOps?

  • Si yon ekip sèvi ak Kubernetes, Ansible, Prometheus, Mesosphere ak Docker, sa pa vle di ke pratik DevOps yo te aplike la.

    Poukisa administratè sistèm, devlopè ak tèsteur yo ta dwe aprann pratik DevOps?

Lavi apre DevOps p'ap janm menm jan an

Apwòch DevOps la se, anvan tout bagay, yon fason diferan nan panse, yon pèsepsyon nan devlopman kòm yon antye ak plas yon sèl nan pwosesis la. Nou divize kou sou entènèt nou an an 2 blòk:

1. Oto-detèminasyon

Premyèman, nou egzamine an detay sans nan apwòch DevOps la, epi elèv yo dekouvri nouvo wòl nan ekip la, wè kiyès ki reponn plis, epi detèmine pou tèt yo ki direksyon yo devlope.

2. Zouti ak pratik

Elèv yo metrize teknoloji espesifik nan pwen de vi metòd DevOps la.

Zouti DevOps yo ka itilize tou de nan apwòch DevOps ak nan devlopman klasik. Egzanp ki pi evidan ta dwe itilize zouti jesyon konfigirasyon Ansible. Li te kreye ak vin ansent pou aplike pratik DevOps "Enfrastrikti kòm Kòd", ki vle di ke diferan eta nan sistèm nan yo dekri, soti nan anviwònman sistèm opere ak lojisyèl aplikasyon an. Se deskripsyon an divize an kouch epi li pèmèt ou jere yon konfigirasyon konplèks, ki toujou ap chanje. Men, enjenyè yo souvan itilize Ansible kòm yon fason yo kouri scripts bash sou plizyè machin. Sa a se ni move ni bon, men ou bezwen konprann ke prezans nan Ansible pa garanti prezans nan DevOps nan konpayi an.

Nou nan pwosesis la kou Ou pral plonje nan pwosesis pou devlope yon aplikasyon ki sanble ak pi popilè Reddit la, kòmanse ak vèsyon monolitik li yo, k ap deplase etap pa etap nan mikwosèvis. Etap pa etap nou pral metrize nouvo zouti: Git, Ansible, Gitlab epi fini ak Kubernetes ak Prometheus.

An tèm de pratik, nou pral swiv taktik yo nan twa chemen ki dekri nan Manyèl la DevOps - pratik livrezon kontinyèl, pratik fidbak, ak sans nan kou a tout antye se pratik la nan aprantisaj kontinyèl ansanm ak sistèm ou an.

Kisa konesans sa a bay chak espesyalis yo?

Pou administratè sistèm yo

Pratik yo pral pèmèt ou ale lwen administrasyon an pou kreye yon tiyo livrezon kontinyèl ak yon platfòm enfrastrikti pou livrezon lojisyèl. Pwen an se ke li kreye yon pwodwi - yon platfòm enfrastrikti pou devlopè ki ede yo byen vit pouse chanjman yo nan pwodiksyon an.

Précédemment, administratè sistèm yo te dènye bastion an, apre sa tout bagay ale nan pwodiksyon an. Ak fondamantalman yo te angaje nan dife kontinyèl - nan limyè nan ki li se byen difisil yo fouye nan bezwen yo nan biznis la, panse sou pwodwi a ak benefis yo pou itilizatè a.
Mèsi a metòd DevOps, panse chanje. Administratè sistèm nan konprann kijan pou tradwi konfigirasyon an nan kòd, ki pratik ki egziste pou sa.

Sa a enpòtan paske konpayi yo de pli zan pli reyalize ke yo pa jis bezwen otomatize tout bagay, i.e. nan ki administratè sistèm ansyen lekòl yo te esansyèlman abitye fè, ki moun ki plis sa a kominike ti kras epi yo pa enfòme ekip la sou tout chanjman yo te fè. Koulye a, ekip yo ap chèche pou moun ki pral vin manifakti a nan pwodwi enfrastrikti entèn yo epi ede konbine pwosesis yo separe nan yon sèl.

Devlopè

Pwomotè a sispann panse sèlman nan algoritm. Li akeri konpetans nan travay ak enfrastrikti, konpetans nan konsyans achitekti nan peyizaj la. Yon devlopè konsa konprann ki jan aplikasyon an ap travay, ki jan li ale nan tiyo livrezon kontinyèl la, ki jan yo kontwole li, ki jan yo anrejistre li pou ke li benefisye kliyan an. Kòm yon rezilta, tout konesans sa a pèmèt ou ekri kòd ki enpòtan.

Pou tèsteur

Tès yo te deplase nan mòd otomatik depi lontan; nou tout di ke anpil tès pa ta dwe fè, men ekri :) Tès vin tounen yon pati nan tiyo livrezon an antye nan pwodwi ou a. Yon tèsteur bezwen non sèlman pou aprann kijan pou ekri kòd, men tou pou konprann kijan pou li entegre li nan sistèm livrezon kontinyèl, ki jan yo resevwa fidbak nan kòd la nan tout etap livrezon, ak ki jan yo toujou ap amelyore tès yo nan lòd yo detekte erè kòm. bonè posib.

Se konsa, li sanble ke tout twa etap fèt an menm tan. Pou egzanp, li ta ka sanble tankou sa a:

Pwomotè a ekri kòd la, imedyatman ekri tès pou li, epi li dekri yon veso Docker pou kòd la ki ta dwe kouri. Li tou imedyatman dekri siveyans la ki pral kontwole operasyon an nan sèvis sa a nan pwodiksyon, ak komèt tout sa a.

Lè entegrasyon kontinyèl kòmanse, pwosesis kouri ansanm. Sèvis la kòmanse epi li konfiguré. An menm tan an, veso Docker la kòmanse epi li tcheke ke li ap kouri. An menm tan an, tout enfòmasyon ale nan sistèm anrejistreman an. Ak sou sa nan chak etap nan devlopman - li vire soti nan yon travay ann ekip reyèl nan administratè sistèm, devlopè ak tèsteur.

Mwen etidye DevOps, kisa apre?

Kòm ou konnen, youn nan jaden an se pa yon vanyan sòlda. Si konpayi ou a pa sèvi ak metòd sa a, konpetans yo akeri yo pral san fè anyen konsa. Epi apre ou fin fè konesans ak apwòch DevOps, ou gen plis chans pa pral vle vin yon cog nan devlopman antrepriz. Ka gen yon sèl eksepsyon: ou se yon administratè sistèm nan ekip la epi ou ka rebati tout pwosesis yo nan yon nouvo fason. Li vo ajoute isit la ke gen yon anpil nan konpayi ki itilize apwòch sa a, epi yo pa afekte pa fèmen pòt la epi yo ap chèche espesyalis. Paske DevOps se sou kreye pwodwi sou entènèt.

Epi kounye a sou bon bagay yo: metriz pratik ak zouti DevOps se apeprè + 30% nan valè ou sou mache travay la. Salè kòmanse soti nan 140 mil rubles, men yo detèmine, natirèlman, pa espesyalite prensipal ou ak fonksyonalite.

Ou ka gade pòs vid ki make "oryante sou enfrastrikti", kote gen automatisation tès, devlopman aplikasyon mikwosèvis lè l sèvi avèk teknoloji nwaj, pòs vid pou enjenyè enfrastrikti ak tout kalite referans sou DevOps. Jis sonje ke chak konpayi vle di yon bagay diferan nan definisyon sa a - li deskripsyon an ak anpil atansyon.

Pandan lansman kou nou an, yon insight te vin jwenn mwen - anpil moun apre kou a tonbe nan pèlen yon enjenyè DevOps. Yo jwenn yon pòs vid ak tit ki endike anwo a, yo resevwa yon bon òf, epi yo vin travay epi reyalize ke yo pral oblije kenbe yon script bash twa paj nan Jenkins. Ki kote Kubernetes, ChatOps, degaje Canary ak tout sa? Men, pa gen anyen, paske konpayi an pa bezwen DevOps kòm yon metodoloji, men li sèvi ak inovasyon endividyèl.

Sa a se yon rezon ki fè entansif chèche konnen nan men konpayi an ki jan pwosesis livrezon lojisyèl an ap travay, pile teknoloji a ak ki responsablite ou pral fè.

Si patwon an reponn kesyon ou yo abstrèman, tankou si soti nan yon liv, san detay, Lè sa a, gen plis chans pa gen okenn pwosesis DevOps nan konpayi an ankò, men sa a se pa yon rezon ki fè yo refize, etidye konpayi an ak pwodwi li yo, si gen sou entènèt. sèvis ke konpayi an devlope tèt li, aplikasyon pou mobil, lide pwodwi.

Si wi, Lè sa a, klarifye si w ap gen pou travay dirèkteman ak sistèm sa yo oswa si gen posibilite pou mouvman orizontal nan ekip yo nan sèvis sa yo pandan y ap demontre bon rezilta nan pratik DevOps. Si wi, Lè sa a, li vo ale epi yo te aktif ak itil, epi si ou ranpli kou nou an, se lèt la garanti.

Li enpòtan pou sonje ke pratikan Devops yo jwenn valè vre sèlman ak eksperyans nan devlopman / administrasyon / tès. Se sèlman lè sa a konesans pa pral abstrè, men anrichi espesyalis la (nan tout sans). Se poutèt sa, lide "aprann DevOps nan grate" se apeprè menm jan ak aprann "sèvi ak lantiy nan grate" si ou pa janm kenbe yon kamera nan men ou oswa dirije yon tire. Pou ede w deside si kou a bon pou ou, nou te fè yon tès antre ki pral tcheke nivo ase konesans ou.

Mwen panse ke youn nan ke trik nouvèl yo kou — ke pandan kou fòmasyon chak elèv detèmine pou tèt li nan ki direksyon li vle devlope. Nou souvan wè tranzisyon lè yon devlopè vin yon enjenyè enfrastrikti, ak yon administratè reyalize ke li enterese nan ekri kòd - Lè sa a, li plis etidye lang nan epi konplete li ak konpetans DevOps akeri yo. Se poutèt sa, nou espesyalman akeyi moun ki santi ke karyè yo bloke nan yon kafou. Kou a kòmanse 28 me, men ou ka rantre nan 2 semèn apre kòmansman klas yo. Ou ka wè pwogram nan epi pran tès la по ссылке. Na wè nan OTUS!

Sous: www.habr.com

Add nouvo kòmantè