devops automation how is automation applied devops practice
Automatisering i DevOps:
I den siste opplæringen lærte vi viktigheten av Kildekontroll i DevOps . Her, i denne opplæringen, vil vi lære om automatisering i DevOps.
Automatisering er det ultimate behovet for DevOps-praksis, og 'Automatiser alt' er nøkkelprinsippet til DevOps. I DevOps starter automatiseringsspark fra kodegenereringen på Developers-maskinen til koden blir presset til koden og til og med etter for å overvåke applikasjonen og systemet i produksjonen.
Foreslått lesing => Informativ DevOps-veiledningsserie
Hele DevOps-rørledningen som inneholder kontinuerlig integrasjon, kontinuerlig testing og kontinuerlig distribusjon, inkludert overvåking av applikasjonsytelse i live, er automatisert.
Automatisering av infrastrukturoppsett og konfigurasjoner og programvaredistribusjon er det viktigste høydepunktet i DevOps-praksis. DevOps-praksis er sterkt avhengig av automatisering for å kunne levere over en periode på få timer, og foreta hyppige leveranser på tvers av plattformer.
Dermed fremmer automatisering i DevOps hastighet, større nøyaktighet, konsistens, pålitelighet og øker antall leveranser. Til slutt innkapsler automatisering i DevOps alt fra å bygge, distribuere og overvåke.
VIDEO Del 2 Blokk 3: DevOps-automatisering- 16 minutter og 40 sekunder
La oss forstå betydningen av automatisering i DevOps-praksis i detalj i denne opplæringen.
Her vil vi diskutere:
- Hvordan brukes automatisering i DevOps-praksis?
- Behov og rolle for automatisering?
- Hva skal jeg automatisere?
- Verktøy og rammeverk, kontinuerlig testing?
Jeg er litt redd for å snakke om automatisering. For hvor mye jeg noensinne snakker om automatisering, er det ifølge meg aldri fullstendig.
Unødvendig å si, automatisering er rett og slett å komme vekk fra de manuelle oppgavene. Folk ønsker å redusere deres engasjement i de verdslige rutinemessige oppgavene og bruke tiden og intelligensen i noe nytt eller innovativt.
Når det er sagt, er rollen som automatisering i DevOps veldig viktig og veldig viktig for å levere verdi til kunden kontinuerlig.
La oss svare sammen, hvordan automatisering blir brukt i DevOps-praksis, sammen med hva vi skal automatisere, fordi begge disse spørsmålene blir besvart sammen.
Hva skal jeg automatisere?
Jeg tror ikke mye forklaring er nødvendig for svaret på dette spørsmålet i denne automatiseringstiden. Uansett hvor vi går, ser vi ting som blir automatisert, enten med minimal eller ingen menneskelig inngripen i det hele tatt. Så DevOps er ikke et unntak fra dette.
I en tradisjonell programvareutviklingsmetode var det bare utviklingsteamet og deres aktiviteter som ble automatisert, spesielt testing. Det pleide å være slik at automatisering betyr testing og automatisering av testtilfeller, at også bare funksjonelle testsaker, men ikke engang ikke-funksjonelle tester som ytelse og sikkerhet.
Og ingen av de andre aktivitetene, spesielt ops-aktivitetene, ble brukt til å bli automatisert. Feil i manuell distribusjon på en stor klynge som involverte 8 servere og tapet det forårsaket er veldig bra Eksempel av kompleksitet involvert i distribusjoner, og det forklarer klart behovet for automatisering for Devops-aktiviteter.
hvilken type test som brukes for å bekrefte at alle programmer i et program fungerer riktig
Jeg har sett meg selv, at organisasjoner ansetter dyktige og intelligente mennesker ved å betale en enorm lønnspakke, for å konfigurere nettverk og miljøer, som pleide å gjøre basert på deres intelligens, kunnskap i det respektive området, deres erfaring og ekspertise, som var et komplett manuelt arbeid.
Manuell konfigurasjon er alltid utsatt for feil som alle vet. Det som pleide å skje i tilfelle manuell oppsett, er at disse smarte menneskene, nettverkskonfiguratorene, over en periode etter å ha gjort det samme arbeidet gjentatte ganger igjen og igjen, blir lei av disse aktivitetene og ender med å begå feil på grunn av til uaktsomhet.
Du vet at de er veldig strålende, og disse aktivitetene vil være veldig enkle og uinteressante for dem, og de trenger nye utfordringer hver dag, og ikke denne kjedelige oppgaven.
Så introduksjonen av automatisering for programvareinstallasjon og versjonskontroll av infrastrukturdelen ble en stor gevinst og reduserte mange menneskelige feil i tillegg til å spare tid og tillater enhver vanlig mann å gjøre dette, og fjerner dermed avhengigheten av fagarbeiderne.
Å kjøre rundt prosesser hvis et nytt miljø skal settes opp, som å heve billetten for å sette opp et nytt miljø, IT-team som jobber bakfra med å sette det opp, fjernes alle disse problemene.
Dermed får individuelle teammedlemmer fullmakt til å utføre oppgavene. Tenk deg hastigheten, påliteligheten og konsistensen som oppnås ved automatisering. Så, automatisering har økt veldig, antall leveranser til produksjonen.
Så nå i DevOps-praksis har også Operations-teamet startet automatisering i alle sine arbeider, noe som har blitt nøkkelen til suksessen til DevOps.
Faktisk, i DevOps-praksis, starter automatiseringsspark fra kodegenerering på utviklerens maskin til koden er ute til produksjonen, og til og med deretter i overvåking av applikasjonen i live. Dette er en typisk DevOps-syklus.
Utviklings- og Ops-team sjekker koden og miljøkonfigurasjonene til kildekontrollen, hvorfra automatiseringen starter for å utløse byggingen, kjøre enhetstesttilfeller og annen grunnleggende kodekvalitet, dekningstesttilfeller, sikkerhetsrelaterte testtilfeller etc.
qa testleder intervju spørsmål og svar
Når koden er ferdig med dette, blir koden automatisk samlet, lagres i versjonskontrollen og blir automatisk distribuert til de videre miljøene for videre testing og til slutt til produksjonsutgivelsen.
Vi kan se automatiseringen utføres i alle faser av utviklingen, startende fra utløsing av bygningen, utføring av enhetstesting, emballering, distribusjon til de spesifiserte miljøene, utførelse av byggverifiseringstester, røykprøver, aksepttestsaker og til slutt distribusjon videre til det endelige produksjonsmiljøet.
Selv når vi sier automatisering av testsaker, er det ikke bare enhetstester, men installasjonstester, integrasjonstester, brukeropplevelsestester, UI-tester etc.
DevOps tvinger operasjonsteamet, i tillegg til utviklingsaktiviteter, til å automatisere alle sine aktiviteter, som å klargjøre serverne, konfigurere serverne, konfigurere nettverkene, konfigurere brannmurer, overvåke applikasjonen i produksjonssystemet.
Derfor, for å svare på hva du skal automatisere, er det build trigger, kompilering og bygging, distribusjon eller installering, automatisering av infrastruktur satt opp som et kodet skript, miljøkonfigurasjoner som et kodet skript, unødvendig å nevne testing, overvåking av livets ytelse etter distribusjon i livet, logger overvåking, overvåking av varsler, presse varsler til live og få varsler fra live i tilfelle feil og advarsler etc.,
Til slutt automatiserer alle prosjektrelaterte dokumenter.
Så jeg kan si at automatisering på DevOps-språk betyr kontinuerlig integrering, kontinuerlig testing, kontinuerlig implementering og kontinuerlig levering. Vi vil studere hver av dem i detalj i de kommende delene.
Samlet sett muliggjør DevOps enhver aktivitet innen utvikling og drift, hvor det er mulig, det som er automatisk, det som kan repeteres, uansett hvor nøyaktighet kreves, det som tar lang tid er automatisert.
Likevel, hvis vi ikke nevner verktøyene som skal brukes til automatisering, er diskusjonen om automatisering ufullstendig.
Så, valg av riktig rammeverk og automatiseringsverktøy er nøkkelkravet for automatisering i DevOps.
Det er mange verktøy tilgjengelig i markedet, både åpen kildekode og lisensierte verktøy, som støtter slutten til slutt-automatisering av hele leveringsrørledningen, inkludert aktiviteter utført av Ops team, klargjørende maskiner, spinning av automatiserte servere, konfigurering av nettverk, brannmurer, og til og med overvåke ytelsen til programvaren.
Enkelte organisasjoner har også utviklet sitt eget rammeverk for å integrere slutt-til-slutt-prosessen med DevOps, som starter fra kodeforpliktelse til kodedistribusjon, inkludert dokumentasjon som er et enkelt integrert verktøy, og teamet trenger ikke å gå utenfor rammen for noe relatert. å programmere, det være seg versjonskontroll, prøveskriving, gjennomgang, dumping, analyser etc.,
F.eks .: marionett, Azure ressurssjef, kokk etc.,
Fordeler med automatisering i DevOps
Vi har sett tidligere utgivelser, i fravær av automatisering som tar år å komme inn i produksjonen og også nylig med smidig, det være seg magert, scrum eller trygt, og med en prosentandel av automatisering som forbedres, blir utgivelsestidslinjene redusert til noen få måneder eller uker.
Men automatisering er absolutt et must for å gjøre utgivelsene så raskt som mulig på få timer. Så jeg tror det er umulig å lage slike raske og hyppige utgivelser med mindre vi setter på plass automatisering gjennom hele rørledningen.
Så, helt åpenbart, hvis vi ønsker å oppnå målene med DevOps, høy kvalitet og verdi levert til kunder via hyppige og raske leveranser, er automatisering alt et must.
Det er klart at vi nå vet at automatisering fjerner manuelle feil, avhengighet av et individ, utfører raskere og oppnår nøyaktighet og derved oppnår konsistens og pålitelighet. Automatisering av alt muliggjør derfor devops-målet om levering av høy kvalitet, muliggjør hyppige utgivelser og raskere utgivelser.
I et nøtteskall, Automation,
- Fjerner manuelle feil
- Teammedlemmer er bemyndiget
- Avhengighet fjernet
- Latens fjernet
- Øker antall leveranser
- Reduserer ledetiden
- Øker frekvensen av utgivelser
- Gir raskere tilbakemeldinger
- Muliggjør hastighet, pålitelighet og konsistens
Så kort sagt innkapsler Automatisering i DevOps alt fra bygging, distribusjon og overvåking.
PREV Opplæring | NESTE veiledning
Anbefalt lesing
- Viktigheten av små leveranser i DevOps
- Kildekontroll eller versjonskontroll i DevOps (Videoopplæring del 2 - blokk 2)
- DevOps Tutorial: The Ultimate Guide to DevOps (25+ Tutorials)
- DevOps-praksis basert på smidig manifest (del 2 - blokk 1)
- DevOps Testing Tutorial: Hvordan DevOps vil påvirke QA-testing?
- AWS CodeCommit Tutorial for DevOps Implementation in Cloud
- SeeTest Automation Tutorial: A Mobile Test Automation Tool Guide
- Kontinuerlig levering i DevOps