LFCA: Apreneu entorns de desplegament de programari - Part 23


La implementació de DevOps és un element clau per a qualsevol equip que estigui treballant i mantenint un(s) projecte(s) gran(s). Tal com s'ha comentat en subtemes anteriors, DevOps proporciona als equips les eines i els processos necessaris per agilitzar els fluxos de treball i proporcionar l'agilitat necessària per treballar de manera eficient, donant lloc a una major productivitat. Per tant, si el vostre negoci ha de seguir sent rellevant en un entorn modern i competitiu en constant canvi, llavors adoptar DevOps no és una opció.

[També et pot agradar: Coneix els conceptes bàsics de DevOps]

Independentment de les diferents eines i processos DevOps amb els quals us heu decidit, les pràctiques recomanades recomana l'ús de diversos entorns de desplegament al vostre cicle de vida de desenvolupament de programari per assegurar-vos que les vostres aplicacions es posen a prova de manera rigorosa en cada etapa abans de posar-les finalment a disposició dels usuaris finals.

Què és el desplegament en el desenvolupament de programari

En el desenvolupament de programari, el desplegament es refereix a una combinació de processos i passos necessaris per implementar o lliurar una aplicació de programari completa a l'usuari final. El desplegament es produeix per etapes i l'etapa final sol ser la culminació de setmanes o mesos de proves exhaustives per garantir que s'han identificat i corregit errors i altres defectes.

L'aprofitament de diversos entorns en el desplegament garanteix que el programari es prova a fons i que les actualitzacions i funcions necessàries s'impulsen abans de llançar el producte final. El model de desplegament clàssic és una configuració de tres nivells que inclou els entorns de desplegament següents.

L'entorn de desenvolupament és l'etapa on els desenvolupadors despleguen el codi. Idealment, és l'etapa on els desenvolupadors tenen la primera oportunitat de provar el codi per detectar errors i defectes i eliminar-los.

Es considera com la primera línia de defensa davant qualsevol incoherència o problema amb l'aplicació. De vegades, l'entorn de desenvolupament pot ser l'ordinador local d'un desenvolupador on treballen en codi des de la comoditat de les seves estacions.

Qualsevol error o fallada del programari s'aborda primer a l'entorn de desenvolupament abans de passar a la fase següent. Es tracta d'un procés intensiu que es repeteix fins que la sol·licitud es pot declarar apta per passar a la següent fase.

Una vegada que el codi es considera bastant estable i robust, es trasllada a l'etapa de preparació per a proves addicionals. A l'entorn de prova, l'equip d'assegurament de la qualitat (QA) accedeix al servidor de prova i realitza proves de rendiment a l'aplicació per assegurar-se que funciona com cal.

Les proves ajuden a identificar les àrees que necessiten millorar. Qualsevol error identificat s'informa als desenvolupadors sobre els quals el procés s'itera amb satisfacció i el codi es passa a la següent etapa.

Un cop el codi ha superat totes les comprovacions de garantia de qualitat, es desplega a l'entorn de producció. És a l'entorn de producció on finalment l'aplicació es fa accessible al client o usuari final. Un entorn de producció pot ser una xarxa de servidors en un centre de dades local o una arquitectura de servidors en núvol situats en diverses ubicacions geogràfiques per a la redundància i l'alta disponibilitat.

NOTA: La configuració anterior és un enfocament molt simplificat per desplegar codi. Depenent dels requisits del vostre projecte, hi pot haver entorns addicionals o menys. Per exemple, algunes organitzacions poden introduir-se en un entorn de preproducció per a proves més fines i garantia de qualitat just abans que el client pugui accedir al producte final en l'etapa de producció. En altres casos, l'assegurament de la qualitat s'extreu de l'entorn d'escenificació i existeix com a entorn autònom.

Després d'haver mirat un model de desplegament simplificat de 3 nivells, tinguem ara una visió general d'alguns dels avantatges de tenir diversos entorns de desplegament.

Avantatges de l'ús de diversos entorns de desplegament

Per garantir que el producte final estigui a l'alçada i el més lliure possible d'errors, es recomana fer proves exhaustives en diversos entorns. Però aquesta és només una de les raons per mantenir diversos entorns de desplegament. Altres avantatges inclouen:

Una de les raons principals per utilitzar diversos entorns de desplegament és minimitzar la probabilitat que l'aplicació es trenqui si un canvi empès a l'aplicació té un impacte negatiu.

Es poden fer canvis més grans còmodament en entorns separats (desenvolupament i posada en escena) en lloc de fer-ho directament a l'aplicació en directe en producció. En fer-ho, l'equip de desenvolupament pot tenir tranquil·litat que els canvis realitzats en altres entorns de prova no afectaran l'aplicació.

Com que no us haureu de preocupar per trencar l'aplicació en directe, podeu fer els canvis que considereu adequats en altres entorns de desplegament. A més, un cop provat, podeu impulsar tots aquests canvis a l'entorn en directe sense fer-ho en passos separats, la qual cosa us estalvia un temps valuós.

La restricció de l'accés a les dades de producció que resideixen als servidors de producció ajuda molt a protegir la informació confidencial i sensible, com ara noms d'usuari, contrasenyes i números de targetes de crèdit de persones no autoritzades. Els desenvolupadors poden utilitzar dades simulades en un entorn de desenvolupament per provar l'aplicació en lloc d'accedir a dades de producció sensibles, cosa que suposa un greu risc.

Diversos entorns ofereixen al vostre equip de desenvolupament la llibertat d'experimentar en entorns de prova i treure el màxim profit de les seves idees creatives, ja que no hi ha cap risc d'interferir amb el codi en directe. Els desenvolupadors poden implementar millors idees i desplegar el codi a servidors de prova dedicats on altres verificadors poden fer una pluja d'idees i proporcionar comentaris sobre si s'han d'implementar els canvis a la base de codi principal.

En la majoria de la configuració de DevOps, us trobareu obligats a trobar diversos entorns de desplegament. Tingueu en compte que, tot i que cada organització té la seva pròpia configuració única, els passos principals de desplegament segueixen sent més o menys els mateixos.

Al cap i a la fi, tenir diversos entorns us ajuda a obtenir comentaris ràpids de diferents persones molt més ràpidament i a rastrejar errors i altres defectes de manera més coherent. Totes les proves de rendiment i integracions es realitzen sense problemes abans de llançar finalment l'aplicació en producció.