DevOps Introducere pentru începători

DevOps a devenit un cuvânt cheie, ceea ce înseamnă o mulțime de lucruri diferite pentru o mulțime de oameni.


Este dificil să înțelegem și să definim exact ce este DevOps. Și de aceea, dacă cunoașteți concepte fundamentale ale DevOps cu care se asociază majoritatea oamenilor și istoricul modului în care a evoluat, obțineți o viziune holistică asupra acesteia.

Originea DevOps

DevOps este un exemplu perfect de dezvoltare de software agil. Ideea DevOps a venit din nevoia de a ține pasul cu viteza crescută a software-ului și de a realiza prin metode agile. Progresele vaste ale culturii și practicilor agile din ultimul deceniu au expus cerința unei abordări mai holistice a ciclului de viață de livrare software end-to-end.

S-ar putea să vă întrebați să știți care este dezvoltarea de software agilă –

Dezvoltare agila este un termen larg pentru a defini mai multe metodologii de dezvoltare software iterative și incrementale. Metodologiile populare agile sunt Scrum, Kanban, Scaled Agile Framework® (SAFe®), Lean Development și Extreme Programming (XP).

Valorile de bază și viziunea tuturor acestor metodologii agile sunt aceleași, dar fiecare dintre ele are o abordare unică. Toate aceste metodologii includ iterații și feedback continuu pentru perfecționarea cu succes și furnizarea de software scalabil. Toate aceste metodologii implică planificarea continuă, testarea continuă, integrarea continuă și alte forme nesfârșite atât pentru proiect, cât și pentru software.

Spre deosebire de procesele convenționale în cascadă, aceste metodologii agile sunt ușoare și vin cu natura inerent adaptabilă. Unul dintre cele mai bune lucruri despre aceste metodologii agile este că toate se concentrează pe abilitarea oamenilor atunci când vine vorba de colaborare și luarea de decizii rapide împreună.

Imagine după Segue

Idealurile DevOps execută o practică extinsă de dezvoltare agilă pentru a perfecționa mișcarea schimbărilor de software prin construire, validare, implementare și diferite etape de livrare. Permite echipei inter-funcționale să dețină proprietatea deplină asupra produsului software, începând de la proiectare până la producție.

Provocări rezolvate de DevOps

Procesul de implementare Aplicațiile distribuite necesită adesea implementarea fișierelor binare și de configurare pe mai multe servere. Devine mai provocator atunci când ai o fermă de servere. Devine o provocare să vă dați seama ce, cum și unde să se desfășoare. Rezultatul evident?

Multă așteptare pentru a aduce artefactele în următorul mediu al rutei pentru a trăi provoacă întârzierea a tot ceea ce este cum ar fi testarea, timpul de a trăi, etc..

DevOps permite software-ul sau dezvoltatori web și operațiunile IT pentru implementarea procesului într-o sesiune de colaborare care este complet fără vină. Ne va permite să verificăm ce funcționează apoi să o ducem la nivelul următor cu automatizare pentru a implementa o dezvoltare continuă. De asemenea, creează căi pentru o dezvoltare mai frecventă.

Obiective DevOps

Îmbunătățește colaborarea dintre părțile interesate de la planificare la livrare și implementează automatizarea procesului de livrare până la:

  • Îmbunătățirea frecvenței desfășurării
  • Obțineți timp mai rapid pentru a comercializa produsul final
  • Scade rata de eșec a noilor versiuni
  • Acesta scurtează timpul de plumb între remedieri
  • Îmbunătățește între timp în scopul recuperării

Scenariul comun DevOps

Întregul software vine la punctul de întâlnire înainte de a începe un proiect software nou. Echipa este formată din dezvoltatori, testeri, operațiuni și profesioniști de asistență. Echipa face planul pentru crearea unui software complet funcțional, care este gata pentru desfășurare.

În fiecare zi, noul cod este implementat odată ce dezvoltatorii îl completează. Procedura de testare automată asigură dacă codul este gata de implementare. Odată ce codul primește semnalul verde din procesul de testare a automatizării, acesta este implementat unui număr mic de utilizatori. Codul este monitorizat pentru o perioadă scurtă pentru a vă asigura că nu există probleme neprevăzute și este stabil. Noul cod este apoi implementat către restul utilizatorilor, odată ce monitorizarea finală a arătat că codul este stabil. O porțiune semnificativă de pași după planificare și dezvoltare este făcută fără intervenție umană.

Diferite faze ale maturității DevOps

Există multe faze diferite de maturitate DevOps. Iată frazele cheie pe care trebuie să le cunoașteți.

Dezvoltarea cascadei

Înainte de momentul integrării continue, echipele de dezvoltare obișnuiau să scrie o cantitate masivă de cod și apoi cele din diferite echipe au fost contopite pentru eliberare. Versiunile codului au fost atât de diferite încât au necesitat un număr mare de modificări.

