devops tutorial ultimate guide devops
Es tracta d’una sèrie completa de tutorials DevOps de més de 25 tutorials de text i vídeo que cobreixen tots els aspectes dels DevOps com Què és DevOps, els principis DevOps i el seu arquitecte.
Llista de tutorials de la sèrie de formació DevOps:
# 1) Introducció a DevOps (Aquest tutorial)
# 2) DevOps i proves de programari
Tutorials VIDEO DevOps:
# 3) Video Tutorial 1: Antecedents, definició, valor, avantatges, hàbits i bones pràctiques de DevOps
- Part 1 Bloc 1 - Desmitificació de DevOps
# 4) Vídeo tutorial 2: Pràctiques de DevOps basades en els principis àgils, el control de fonts i l'automatització de DevOps
Aquest vídeo tutorial es divideix en 6 blocs:
- Part 2 Bloc 1 - Pràctica DevOps basada en el Manifest Agile
- Part 2 Bloc 2: Control de fonts i versions en DevOps
- Part 2 Bloc 3 - Automatització en DevOps
- Part 2 Bloc 4 - Petits increments de lliuraments a DevOps
- Part 2 Bloc 5: Col·laboració en equips DevOps
- Part 2, bloc 6: Com desenvolupar la col·laboració en equips DevOps
# 5) Vídeo tutorial 3: DevOps processa integració contínua, proves contínues i lliurament continu
Aquest vídeo tutorial es divideix en 4 blocs:
- Part 3 Bloc 1 - Integració contínua en DevOps
- Part 3 Bloc 2: Lliurament continu en DevOps
- Part 3 Bloc 3 - Desplegament continu a DevOps
- Part 3 Bloc 4 - Proves contínues en DevOps
# 6) Video tutorial 4: Gestió de la configuració DevOps i supervisió del rendiment de les aplicacions en directe
Aquest vídeo tutorial es divideix en 3 blocs:
- Part 4 Bloc 1 - Gestió de la configuració a les pràctiques de DevOps
- Part 4 Bloc 2: Gestió de versions a DevOps
- Part 4 Bloc 3 - Supervisió del rendiment de l'aplicació en DevOps
# 7) Video tutorial 5: Recapitulació de tot el curs.
- Part 5 Bloc 1 - Recapitulació de tutorials de vídeo DevOps
Tutorials de text:
# 8) Prova de desplaçament cap a l'esquerra
# 9) Com millorar la qualitat del programari mitjançant la integració contínua
# 10) Procés de lliurament continu
Eines DevOps:
# 11) Eines DevOps
# 12) Instal·lació i configuració d’eines DevOps de codi obert d’ús habitual
# 13) Les millors eines d'integració contínua
# 14) Principals eines de lliurament continu
Microsoft VSTS Tutorial:
# 15) Microsoft VSTS part 1
# 16) Microsoft VSTS part 2
Eines AWS DevOps:
# 17) AWS DevOps Tools Part 1 (CodeCommit)
# 18) AWS DevOps Tools Part 2 (CodeBuild)
# 19) AWS DevOps Tools part 3 (CodeDeploy)
# 20) Desplegament d'aplicacions web .NET mitjançant AWS Elastic Beanstalk
Responible per a DevOps:
# 21) Ansible Part 1: Instal·lació i configuració
# 22) Ansible Part 2: Automatització de tasques mitjançant Playbooks
# 23) Ansible Part 3: Rols Ansible i integració amb Jenkins
# 24) Integració de Jenkins amb el seleni
# 25) Eina d’integració contínua de Hudson
# 26) Empreses proveïdores de serveis DevOps
# 27) Preguntes d’entrevistes de DevOps
Comencem pel primer tutorial d'aquesta sèrie.
Què aprendreu:
- Introducció a DevOps
- Visió general d'Agile i DevOps
- El DevOps només tracta d’eines?
- Components de DevOps
- Resum
- Lectura recomanada
Introducció a DevOps
DevOps no es tracta només d’eines, sinó que també inclou un conjunt de bones pràctiques que permeten salvar la bretxa entre els equips de desenvolupament i operacions en les àrees d’integració i desplegament continu mitjançant l’ús d’un conjunt integrat d’eines per automatitzar la distribució de programari.
eines de prova de navegadors creuats de codi obert
És imprescindible que els desenvolupadors entenguin el costat de les operacions i viceversa. Per tant, l’objectiu de DevOps és simplement ajudar a qualsevol organització en la velocitat de lliurar aplicacions als usuaris finals i permetre una retroalimentació més ràpida dels usuaris finals, que és la necessitat de qualsevol empresa actual.
Visió general d'Agile i DevOps
No hi ha diferència entre Agile i DevOps. En canvi, es complementen. Comencem mirant el model Waterfall, on es congelen tots els requisits, i el disseny i desenvolupament es realitzen un darrere l’altre fins que hi hagi un producte estable.
Per tant, el problema aquí és que si hi ha un canvi en la necessitat del client en aquesta etapa, no hi ha manera d’incloure i lliurar la necessitat canviada.
Per tal d’abordar la qüestió de l’adaptació a les necessitats del client els canvis millor que en el mètode de cascada va ser l’adopció Agile. La idea aquí era desenvolupar un programari en sprints o iteracions més petits, per exemple, aproximadament de 2 a 3 setmanes, que va ajudar els equips de desenvolupament a treballar en els comentaris dels usuaris finals i incorporar els canvis en les versions més recents.
Per tant, els equips de desenvolupament i operació han de tenir àgils en les seves àrees de treball iDevOpsva néixer per permetre una millor col·laboració entre ells.
Agile inclou processos com XP, SCRUM, etc. i DevOps inclou pràctiques com la integració contínua, el lliurament continu, les proves contínues i el seguiment continu, que veurem detalladament a mesura que avancem en aquest tutorial.
El DevOps només tracta d’eines?
En certa manera, podeu argumentar que per implementar DevOps necessiteu eines. És cert, però les eines només són acceleradors.
Però, en realitat, es tracta dels tres aspectes següents:
Gent :És molt important formar-se i comptar amb un equip de persones altament motivat per poder comunicar-se i col·laborar eficaçment durant tot aquest viatge de canvi cultural.
com reproduir un fitxer flash d’ona de xoc
Procés: Com que parlem de canvis culturals per a la implementació de DevOps, és molt necessari tenir pràctiques i estratègies que aportin valor al client. Una manera adequada de fer-ho seria fer una avaluació de maduresa tal com és, examinar els buits i proposar un full de ruta per a la implementació de les recomanacions adequades.
No parlaré en profunditat de com he de fer aquestes avaluacions, però estaré encantat de compartir qualsevol aportació sobre la mateixa.
Eines: Finalment, es tracta d’utilitzar els acceleradors automatitzant el procés mitjançant eines DevOps estàndard disponibles avui en dia. Podria ser de codi obert (Jenkins, Git, etc.), comercial (Microsoft TFS, VSTS, IBM Rational, Jira, etc.) o una combinació de tots dos.
Components de DevOps
Espero que ja tingueu una idea del que és DevOps.
Vegem ara els següents 4 components de DevOps que constitueixen el nucli des del punt de vista de la implementació i que les organitzacions han desenvolupat bons marcs d’automatització al voltant del mateix que l’ofereixen com a servei als seus clients.
- Integració contínua
- Proves contínues
- Lliurament continu
- Seguiment continu
Realment he cregut que si un desenvolupador ha de treballar en aquest mode, hauria d’haver-hi assignat un element d’execució com ara una tasca o un defecte (en Agile, pot ser una part de User Story) per permetre-li lliurar el treball dins el termini de sprint.
Per tant, fins i tot abans que es puguin implementar els passos esmentats anteriorment, aquestes tasques o defectes del desenvolupador haurien de ser planificats en un Sprint. Per tant, eines com JIRA, IBM Rational Team Concert, Microsoft TFS / VSTS, etc. ajuden a crear els plans Agile Release / Sprint.
Vegem ara cadascun d’aquests components amb detall.
# 1) Integració contínua
Com a desenvolupador, treballeu en les tasques o defectes assignats i registreu el codi a un dipòsit compartit diverses vegades al dia. De la mateixa manera, la resta de membres de l'equip també registren el codi al dipòsit compartit.
A continuació, integrareu tota la feina feta pels membres de l'equip en un servidor de compilació comú i realitzareu una compilació automatitzada. Fer aquestes integracions i compilacions automatitzades de manera regular s’anomena integració contínua.
Aquesta pràctica ajuda a detectar problemes molt aviat i també garanteix que tots els mòduls integrats funcionin segons sigui necessari. Per tant, si no seguiu aquest enfocament, la integració del treball de l’equip es pot produir un cop al mes, cosa que pot ser tard per trobar i solucionar qualsevol problema d’integració.
Exemple de flux de treball d'integració contínua:
# 2) Lliurament continu
El lliurament continu és el següent pas després de la integració contínua. L’objectiu del lliurament continu és impulsar l’aplicació integrada a la producció el més ràpidament possible. Durant aquest procés, passa per diverses etapes del cicle de vida del lliurament, és a dir, entorns de control de qualitat, posada en escena, producció, etc.
Aquest procés de lliurament periòdic de les aplicacions integrades en diverses etapes es coneix com a lliurament continu.
El lliurament continu ajuda a comercialitzar més ràpidament en comparació amb els mètodes tradicionals, redueix el risc, redueix el cost fomentant una major automatització del procés de llançament i, sobretot, obtenint comentaris més ràpids dels usuaris finals per produir un producte de qualitat.
Per la meva experiència, he vist que aquest procés funciona bé per a qualsevol tipus de desenvolupament d'aplicacions web.
També he fet una bona quantitat d'avaluacions sobre les implementacions de DevOps per a organitzacions de l'àrea de semiconductors, però a causa de la seva existència cicle de llançament aquesta àrea de lliurament continu no sembla que s’adapti a ella, ja que es tracta més aviat d’un procés d’aigua que s’està seguint i els desplegaments es fan tal com es sol·licita en un entorn de client.
Exemple de flux de treball de lliurament continu:
Al diagrama anterior podeu veure diferents entorns disponibles, de manera que aquest subministrament de la infraestructura per als entorns també es pot automatitzar durant aquest procés de lliurament continu.
# 3) Proves contínues
De les 2 pràctiques anteriors, vam saber que CI i CD ajuden a desplegar l'aplicació o els canvis a la producció. Tot aquest procés implica una validació adequada del codi i la seva integració amb tots els components que hi intervenen per garantir que l'aplicació funcioni tal com es preveu i que estigui lliure d'errors o defectes.
Per tant, les proves contínues són el procés d’execució de diversos tipus de proves automatitzades que comencen amb el procés CI fins al moment en què l’aplicació es desplega finalment a la producció.
Podeu veure al diagrama anterior que al pas d’Integració contínua integrem tots els treballs dels desenvolupadors en un servidor de compilació comú i també durant aquesta etapa els desenvolupadors realitzarien una certa quantitat de proves d’unitat.
Un cop aquestes integracions i proves funcionin sense errors, només l'aplicació o els canvis es desplegaran a l'entorn de control de qualitat després de sol·licitar aquestes portes i aprovacions de qualitat.
A l’entorn de control de qualitat, les proves funcionals s’executen i es basen de nou en les aprovacions que es desplegarien a l’entorn de prova que estaria en paritat, com els sistemes de producció i les proves d’acceptació. Un cop finalitzada aquesta activitat, l'aplicació o els canvis finalment es desplegaran als sistemes de producció.
Així doncs, aquí es pot observar que les proves contínues com a activitat comencen des de la pròpia etapa de CI i són un pas molt obligatori durant tot el procés de lliurament continu.
Flux de treball de proves de mostra en el procés de lliurament continu:
# 4) Seguiment continu
A mesura que l'aplicació o els canvis es desplegin a l'entorn de producció, l'equip d'operacions buscarà supervisar l'aplicació i l'entorn des del punt de vista de temps d'actualització, estabilitat i disponibilitat. Aquest procés es coneix com a seguiment continu.
Els equips d’operacions tindran el seu propi programari per controlar l’entorn, però també hauran de fer el seu paper per controlar les aplicacions desplegades per a qualsevol problema. Per a això, haurien de treballar amb els equips de desenvolupament per tal de construir certes eines per analitzar els problemes de les aplicacions.
Per tant, els problemes d’infraestructura, medi ambient i aplicacions són els que es controlen en el procés de supervisió contínua.
Resum
En aquest tutorial, hem conegut què és exactament el procés DevOps, inclosos els diferents components que hi intervenen. Aquests components ajuden a agilitzar el lliurament de les aplicacions i també a estalviar temps per al mercat, que és la necessitat dels negocis actualment des d’un punt de vista competitiu.
A la propera sèrie de tutorials del segment DevOps, veureu els diferents vídeos / probables eines DevOps que els equips poden utilitzar i també la implementació de DevOps mitjançant certes eines per a la premissa i el núvol.
I, com s'ha dit i fet, he trobat que la implementació de DevOps és excitant, en la forma de mirar des d'un canvi organitzatiu.
El nostre proper tutorial us explicarà tot sobre DevOps i proves de programari.
Lectura recomanada
- Tutorials Eclipse en profunditat per a principiants
- Lliurament continu en DevOps
- Desplegament continu a DevOps
- Tutorial de proves DevOps: com impactarà DevOps en les proves de control de qualitat?
- Integració contínua en DevOps
- Proves contínues en DevOps
- Recapitulació de tutorials de vídeo DevOps
- Tutorial AWS CodeCommit per a la implementació de DevOps al núvol