LFCA: Léiert Software Deployment Ëmfeld - Deel 23


DevOps implementéieren ass e Schlësselelement fir all Team dat schafft an e grousse Projet (en) ënnerhält. Wéi an de fréieren Ënnerthemen diskutéiert, liwwert DevOps Teams mat Tools a Prozesser erfuerderlech fir Workflows ze streamline an d'Agilitéit ze bidden déi néideg ass fir effizient ze schaffen, wat zu enger erhéiter Produktivitéit resultéiert. Also, Wann Äert Geschäft relevant bleift an engem stänneg verännert a kompetitivt modernt Ëmfeld, dann ass DevOps adoptéieren keng Optioun.

[ Dir kënnt och gär hunn: Léiert d'Basiskonzepter vun DevOps ]

Onofhängeg vun de verschiddenen DevOps Tools a Prozesser, fir déi Dir Iech néiergelooss hutt, recommandéiert d'beschte Praxis d'Benotzung vu multiple Deployment-Ëmfeld an Ärem Software Development LifeCycle fir sécherzestellen datt Är Uwendungen rigoréis an all Etapp getest ginn ier se endlech un den Endverbraucher zur Verfügung gestallt ginn.

Wat ass Deployment an der Softwareentwécklung

An der Softwareentwécklung bezitt sech d'Deployment op eng Kombinatioun vu Prozesser & Schrëtt, déi néideg sinn fir eng komplett Softwareapplikatioun un den Endverbraucher auszerollen oder ze liwweren. Deployment geschitt an Etappen an déi lescht Etapp ass normalerweis e Kulminatioun vu Wochen oder Méint vu grëndlechen Tester fir sécherzestellen datt Bugs an aner Mängel identifizéiert a fixéiert goufen.

D'Verwäertung vu multiple Ëmfeld an der Deployment garantéiert datt d'Software grëndlech getest gëtt an déi néideg Updates a Feature gedréckt ginn ier de Finale Produkt ausrollt. De klassesche Deploymentmodell ass en Dräi-Tier-Setup deen déi folgend Deployment-Ëmfeld involvéiert.

D'Entwécklungsëmfeld ass d'Bühn wou d'Entwéckler de Code ofsetzen. Et ass idealerweis d'Bühn wou d'Entwéckler déi éischt Chance kréien de Code fir Käferen a Mängel ze testen an se erauszekréien.

Dëst gëtt als déi éischt Verteidegungslinn géint all Inkonsistenz oder Probleemer mat der Applikatioun ugesinn. Heiansdo kann d'Entwécklungsëmfeld e lokale PC vum Entwéckler sinn, wou se um Code aus dem Komfort vun hire Statiounen schaffen.

All Software Bugs oder Mängel ginn am Entwécklungsëmfeld als éischt adresséiert ier Dir weider an déi nächst Phas geet. Dëst ass en intensiven Prozess dee widderholl gëtt bis d'Applikatioun fit deklaréiert ka ginn fir op déi nächst Etapp weiderzemaachen.

Wann de Code als zimmlech stabil a robust ugesi gëtt, gëtt en dann op d'Stagingstadium gedréckt fir zousätzlech Tester. Am Inszenéierungsëmfeld huet d'Quality Assurance Team (QA) Zougang zum Staging-Server a mécht Performance Tester op der Applikatioun fir sécherzestellen datt et funktionnéiert wéi et soll.

D'Testrun hëlleft bei der Identifikatioun vun Beräicher déi Verbesserung brauchen. All identifizéiert Bugs ginn un d'Entwéckler gemellt, op deenen de Prozess zu Zefriddenheet iteréiert gëtt an de Code op déi nächst Etapp weidergeleet gëtt.

Wann de Code all d'Qualitéitssécherungskontrollen passéiert ass, gëtt en dann an d'Produktiounsëmfeld ofgesat. Et ass am Produktiounsëmfeld wou d'Applikatioun endlech fir de Client oder den Endverbraucher zougänglech gemaach gëtt. E Produktiounsëmfeld kann e Netzwierk vu Serveren an engem on-premise-Datenzentrum sinn oder eng Architektur vu Cloud-Server, déi op verschidde geographesch Plazen läit fir Redundanz an héich Disponibilitéit.

NOTÉIERT: Déi uewe genannte Setup ass eng ganz vereinfacht Approche fir Code z'installéieren. Ofhängeg vun den Ufuerderunge vun Ärem Projet, kënnen et zousätzlech Ëmfeld sinn oder manner. Zum Beispill kënnen e puer Organisatiounen an engem Pre-Produktiounsëmfeld fir méi fein Testen a Qualitéitssécherung pressen just ier de Client op d'Finale Produkt an der Produktiounsstadium kënnt. An anere Fäll ass d'Qualitéitssécherung aus dem Inszenéierungsëmfeld abstrakéiert an existéiert als Standalone Ëmfeld.

Nodeems mir e vereinfacht 3-Tier Deployment Modell gekuckt hunn, Loosst eis elo en Iwwerbléck iwwer e puer vun de Virdeeler hunn fir verschidde Deployment Ëmfeld ze hunn.

Virdeeler fir Multiple Deployment Ëmfeld ze benotzen

Fir sécherzestellen datt d'Finale Produkt op d'Mark ass an esou bugfräi wéi méiglech ass, gëtt grëndlech Testen a verschidde Ëmfeld héich recommandéiert. Awer dëst ass just ee vun de Grënn fir Multiple Deployment Ëmfeld z'erhalen. Aner Virdeeler enthalen:

Ee vun den Haaptgrënn fir verschidden Deploymentëmfeld ze beschäftegen ass d'Wahrscheinlechkeet vun der Applikatioun ze briechen ze minimiséieren wann eng Ännerung op d'Applikatioun en negativen Impakt huet.

Méi grouss Ännerungen kënne bequem an getrennten Ëmfeld gemaach ginn (Entwécklung an Inszenéierung) anstatt direkt op der Live Uwendung an der Produktioun. Dobäi kann d'Entwécklungsteam Fridden vum Geescht hunn datt Ännerungen, déi an aneren Testëmfeld gemaach goufen, d'Applikatioun net beaflossen.

Well Dir Iech keng Suergen maache musst iwwer d'Live-Applikatioun ze briechen, kënnt Dir all Ännerunge maachen, déi Dir esou fit an aneren Deployment-Ëmfeld mécht. Zousätzlech, eemol getest, kënnt Dir all dës Ännerungen an d'Live-Ëmfeld gläichzäiteg drécken ouni dat an getrennte Schrëtt ze maachen, wat Iech wäertvoll Zäit spuert.

Den Zougang zu de Produktiounsdaten, déi a Produktiounsservere wunnen, beschränken, geet e laange Wee fir vertraulech a sensibel Informatioun wéi Benotzernimm, Passwierder a Kreditkaartnummeren vun onerlaabten Parteien ze schützen. Entwéckler kënnen Dummydaten an engem Entwécklungsëmfeld benotzen fir d'Applikatioun ze testen anstatt sensibel Produktiounsdaten ze kréien, wat e seriéise Risiko ausstellt.

Multiple Ëmfeld bidden Ärem Entwécklungsteam d'Fräiheet ze experimentéieren op Testëmfeld an déi meescht vun hire kreativen Iddien ze maachen well et kee Risiko ass fir mam Live Code ze stéieren. D'Entwéckler kënne besser Iddien ëmsetzen an de Code op engagéierten Testserver ofsetzen, wou aner Tester kënne Brainstorm maachen a Feedback ubidden ob d'Ännerungen op der Haaptcodebase ëmgesat ginn.

An enger Majoritéit vun DevOps Astellunge sidd Dir gebonnen op verschidde Deploymentëmfelder ze begéinen. Bedenkt datt wärend all Organisatioun säin eegene eenzegaartege Setup huet, bleiwen déi primär Détachement Schrëtt méi oder manner d'selwecht.

Um Enn vum Dag, verschidde Ëmfeld ze hunn hëlleft Iech séier Feedback vu verschiddene Leit vill méi séier ze kréien an Bugs an aner Mängel méi konsequent ze verfolgen. All Performance Tester an Integratioune ginn nahtlos duerchgefouert ier se endlech d'Applikatioun an der Produktioun ausrollen.