DevOps het 'n gonswoord geword, wat vir baie mense baie verskillende dinge beteken.
Dit is uitdagend om te verstaan ​​en te definieer wat DevOps presies is. En dit is die rede waarom as u basiese konsepte van DevOps ken waarmee die meeste mense assosieer en die geskiedenis van hoe dit ontwikkel het, dan 'n holistiese siening daarvan.
1 Die oorsprong van DevOps
2 Uitdagings opgelos deur DevOps
4 Algemene DevOps-scenario
5 Verskillende fases van DevOps-volwassenheid
6 Die waarde
Die oorsprong van DevOps
DevOps is 'n perfekte voorbeeld van ratsagteware-ontwikkeling. Die idee van DevOps het ontstaan ​​uit die behoefte om tred te hou met die verhoogde snelheid van die sagteware en regdeur ratse metodes te bereik. Die groot vooruitgang in agile kultuur en praktyke gedurende die afgelope dekade het die vereiste van 'n meer holistiese benadering tot die leweringsiklus vir sagteware-aflewering blootgestel..
U wonder miskien om te weet wat behendig sagteware-ontwikkeling is –
Agile ontwikkeling is 'n breë term om verskillende iteratiewe en inkrementele sagteware-ontwikkelingsmetodologieë te definieer. Die gewilde ratse metodologieë is Scrum, Kanban, Scaled Agile Framework® (SAFe®), lean ontwikkeling en ekstreme programmering (XP).
Die kernwaardes en visie van al hierdie wendbare metodologieë is dieselfde, maar elkeen het 'n unieke benadering. Al hierdie metodologieë bevat iterasies, en deurlopende terugvoer om suksesvolle verfynbare sagteware te verfyn en te lewer. Al hierdie metodologieë behels deurlopende beplanning, deurlopende toetsing, deurlopende integrasie en ander eindelose vorms vir sowel die projek as sagteware.
Anders as die gewone prosesse in watervalstyl, is hierdie rats metodologieë liggewig, en hulle het die inherente aanpasbare aard. Een van die beste dinge met hierdie ratse metodologieë is dat hulle almal daarop fokus om mense te bemagtig as dit kom by samewerking en vinnige besluite saam.
Beeld deur Segue
Die ideale van DevOps voer die uitgebreide praktiese ontwikkelingspraktyk uit om die beweging van sagtewareverandering te verfyn deur die opbou, validering, implementering en verskillende afleweringsfases. Dit stel die kruisfunksionele span in staat om die volle eienaarskap te hê van die sagtewareproduk vanaf die ontwerp tot die produksie.
Uitdagings opgelos deur DevOps
Ontplooiingsproses – Verspreide toepassings vereis dikwels dat die binêre en konfigurasielêers na verskeie bedieners ontplooi word. Dit word meer uitdagend as u 'n plaas met bedieners het. Dit word uitdagend om uit te vind wat, hoe en waar om te implementeer. Die ooglopende resultaat?
Lank gewag om die artefakte in die volgende omgewing van die roete na lewende oorsake te kry, en dit vertraag alles soos toetsing, tyd om te leef, ens..
DevOps laat die sagteware toe of webontwikkelaars en IT-bedrywighede om die proses te ontplooi in 'n samewerkingsessie wat heeltemal onberispelik is. Dit stel ons in staat om te verifieer wat werk en dit dan na die volgende vlak te neem met outomatisering om deurlopende ontwikkeling te implementeer. Dit skep ook moontlikhede vir meer gereelde ontwikkeling.
Dit verbeter die samewerking tussen belanghebbendes van beplanning tot aflewering en implementeer outomatisering van die afleweringsproses tot:
Verbeter die frekwensie van die ontplooiing
Bereik vinniger tyd om die eindproduk te bemark
Verlaag die mislukkingskoers van nuwe vrystellings
Dit verkort die leestyd tussen fixes
Verbeter die tussentyd vir die hersteldoel
Die hele sagteware kom na die ontmoetingspunt voordat u met 'n nuwe sagtewareprojek begin. Die span is gebou van ontwikkelaars, toetsers, bedryfs- en ondersteuningspersoneel. Die span maak die plan om 'n ten volle funksionele sagteware te skep wat gereed is vir die ontplooiing.
Elke dag word 'n nuwe kode ontplooi sodra die ontwikkelaars dit voltooi het. Die outomatiese toetsprosedure verseker dat die kode gereed is om geïmplementeer te word. Sodra die kode die groen sein van die outomatiseringstoetsproses kry, word dit aan 'n klein aantal gebruikers ontplooi. Die kode word vir 'n kort periode gemonitor om te verseker dat daar geen onvoorsiene probleme is nie, en dat dit stabiel is. Die nuwe kode word dan aan die res van die gebruikers ontplooi sodra die finale monitering bewys het dat die kode stabiel is. 'N Beduidende gedeelte van die stappe na beplanning en ontwikkeling word gedoen sonder enige menslike ingryping.
Verskillende fases van DevOps-volwassenheid
Daar is baie verskillende fases van DevOps-volwassenheid. Hier is die sleutelfrases wat u moet ken.
Voor die tyd van voortdurende integrasie het ontwikkelingspanne 'n reuse hoeveelheid kode geskryf en dan is dié van verskillende spanne saamgesmelt vir die vrystelling. Die weergawes van die kode was so verskillend dat dit vroeër 'n groot aantal veranderinge nodig gehad het.
Hierdie aantal veranderings maak meer as 'n paar maande duur. Hierdie proses was nie produktief nie.
Dit is die praktyk om op die vinnigste manier 'n nuut ontwikkelde kode te integreer met die belangrikste weergawe wat vrygestel word. As dit kom by die vrystelling van die kode, help deurlopende ontwikkeling baie tyd.
DevOps het nie hierdie term bekendgestel nie. Deurlopende integrasie is 'n ratse ingenieurswese wat uit die Extreme Programming-metodologie kom. DevOps het hierdie praktyk toegepas, want as dit kom by die uitvoering van deurlopende integrasie, is outomatisering nodig. Deurlopende integrasie is dikwels die eerste keer in die rigting van DevOps-volwassenheid.
Die deurlopende integrasie vanuit DevOps se perspektief sluit die stappe in soos om die kode na te gaan, die samestelling in bruikbare kode en die uitvoering van die nodige valideringstoetse. '
Dit is 'n uitbreiding van deurlopende integrasie en ook die tweede fase van DevOps.
Deurlopende aflewering kan u ekstra outomatisering en toetsing byvoeg. Sodat u die kode nie net vinnig met die hoofkodelyn saamsmelt nie, maar ook die kode byna gereed maak om te ontplooi sonder enige menslike ingryping.
Dit is die praktyk om u codebase in 'n byna gereed-vir-ontplooibare toestand te hou.
Deurlopende ontplooiing is die gevorderde evolusie van deurlopende lewering. Hierdie praktyk stel ons in staat om alle maniere in produksie te gebruik sonder enige menslike ingryping.
Die span wat aan deurlopende ontwikkeling werk, ontlaai nooit enige kode sonder om te toets nie. Al die nuutgeskepte kodes word outomaties getoets voordat hulle in die produksiestadium begin. Die kode word by 'n klein aantal gebruikers ontplooi, en daar is 'n outomatiese terugvoerlus wat die kwaliteit en gebruik monitor voordat die kode na die volgende vlak kom.
Daar is 'n klein aantal ondernemings soos Netflix, Etsy, Amazon, Pinterest, Flicker, IMVU en Google, ens. Wat deurlopende ontwikkeling doen.
DevOps fokus baie op die ontwikkeling van 'n samewerkingskultuur en die verbetering van doeltreffendheid deur outomatisering met verskillende DevOps-instrumente. Om DevOps vir u sagteware-oplossing te implementeer, moet u die kombinasie van beide kultuur en gereedskap gebruik.
Die DevOps is 'n spesifieke kultuur wat help om die samewerking te bevorder, die chaos te verminder, gedeelde verantwoordelikhede beter te hanteer, outomatisering, kwaliteitverbetering, waardering van terugvoering en die outomatisering te verhoog.
Agile metodes was nog altyd die beste holistiese manier om sagteware te lewer. As dit kom by die meting van die vordering, doen die ratse ontwikkelingspan dit in terme van werksagteware. Met die ratse metode van DevOps-kultuur kan die eienaars, ontwikkelaars, toetsers en UX-mense nou saamwerk met dieselfde doelwit in gedagte.
Bevat die gereedskap vir konfigurasiebestuur, toetsing en bou van stelsels, ontwikkeling van toepassings, beheer van weergawes en monitering. As dit kom by die implementering van deurlopende integrasie, deurlopende aflewering en deurlopende implementering, benodig hulle verskillende instrumente, en op dieselfde tydstip gebruik hulle ook dieselfde instrumente. U sal meer gereedskap moet gebruik namate u deur die afleweringsketting gaan.
Laat ons van die gewilde gereedskap en praktyke weet.
Bronkode bewaarplek – dit is 'n plek waar ontwikkelaars kan aanmeld en die kode kan verander. Die bronkode-bewaarplek bestuur verskillende weergawes van die kode wat aangemeld is, sodat dit kan verseker dat ontwikkelaars mekaar se kode skryf..
Git, Apache Subversion, IBM Rational, Artifactory, Nexus, Eclipse, ens. Is 'n paar van die gewilde kodes vir die bewaarplek van kodes.
Bou bediener: – die build-bediener is die outomatiseringsinstrument wat gebruik word om die kode in respiratoriese bronkode in die uitvoerbare kodebasis saam te stel. Sommige van die hoogs gebruikte build-bedienergereedskap is Jenkins, SonarQube, Artifactory.
Opstelling bestuur – Marionet, sjef, Ansible, SaltStack, Run Deck, ens. Help om die konfigurasie vir toepassing en infrastruktuur te bestuur om die konsekwentheid in omgewings te behou.
Virtuele infrastruktuur – AWS, GCP, Azure is die top drie openbare wolkverskaffer wat byna elke infrastruktuurdienste bied. Dit bied API waarmee u die infrastruktuur kan voorsien en soos 'n kode kan bestuur.
Ek hoop dit gee jou 'n idee oor DevOps, en as dit jou opgewonde maak, kan jy hierdie aanlyn-meesterklas probeer kursus.