Utilizarea acestor numere de modificări – pentru a dura mai mult de câteva luni. Acest proces nu a fost unul productiv.

Integrare continuă

Este o practică de integrare a unui cod nou dezvoltat cu principalul cod care trebuie eliberat în cel mai rapid mod. Când vine vorba de eliberarea codului, dezvoltarea continuă ajută la economisirea mult timp.

DevOps nu a introdus acest termen. Integrarea continuă este o practică de inginerie agilă care vine din metodologia Extreme Programming. DevOps a adoptat această practică deoarece, atunci când vine vorba de executarea cu succes a integrării continue, automatizarea este necesară. Integrarea continuă este adesea prima pe drumul către maturitatea DevOps.

Integrarea continuă din perspectiva DevOps include pașii precum verificarea codului, compilarea în cod utilizabil și rularea unor testări de validare necesare. „

Livrare continuă

Este o extensie a integrării continue și, de asemenea, a doua etapă a DevOps.

Livrarea continuă vă permite să adăugați automatizări și testări suplimentare. Astfel încât să nu combinați rapid codul cu linia de cod principală, ci să luați codul aproape gata de a fi implementat fără intervenție umană.

Este o practică să vă păstrați baza de cod într-o stare aproape gata de implementare.

Desfășurare continuă

Desfășurarea continuă este evoluția avansată a livrării continue. Această practică ne permite să implementăm toate căile în producție fără nicio intervenție umană.

Echipa care lucrează la dezvoltare continuă nu implementează niciodată niciun cod fără testare. Tot codul nou creat este testat automat înainte de a intra în stadiul de producție. Codul este implementat unui număr mic de utilizatori și există o buclă de feedback automat care monitorizează calitatea și utilizările înainte ca acest cod să ajungă la nivelul următor..

Există un număr mic de companii precum Netflix, Etsy, Amazon, Pinterest, Flicker, IMVU și Google, etc., care dezvoltă continuu.

Valoarea

DevOps se concentrează puternic pe dezvoltarea unei culturi de colaborare și îmbunătățirea eficienței prin automatizarea cu diferite instrumente DevOps. Pentru a implementa DevOps pentru soluția dvs. software, trebuie să utilizați combinația de cultură și instrumente.

Cultura DevOps

DevOps este o cultură particulară care ajută la îmbunătățirea colaborării, la diminuarea haosului, la gestionarea responsabilităților partajate într-o manieră mai bună, la implementarea automatizării, îmbunătățirii calității, evaluării feedback-ului și creșterii automatizării.

Metodele agile au fost întotdeauna cel mai bun mod holistic de a furniza software. Când vine vorba de măsurarea progresului, echipa de dezvoltare agilă o face în termeni de software de lucru. Metoda agilă a culturii DevOps permite proprietarilor de produse, dezvoltatorilor, testerilor și persoanelor UX să lucreze strâns împreună cu același obiectiv în minte..

Instrumente DevOps

Include instrumentele pentru gestionarea configurației, testarea și sistemele de construcție, dezvoltarea aplicațiilor, controlul versiunilor și monitorizarea. Când vine vorba de implementarea integrării continue, livrării continue și implementării continue, acestea necesită instrumente diferite și, în același timp, folosesc aceleași unelte. Va trebui să utilizați mai multe instrumente pe măsură ce progresați prin lanțul de livrare.

Să cunoaștem unele dintre instrumentele și practicile populare.

Depozit de coduri sursă – acesta este un loc în care dezvoltatorii pot face check-in și modifica codul. Depozitul de cod sursă gestionează diferite versiuni ale codului care este verificat, astfel încât să se asigure că dezvoltatorii scriu codul celuilalt.

Git, Apache Subversion, IBM Rational, Artifactory, Nexus, Eclipse etc. sunt câteva dintre instrumentele populare de depozitare a codurilor..

Build server: – serverul de compilare este instrumentul de automatizare care este utilizat pentru a compila codul din codul sursă respirator în baza de cod executabilă. Unele dintre instrumentele de server de construire foarte utilizate sunt Jenkins, SonarQube, Artifactory.

Managementul configurației – Puppet, Chef, Ansible, SaltStack, Run Deck, etc. ajută la gestionarea configurației pentru aplicație și infrastructură pentru a menține consistența în medii.

Infrastructura virtuala – AWS, GCP, Azure este primul furnizor public de cloud care oferă aproape toate serviciile de infrastructură. Acestea oferă API care vă permite să furnizați infrastructura și să le gestionați ca un cod.

Concluzie

Sper că vă oferă o idee despre DevOps și dacă acest lucru vă încântă, atunci puteți încerca această masterclass online curs.

Articol de Payal Goyal

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map