Ja nodarbojaties ar IT nozari, iespējams, noteikti esat dzirdējuši vienu no populārākajiem modes vārdiem ar nosaukumu DevOps. Ja vēlaties turpināt karjeru DevOps, tad noteikti ir izdevīgi un izdevīgi doties uz . Pirms mēs turpinām turpināt, es iesaku jums apskatīt šādus emuārus:
10 galvenie iemesli, kāpēc mācīties DevOps
Daudzi lieli IT uzņēmumi ir izvēlējušies DevOps par savu turpmāko ceļu. Tāpēc šajā emuārā es apspriedīšu, kas īsti ir DevOps, un jautājumi, par kuriem es runāšu, ir šādi:
Kas ir DevOps?
Termins DevOps ir divu vārdu kombinācija, proti, Attīstība un Operācijas. DevOps ir prakse, kas ļauj vienai komandai pārvaldīt visu lietojumprogrammu izstrādes dzīves ciklu, tas ir, izstrādi, testēšanu, izvietošanu un uzraudzību.
DevOps galvenais mērķis ir samazināt sistēmas izstrādes dzīves cikla ilgumu, vienlaikus nodrošinot funkcijas, labojumus un atjauninājumus, cieši sinhronizējot tos ar biznesa mērķiem.
DevOps ir programmatūras izstrādes pieeja, ar kuras palīdzību jūs varat ātri un ar lielāku uzticamību izstrādāt izcilas kvalitātes programmatūru. Tas sastāv no dažādiem posmiem, piemēram, nepārtraukta attīstība, nepārtraukta integrācija, nepārtraukta testēšana, nepārtraukta izvietošana un nepārtraukta uzraudzība.
Tā kā tas ir DevOps, ļaujiet mums apskatīt DevOps vēsturi.
DevOps vēsture
Pirms DevOps mums bija divas pieejas programmatūras izstrādei, proti, ūdenskritums un veikls.
Ūdenskrituma modelis
Ūdenskrituma modelis ir programmatūras izstrādes modelis, kas ir diezgan taisns un lineārs. Šis modelis ir balstīts uz augšupēju pieeju.
kādi ir ierobežojumi sql
Šim modelim ir dažādi, sākot ar Prasību apkopošana un analīze . Šajā posmā jūs saņemat klienta prasības lietojumprogrammas izstrādei. Pēc tam jūs mēģināt analizēt šīs prasības.
Nākamais posms ir Dizains fāze, kurā jūs sagatavojat programmatūras projektu. Šeit jūs domājat par to, kā programmatūra patiesībā izskatīsies.
Kad dizains ir gatavs, jūs pārvietojaties tālāk ar Īstenošana fāze, kurā jūs sākat ar lietojumprogrammas kodēšanu. Izstrādātāju komanda strādā kopā ar dažādiem lietojumprogrammas komponentiem.
Kad esat pabeidzis lietojumprogrammas izstrādi, to pārbaudāt Pārbaude fāze. Lietojumprogrammā tiek veikti dažādi testi, piemēram, vienības testēšana, integrācijas testēšana, veiktspējas pārbaude utt.
Kad visi lietojumprogrammas testi ir pabeigti, tā tiek izvietota ražošanas serveros.
Beidzot nāk Apkope fāze. Šajā posmā tiek uzraudzīta lietojumprogrammas veiktspēja. Šajā posmā tiek atrisināti visi ar lietojumprogrammas darbību saistītie jautājumi.
Ūdenskrituma modeļa priekšrocības:
Vienkārši saprotams un lietojams
Ļauj viegli pārbaudīt un analizēt
Ietaupa ievērojamu laiku un naudu
Labi maziem projektiem, ja visas prasības ir skaidri noteiktas
Ļauj veikt nodaļu sadalījumu un vadības kontroli
Ūdenskrituma modeļa trūkumi:
Riskanti un nenoteikti
Pašreizējā progresa redzamības trūkums
Nav piemērots, ja prasības nemitīgi mainās
Grūti veikt izmaiņas produktā, kad tas atrodas testēšanas fāzē
Gala produkts ir pieejams tikai cikla beigās
Nav piemērots lieliem un sarežģītiem projektiem
Veiklā metodika
Agile metodika ir iteratīva programmatūras izstrādes pieeja, kurā programmatūras projekts tiek sadalīts dažādās iterācijās vai sprintos. Katrā atkārtojumā ir tādas fāzes kā ūdenskrituma modelis, piemēram, prasību apkopošana, projektēšana, izstrāde, testēšana un apkope. Katras iterācijas ilgums parasti ir 2-8 nedēļas.
Veikls process
Programmā Agile uzņēmums izlaiž lietojumprogrammu ar dažām augstas prioritātes funkcijām pirmajā atkārtojumā.
Pēc tās izlaišanas tiešie lietotāji vai klienti sniedz jums atsauksmes par lietojumprogrammas veiktspēju.
Tad jūs veicat nepieciešamās izmaiņas lietojumprogrammā kopā ar dažām jaunām funkcijām, un programma atkal tiek izlaista, kas ir otrā atkārtošana.
Jūs atkārtojat visu šo procedūru, līdz iegūstat vēlamo programmatūras kvalitāti.
Agile modeļa priekšrocības
Tas adaptīvi reaģē uz prasību izmaiņām labvēlīgi
Kļūdu novēršana izstrādes procesa sākumā padara šo procesu rentablāku
Uzlabo produkta kvalitāti un padara to bez kļūdām
Ļauj tiešai saziņai starp cilvēkiem, kas iesaistīti programmatūras projektā
Ļoti piemērots lieliem un ilgtermiņa projektiem
Minimālās resursu prasības un ļoti viegli pārvaldāms
Agile modeļa trūkumi
Ļoti atkarīgs no skaidrām klientu prasībām
Diezgan grūti paredzēt laiku un pūles lielākiem projektiem
Nav piemērots sarežģītiem projektiem
Trūkst dokumentācijas efektivitātes
Palielināti uzturēšanas riski
Tagad turpināsim un apspriedīsim DevOps posmus un rīkus.
DevOps posmi un rīki
Kā minēts iepriekš, dažādi posmi, piemēram, nepārtraukta attīstība, nepārtraukta integrācija, nepārtraukta testēšana, nepārtraukta izvietošana un nepārtraukta uzraudzība, veido DevOps dzīves ciklu. Tagad apskatīsim katru DevOps dzīves cikla posmu pa vienam.
1. posms: nepārtraukta attīstība
Izmantotie rīki: Git, SVN, Mercurial, CVS
Procesa plūsma:
Šis ir posms, kas ietver programmatūras “plānošanu” un “kodēšanu”. Jūs izlemjat projekta vīziju plānošanas posmā, un izstrādātāji sāk izstrādāt lietojumprogrammas kodu.
Nepastāv DevOps rīki kas nepieciešami plānošanai, taču koda uzturēšanai ir vairāki rīki.
Kods var būt jebkurā valodā, taču jūs to uzturat, izmantojot versiju vadības rīkus. Šis koda uzturēšanas process ir pazīstams kā Source Code Management.
Pēc koda izstrādes jūs pārejat uz nepārtrauktās integrācijas fāzi.
2. posms: nepārtraukta integrācija
Rīki: Jenkins, TeamCity, Travis
Procesa plūsma:
Šis posms ir visa DevOps dzīves cikla kodols. Tā ir prakse, kurā izstrādātājiem ir nepieciešams biežāk veikt izmaiņas avota kodā. Tas var būt vai nu katru dienu vai nedēļu.
Pēc tam jūs izveidojat katru apņemšanos, un tas ļauj savlaicīgi atklāt problēmas, ja tādas ir. Celtniecības kodekss ietver ne tikai kompilēšanu, bet arī koda pārskatīšanu, vienības testēšanu, integrācijas testēšanu un iepakošanu.
Kods, kas atbalsta jaunu funkcionalitāti, ir ar esošo kodu. Tā kā programmatūra tiek nepārtraukti attīstīta, atjauninātais kods ir jāintegrē nepārtraukti, kā arī vienmērīgi ar sistēmām, lai atspoguļotu izmaiņas gala lietotājiem.
- Šajā posmā jūs izmantojat rīkus koda izveidošanai / iesaiņošanai izpildāmā failā, lai to varētu pārsūtīt uz nākamajām fāzēm.
3. posms: nepārtraukta testēšana
Rīki: Jenkins, Selenium TestNG, JUnit
Procesa plūsma:
Šajā posmā jūs nepārtraukti pārbaudāt izstrādātās programmatūras kļūdas, izmantojot automatizācijas testēšanas rīkus. Šie rīki ļauj kvalitātes pārbaudēm rūpīgi paralēli pārbaudīt vairākas kodu bāzes, lai pārliecinātos, ka funkcionalitātē nav trūkumu. Šajā posmā testa vides simulēšanai varat izmantot Docker Containers.
Selēns tiek izmantots automatizācijas testēšanai, un pārskatus ģenerē TestNG . Jūs varat automatizēt visu šo testēšanas posmu, izmantojot nepārtrauktas integrācijas rīku ar nosaukumu Jenkins.
Pieņemsim, ka jūs esat uzrakstījis selēna kodu Java, lai pārbaudītu savu lietojumprogrammu. Tagad jūs varat izveidot šo kodu, izmantojot skudru vai maven. Kad esat izveidojis kodu, pēc tam pārbaudiet to, vai tiek pārbaudīta lietotāju pieņemšanas pārbaude (UAT). Visu šo procesu var automatizēt, izmantojot Dženkinss .
4. posms: nepārtraukta izvietošana
Izmantotie rīki:
Konfigurācijas pārvaldība - šefpavārs, leļļu spēlētājs, Ansible
Konteiners - dokers, klaidonis
Procesa plūsma:
- Šajā posmā jūs izvietojat kodu ražošanas serveros. Ir svarīgi arī nodrošināt, lai pareizi izvietotu kodu visos serveros. Pirms turpināt, mēģināsim izprast dažas lietas par konfigurācijas pārvaldību un Konteineru rīki . Šie rīku komplekti šeit palīdz sasniegt nepārtrauktu ieviešanu (CD).
Konfigurācijas pārvaldība ir darbība, kas nosaka un uztur konsekvenci lietojumprogrammas funkcionālajās prasībās un veiktspējā. Ļaujiet man to izteikt vieglāk, tas ir izlaišanas izlaišana serveros, atjauninājumu plānošana visos serveros un pats svarīgākais, lai konfigurācijas būtu konsekventas visos serveros.
Konteinerizēšanas rīkiem ir vienlīdz izšķiroša loma izvietošanas posmā. Konteinerizēšanas rīki palīdz nodrošināt konsekvenci gan izstrādes, gan testēšanas, iestudēšanas, gan ražošanas vidēs. Bez tam tie arī palīdz ātri palielināt un samazināt gadījumus.
5. posms: nepārtraukta uzraudzība
Izmantotie rīki: Splunk, ELK Stack, Nagios, New Relic
Procesa plūsma:
- Šis ir ļoti kritisks DevOps dzīves cikla posms, kurā jūs nepārtraukti uzraugāt savas lietojumprogrammas veiktspēju. Šeit jūs ierakstāt svarīgu informāciju par programmatūras lietošanu. Pēc tam jūs apstrādājat šo informāciju, lai pārbaudītu lietojumprogrammas pareizu funkcionalitāti. Šajā fāzē jūs novēršat tādas sistēmas kļūdas kā zema atmiņa, serveris nav sasniedzams utt.
Šajā praksē piedalās Operations komanda, kas uzraudzīs lietotāja darbību, lai noteiktu kļūdas vai sistēmas nepareizu rīcību.Nepārtrauktās uzraudzības rīki palīdz rūpīgi uzraudzīt lietojumprogrammas un serveru veiktspēju, kā arī ļauj proaktīvi pārbaudīt sistēmas stāvokli.
Visbeidzot, mēs apspriedīsim, kurš tieši ir DevOps inženieris.
Kas ir DevOps inženieris?
DevOps inženieris ir kāds, kurš saprot programmatūras izstrādes dzīves ciklu un pilnībā izprot dažādus automatizācijas rīkus digitālo cauruļvadu (CI / CD cauruļvadu) izstrādei.
DevOps inženieris sadarbojas ar izstrādātājiem un IT personālu, lai uzraudzītu kodu izlaišanu. Viņi ir vai nu izstrādātāji, kas interesējas par izvietošanu un tīkla darbībām, vai arī sistēmas administratori, kuriem ir aizraušanās ar skriptu un kodēšanu, un viņi pāriet uz izstrādes pusi, kur var uzlabot testēšanas un izvietošanas plānošanu.
Tātad tas bija viss no manas puses šajā rakstā Kas ir DevOps. Es ceru, ka jūs esat sapratis visu, ko es šeit apspriedu. Ja jums ir kādi jautājumi, lūdzu, pieminējiet to komentāru sadaļā.
Tālāk ir saraksts ar emuāriem, kas jums varētu šķist interesanti:
Tagad, kad esat sapratis Kas ir DevOps , pārbaudiet Autors: Edureka, uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Edureka DevOps sertifikācijas apmācības kurss palīdz izglītojamajiem saprast, kas ir DevOps, un iegūt zināšanas dažādos DevOps procesos un rīkos, piemēram, Leļļu, Jenkins, Nagios, Ansible, Chef, Saltstack un GIT, lai automatizētu vairākus SDLC soļus.
Vai mums ir jautājums? Lūdzu, pieminējiet to komentāru sadaļā, un mēs ar jums sazināsimies.