Material Trainer DEPC (V072023A) SP
Material Trainer DEPC (V072023A) SP
Material Trainer DEPC (V072023A) SP
Professional Certificate
¿Quién es CertiProf®?
CertiProf® es una entidad certificadora fundada en los Estados Unidos en 2015, ubicada actualmente en
Sunrise, Florida.
Nuestra filosofía se basa en la creación de conocimiento en comunidad y para ello su red colaborativa está
conformada por:
• Nuestros Lifelong Learners (LLL) se identifican como Aprendices Continuos, lo que demuestra su compromiso
inquebrantable con el aprendizaje permanente, que es de vital importancia en el mundo digital en constante
cambio y expansión de hoy. Independientemente de si ganan o no el examen.
• Las universidades, centros de formación, y facilitadores en todo el mundo forman parte de nuestra red de
aliados ATPs (Authorized Training Partners.)
• Los autores (co-creadores) son expertos de la industria o practicantes que, con su conocimiento, desarrollan
contenidos para la creación de nuevas certificaciones que respondan a las necesidades de la industria.
• Personal Interno: Nuestro equipo distribuido con operaciones en India, Brasil, Colombia y Estados Unidos está
a cargo de superar obstáculos, encontrar soluciones y entregar resultados excepcionales.
3
Nuestras Acreditaciones y Afiliaciones
4
Agile Alliance
https://www.agilealliance.org/organizations/certiprof/
5
IT Certification Council - ITCC
6
Credly
7
Insignia
https://www.credly.com/org/certiprof/badge/devops-essentials-professional-certificate-depc
8
Lifelong Learning
Los portadores de esta insignia en particular han demostrado su
compromiso inquebrantable con el aprendizaje permanente,
que es de vital importancia en el mundo digital actual, en
constante cambio y expansión. También identifica las
cualidades de una mente abierta, disciplinada y en constante
evolución, capaz de utilizar y contribuir con sus conocimientos
al desarrollo de un mundo más igualitario y mejor.
Criterios de Adquisición:
• Ser candidato a una certificación de CertiProf
• Ser un aprendiz continuo y enfocado
• Identificarse con el concepto de aprendizaje permanente
• Creer e identificarse realmente con el concepto de que el
conocimiento y la educación pueden y deben cambiar el
mundo
• Querer impulsar su crecimiento profesional
9
Objetivos
10
¿Quién debe atender este curso de certificación?
Cualquier persona que esté interesada en ampliar sus conocimientos en DevOps. Y deseando
adquirir y conocer DevOps como cultura organizacional mas allá de IT.
11
Agenda
Introducción a DevOps Cultura y Adopción de DevOps
12
¿Qué es DevOps?
¿Qué es DevOps?
15
¿Qué es DevOps?
DevOps es una nueva tendencia en la industria TI dirigida a mejorar la agilidad del servicio de
entregas en TI. El movimiento hace énfasis en la comunicación transparente, la colaboración
junto con la integración entre el software de desarrolladores y las operaciones de TI.
DevOps reconoce que los desarrolladores y los operadores de TI son grupos con relación que
pueden interactuar entre sí, pero no realmente trabajar juntos.
DevOps ayuda a la organización a crear servicios TI y software de manera rápida lo que resulta
en la reducción del número de iteraciones.
Los equipos DevOps logran el éxito por el uso de dos componentes claves llamados
“comunicación” y “visibilidad en tiempo real”.
16
¿Qué es DevOps?
Los objetivos básicos de DevOps son establecer un ambiente donde realizar códigos, probar y
desarrollar software pueda realizarse rápidamente, de manera frecuente y segura.
17
¿Qué es DevOps?
No existe una sola herramienta de DevOps que trabaje en la colaboración e integración entre
los equipos de desarrolladores, testers y operaciones.
Estas herramientas son usadas en los procesos que involucran a los equipos de código,
construcción, test, empaque, liberación, configuración y monitorización.
18
¿Por qué DevOps?
19
Definiciones de DevOps
Hay varias opiniones sobre qué es y qué no es DevOps, generalmente se define como una
nueva forma de organización, una cultura o incluso una nueva forma de pensar.
20
¿Qué no es DevOps?
Hay gran diversidad de tecnologías empresariales y drivers a ser considerados para establecer la
estrategia de adopción para DevOps.
DevOps no es automatización.
21
¿Qué no es DevOps?
Aunque hay herramientas que son usadas en DevOps, no deberíamos limitar su alcance a
herramientas específicas como Chefs o Jenkins. Esto limita el amplio alcance como si una sola
herramienta de automatización se equiparara con DevOps.
Tener un equipo DevOps separado, anula el propósito de evitar las posibles fricciones y falta
comunicación entre los desarrolladores y operadores de TI ya que crea un silo más.
22
Definición de DevOps Según sus Líderes
Michael Hüttermann.
23
Definición de DevOps Según sus Líderes
“Un movimiento de personas quienes se preocupan por desarrollar y operar sistemas fiables, seguros
y de alto rendimiento a escala”.
Jez Humble.
24
Definiciones de DevSecOps
DevSecOps es una metodología que integra la seguridad en todas las etapas del ciclo de vida
del desarrollo de software.
25
Beneficios de DevSecOps
26
Beneficios de DevSecOps
Mayor calidad del software: Al abordar los problemas de seguridad desde el principio,
DevSecOps ayuda a mejorar la calidad general del software, evitando la introducción de
vulnerabilidades y mitigando los riesgos asociados con brechas de seguridad.
27
Historia
Historia
2008
Las semillas del movimiento DevOps fueron plantadas durante la conferencia de Agile, 2008
celebrada en Toronto, por el desarrollador de software Patrick Debois, quien tenía experiencia
en múltiples funciones en una gran organización de la industria TI como desarrollador,
administrador de sistema, especialista de red, gerente de proyecto e incluso tester.
Él demostró que podía haber mejores maneras de obtener un gran trabajo al resolver los
conflictos entre los equipos de desarrollo y operaciones. Pronto fue reconocido como el líder de
la idea detrás del concepto de DevOps y otros continuaron resolviendo estos desafíos.
29
Historia
2009
John Allspaw y Paul Hammond, dos empleados en jefe de Flickr, presentaron una charla clave,
titulada “Diez despliegues en el día: cooperación de Dev y Ops en Flickr”. En esta charla Allspaw y
Hammond señalaron poderosamente como el conflicto llevó a “apuntarse con el dedo” entre los
desarrolladores y operadores al culparse entre ellos.
Ellos señalaron que la única manera de construir y desplegar un software viable era hacer a
operaciones y desarrollo integrados y transparentes.
Inspirado por esto, Debois organizó su propia conferencia (DevOpsDay). El nombre de este
movimiento fue reducido a DevOps después de esta convención.
30
Historia
2010
Primer DevOpsDay organizado en los Estados Unidos tuvo a defensores de DevOps como
Andrew Clay Shafer, Damon Edwards, entre otros. Los eventos llamaron la atención global y
fueron avanzando hacia la comunidad DevOps.
Introducción del hashtag #DevOps que resultó ser una rica fuente de información.
2011
31
Historia
2012
Los DevOpsDays fueron organizados alrededor del mundo y se convirtieron en eventos TI muy
concurridos y deliberados sobre el pensamiento innovador en el dominio DevOps.
2013
Mike Loukides, una figura prominente en el mundo DevOps, junto con Debois editaron algunos
textos fundamentales de DevOps. Él afirmó que es fácil pensar en DevOps en términos de las
herramientas que se utilizan en el mismo. Pero, en realidad este es un acuerdo íntimo entre los
equipos de desarrollo y operaciones.
Gran cantidad de libros sobre DevOps aparecieron. Algunos de los más notables son “El
Proyecto Phoenix” (The Phoenix Project), “Implementando la Eficiencia del Desarrollo de Software”
(Implementing Lean Software Development), “Operaciones Web” (Web Operations) y “El Inicio
Eficiente” (The Lean Startup), etc.
32
Historia
2014
En una encuesta realizada por Puppet Labs, 16 % de 1486 encuestados afirmaron que ellos son
parte de DevOps en sus organizaciones.
2015
33
Historia
2019
En una encuesta realizada por Puppet Labs, 16 % de 1486 encuestados afirmaron que ellos son
parte de DevOps en sus organizaciones.
2020
34
Historia
2021
El informe State of DevOps 2021, publicado por Puppet y CircleCI, destaca los beneficios
comerciales significativos obtenidos por las organizaciones que han implementado prácticas
DevOps maduras.
2022
El informe de Agile Adoption Report de CertiProf muestra aun las grandes posibilidades que hay
en la adopción de DevOps en las organizaciones y el estado actual.
35
Historia
36
Propósito de DevOps
Propósito de DevOps
El mejor propósito ofrecido por DevOps, es iterar de manera más rápida durante la fase de
desarrollo.
Esto se logra al evitar la fricción entre los desarrolladores y operadores tanto como sea posible.
Esto se logra garantizando la transparencia e integración entre el equipo de desarrollo y
operaciones.
El objetivo de DevOps es establecer procesos de negocios alineados en flujo “justo a tiempo” (JIT
por sus siglas en inglés).
DevOps busca maximizar los resultados del negocio, tales como incrementar las ventas y la
rentabilidad, mejorar la velocidad del negocio, o minimizar costos operativos, al alinear los
procesos empresariales “justo a tiempo” (JIT).
38
Propósito de DevOps
39
Propósito de DevOps
• DevOps no tiene un modelo para la implementación, cada organización tiene que pensar y
construir su propio proceso DevOps para mejorar su negocio.
40
Propósito de DevOps
41
DevOps Adopción
42
Beneficios
Beneficios
DevOps garantiza un tiempo más rápido de comercialización de los plazos de entrega y, por lo
tanto, mejora la rentabilidad de las inversiones (ROI).
Fundamentalmente, DevOps es una aplicación del concepto de desarrollo Agile y por lo tanto el
principal beneficio de DevOps es el desarrollo más rápido de software y la entrega frecuente
mejorando la línea de fondo.
DevOps trae el mayor beneficio al mejorar la colaboración entre el desarrollador y los equipos
de operación. Esto se logra mejorando la transparencia que es esencial para una toma de
decisiones efectiva.
Hoy en día, los equipos de desarrollo deben dividir sus silos departamentales, comunicarse y
colaborar con otros equipos de TI en el entorno dinámico actual.
44
Beneficios
El desarrollo de software actual requiere que los equipos se involucren en la entrega continua
sin fallas, en un período reducido para los marcos de tiempo de salida al mercado y ciclos de
lanzamiento más cortos.
45
Estabilidad
El MTTR se mide desde el momento en que el elemento de configuración falló hasta que fue
reparado.
46
Estabilidad
47
Taller
30 Minutos
Análisis en Grupos
Informe State of DevOps 2021 y Agile Adoption Report de CertiProf
¿Cuáles son los principales beneficios comerciales destacados en el informe y cómo se relacionan con
la adopción de prácticas DevOps maduras?
¿Cuáles son los factores clave identificados en el informe que contribuyen al éxito de la adopción de
DevOps en las organizaciones?
¿Qué datos o estadísticas del informe respaldan la importancia de la colaboración entre los equipos
de desarrollo, operaciones y seguridad en la implementación de DevOps?
¿Cuáles son los principales desafíos y obstáculos mencionados en el informe en relación con la
adopción de DevOps y cómo se abordan?
49
Pilares de DevOps
Pilares de DevOps
Agile
1. Velocidad.
2. Adaptabilidad al cambio.
3. Lanzamiento sin errores (JKK Concept).
ITSM
Entrega Continua
51
Conceptos
Just-in-time (JIT) o Justo a Tiempo
La fabricación Justo a Tiempo (JIT), también conocida como producción justo a tiempo o el
sistema de producción Toyota (TPS), es una metodología dirigida principalmente a reducir los
tiempos de flujo dentro de la producción, así como los tiempos de respuesta de los proveedores
y los clientes.
JIT permite reducir costos, especialmente de bodega de materias, partes para el embalaje y de
los productos finales.
La esencia de JIT es que los insumos llegan a la fábrica o los productos al cliente, “Justo a
tiempo", eso siendo poco antes de que se usan y solo en las cantidades necesarias. Esto reduce
o hasta elimina la necesidad de almacenar y luego mover los insumos de la bodega a la línea de
producción (en el caso de una fábrica).
53
Sistema de Producción Toyota (SPT)
En origen, el sistema se diseñó para fábricas de automóviles y sus relaciones con proveedores y
consumidores, sin embargo, este se ha extendido hacia otros ámbitos. Este sistema es un gran
precursor para el genérico Lean Manufacturing.
54
Kaizen
También se aplica a procesos, tales como compras y logística que cruzan los límites de la
organización en la cadena de suministro. Se ha aplicado en la asistencia sanitaria, psicoterapia,
entrenamiento de vida, gobierno, banca y otras industrias.
55
BIMODAL - Gartner
http://www.gartner.com/it-glossary/?s=Bimodal
56
BIMODAL - Gartner
IT Bimodal: Dos
enfoques distintos
pero coherentes,
bastante diferentes,
ambos esenciales.
http://www.gartner.com/it-glossary/?s=Bimodal
57
DevSecOps
58
Si DevOps no presta atención a la seguridad puede facilitar la rápida introducción de las
vulnerabilidades.
59
Nuevo Modelo Operacional
60
Scrum
Scrum es un marco de trabajo ligero para desarrollar, entregar y mantener productos complejos. Se basa en los principios de
transparencia, inspección y adaptación. Scrum promueve una colaboración estrecha entre los miembros del equipo y se enfoca
en el aprendizaje iterativo y en la entrega de valor de manera incremental.
Scrum se basa en roles definidos, eventos, artefactos y reglas específicas que ayudan a las personas y a los equipos a trabajar
de manera efectiva y eficiente
Fuente: www.scrumguides.org/docs/scrumguide
61
Scrum
62
Work in Progress, WIP (Trabajo en Proceso)
Un límite WIP (work in progress) es una estrategia para prevenir cuellos de botella en el
desarrollo de software.
Por ejemplo, un equipo puede dividir las tareas que deben realizarse para una característica en
el diseño, código, prueba y despliegue. Cuando se alcanza un límite WIP para una determinada
tarea, el equipo se detiene y trabaja en conjunto para eliminar el cuello de botella. El objetivo de
trabajar de esta manera es asegurar que todo el equipo se apropie del proyecto y produzca
códigos de alta calidad.
63
Acuerdo de Nivel de Servicio (SLA) y OLAS
Acuerdos de Nivel Operacional (Operational-level agreements u OLAs) pueden ser utilizados por
grupos internos para apoyar SLAs.
Nota: Los SLAs ayudan a identificar áreas de mejora y oportunidades para optimizar los
procesos y las prácticas de DevOps.
64
Ciclo Plan-Hacer-Verificar-Actuar (Plan-Do-Check-Act Cycle/PDCA Cycle)
Otra versión de este ciclo PDCA es OPDCA. El "O" agregado para la observación o como
algunas versiones dicen “Comprender la condición actual”. Este énfasis en la observación y la
condición actual tiene relación con la fabricación Lean o la literatura del sistema de producción
de Toyota.
65
Ciclo Plan-Hacer-Verificar-Actuar (Plan-Do-Check-Act Cycle/PDCA Cycle)
66
Definición de Terminado (en Agile/Scrum) (Definition of Done)
La Definición de Terminado es una descripción formal del estado del Incremento cuando
cumple con las medidas de calidad requeridas para el producto.
67
Kanban para Equipos DevOps
El método Kanban puede ayudar a los equipos de DevOps a poner un poco de orden en su
trabajo diario y la teoría Lean definitivamente puede ser apalancada para mejorar el flujo a
través de los equipos de DevOps.
1. Visualización del flujo de trabajo: Kanban ofrece una visualización clara y en tiempo real del
flujo de trabajo del equipo, lo que facilita la colaboración y el seguimiento de tareas.
68
Kanban para Equipos DevOps
69
Desarrollo
Ciclo de Vida del Desarrollo del Software
El ciclo de vida del software significa desarrollar el software, desde la etapa inicial hasta la
etapa final.
Definir todas las fases intermedias necesarias para validar el desarrollo de la aplicación y
asegurar que el software cumpla con los requisitos para la implementación y verificación de los
procedimientos de desarrollo asegurando la utilización de métodos apropiados.
Al final de cada etapa se realiza una prueba para que se puedan arreglar las revisiones.
71
Desarrollo Agile del Software
Toda metodología debe adaptarse al contexto del proyecto (recursos técnicos y humanos,
tiempo de desarrollo, tipo de sistema, etc).
Las metodologías Agile ofrecen una solución para casi todos los proyectos que tienen estas
características.
Una de las cualidades más notables de una metodología Agile es su simplicidad lo que reduce
los costos de implementación en un equipo de desarrollo.
72
Desarrollo Agile del Software
Los enfoques de desarrollo Agile han revolucionado las formas de producir software. Ha
generado un debate entre sus seguidores y escépticos como un enfoque alternativo a las
metodologías tradicionales.
73
Modelo en Cascada
74
Modelo V
El modelo de ciclo de vida V proviene del principio que establece que los procedimientos utilizados
para probar si la aplicación cumple las especificaciones ya deben haberse creado en la fase de
diseño.
75
DevOps
76
Integración Continua
Integración Continua
Cada pieza de código está integrada en el sistema una vez que el código está listo.
Todas las pruebas se realizan y deben ser aprobadas para que el nuevo código se incorpore
definitivamente.
El equipo de desarrollo está más preparado para modificar el código según sea necesario,
porque les confiere la identificación y corrección para los errores de integración.
78
Integración Continua
Pequeñas entregas:
La idea es producir rápidamente versiones del sistema que estén operativas, aunque
obviamente no tienen toda la funcionalidad prevista para el sistema, pero son un resultado de
valor para el negocio.
Monitorización:
79
Integración Continua
Un buen ejemplo es un equipo de arquitectos trabajando en el plano de una casa. Cada día
trabajan en la creación del diseño de manera independiente y cada viernes tratan de construir
la estructura una vez que se han combinado todos los planos.
Este tipo de trabajo en equipo es bueno, pero ¿qué pasa si dos arquitectos trabajan en una
misma parte de la estructura y elaboran dos diseños diferentes? Seguramente se producirá un
problema.
80
Integración Continua
81
Beneficios de la Integración Continua
El objetivo principal de la Integración Continua es que los miembros del equipo conozcan la
necesidad del trabajo integrado. Las pruebas automatizadas pueden detectar errores siempre
que un miembro del equipo trate de realizar un cambio.
82
Beneficios de la Integración Continua
CI permite a los equipos detectar rápidamente los problemas tan pronto como estos aparecen.
Algunas compañías o equipos creen que es posible construir y entregar sin CI, pero hoy día
puede ser un requerimiento.
Se puede creer que es posible desarrollar más rápido sin la implementación de CI.
83
Beneficios de la Integración Continua
Con proyectos en aumento y creciendo ni la compañía ni el equipo se harán más eficientes sin CI.
Con CI se detectan errores rápidamente, la confianza aumenta y esto lleva a una mayor eficiencia
en la entrega del software.
Con la integración continua habrá menos Back-tracking que hacer para descubrir dónde se
originó un error. Esto permite mayor tiempo para ser utilizado en la construcción de las
características.
No seguir el enfoque continuo significa periodos de tiempo más largos entre integraciones, por lo
que es exponencialmente más difícil encontrar los problemas y resolverlos.
84
Entrega Continua
Entrega Continua
86
Entrega Continua
QA: También esta el entorno de control de calidad y por lo general hay más de uno en tales
ambientes, cada uno para apoyar cada tipo de entorno que se utiliza para el software que se
entrega.
87
Entrega Continua
88
Entrega Continua
89
Aprendizaje Continuo
Aprendizaje Continuo
91
Modelo CALMS
Modelo
CALMS
93
DevOps, Otras Prácticas Recomendadas y
Frameworks (Marcos)
DevOps y Agile
• DevOps con Agile es una combinación interesante. Siempre comienza con un usuario, el
cliente, luego algún concepto para ser llevado al mercado. Esto se conoce como ciclo
concepto-a-efectivo.
• Para conseguir esto del usuario al desarrollo, la gente desarrolla productos, generalmente que
responden a los requisitos del cliente y a sus necesidades.
• Y a través de las operaciones, Agile te lleva del usuario al desarrollo y DevOps te lleva desde
el desarrollo hasta las operaciones en las que tendrás algo que realmente puedas
proporcionar a tus clientes.
95
DevOps y Agile
Equipos cohesivos: Significa trabajar en estrecha colaboración para producir valor, para sacar
productos al mercado.
96
DevOps y Agile
97
DevOps y Agile
Puede utilizar las prácticas de Ingeniería Agile junto con la capacidad de operar y puede
terminar con DevOps.
Esta es la capacidad de desarrollar y operar productos y software de manera rápida para luego
llevarlos al mercado.
Usted tiene el puente entre los usuarios y los desarrolladores, Agile y DevOps enlaza
desarrolladores y operadores.
98
DevOps y Scrum
Se trata de un marco de trabajo Agile que permite completar más rápidamente proyectos
complejos.
Sin embargo, con Scrum, las posibilidades son infinitas, se puede utilizar para cualquier ámbito
innovador y proyecto/tarea compleja. Este marco es muy simple, pero sin duda debe estar
trabajando en la creación de la cultura DevOps.
99
DevOps y Scrum
100
DevOps e ITSM (ITIL)
DevOps e ITIL se necesita mutuamente. ¿Por qué? Porque tienen funciones que benefician a
ambos.
• Trabajo colaborativo.
• Tiempos de despliegue rápido y continuo.
• Entrega más rápida de funciones.
• Enfoque en el trabajo importante.
• Estabilidad en el ambiente.
101
DevOps e ITSM (ITIL)
Fuente: https://www.axelos.com/resource-hub/white-paper/itil-and-devops-getting-started
102
DevOps e ITSM (ITIL)
103
DevOps e
ITSM (ITIL)
DevOps
industry architecture, figure 9.
"ITIL® is a (registered) Trade
Mark of AXELOS Limited. All
rights reserved
©Copyright AXELOS.
104
Taller
30 Minutos
Taller
Equipos:
• Scrum.
A continuación se comparte un ejemplo de facilitación basada
en el libro de Dana Pylayeva, con una duración máxima de 3 • Grupo de TI (Administradores de
horas. Sistemas, Ingenieros de Seguridad e
Ingenieros de Liberación).
Se recomienda usar las filminas proporcionadas por la autora • Representantes de la empresa.
para dar contexto a la simulación de ambientes Pre-DevOps.
106
Cultura DevOps
Cultura DevOps
108
Cultura DevOps
• Hoy en día, hay una delgada línea entre los roles que los desarrolladores hacen y ya no basta
con tener una sola experiencia.
• Las pequeñas, medianas y grandes empresas ahora están adoptando esta nueva cultura
DevOps para impulsar sus aplicaciones y programas hacia adelante y ser capaz de responder
rápidamente a los cambios.
• Productos y empresas están cambiando con el tiempo, por lo tanto, es necesario tener la
capacidad de saber cómo trabajar en múltiples áreas y crear un mejor valor.
109
Cultura DevOps
La integración continua también es esencial. Esto significa poder enviar código directamente a
los usuarios. Este es un proceso de probar el código mientras está en la etapa de desarrollo.
Esto permite a los desarrolladores actuar de inmediato en cuanto se devuelven los comentarios.
Los códigos probados continuamente son menos propensos a errores, y son más fáciles de
liberar, también.
110
Cultura Orientada en DevOps
111
Equipo DevOps
Organización-Legado
113
Organización-Legado
Alineación, integración,
coordinación de procesos
y reglas gubernamentales,
liderazgo y colaboración.
114
Operadores y Desarrolladores Tradicionales
115
Se Crean Equipos Dedicados de DevOps
116
DevOps Total
117
Roles de los Equipos
• Master de Procesos.
• Master de Servicios.
• Ingeniero de DevOps.
• Coordinador de Lanzamiento.
• Ingeniero de Confiabilidad.
• Equipo de Desarrollo.
• Equipo de Operación.
118
Oficina de Gestión de Servicios SMO
119
Adopción Incremental
Adopción Incremental
Una vez que esto se ha hecho con éxito, las lecciones aprendidas se pueden aplicar para
objetivos cada vez más grandes hasta que finalmente hay un equilibrio saludable entre las
mejoras del proceso y la ejecución del proceso.
El desafío clave sigue siendo encontrar un balance entre los complejos entornos de TI de la
organización, la velocidad de implementación y el riesgo, que deben hacerse para que trabajen
juntos.
121
Adopción Incremental
Por lo tanto, DevOps debe planearse para la mejora continua y no hacer la implementación de
un evento de una sola vez.
Una estrategia incremental tiene que preferiblemente ser hecha en un acercamiento cíclico,
escalonado que minimice riesgos y costes de la adopción de DevOps para construir los
conjuntos de habilidades internas necesarias y el ímpetu para implementar ciclos más grandes y
más rápidos.
Cada paso se construirá en el paso previo, en materia de inversión y preparación durante todo el
ciclo global.
Las horas dedicadas al desarrollo serán realistas para la mayoría de las empresas y variarán
ampliamente de acuerdo con la cultura y la política de una organización.
122
Adopción Incremental
123
System Thinking
System Thinking
Para las organizaciones de DevOps, Sistema significa el negocio como un todo, no sus
departamentos o equipos específicos.
Los equipos de desarrolladores escriben el código y después los Testers los prueban y los
operadores proporcionan la infraestructura para ejecutarlos y finalmente los clientes los
consumen.
125
System Thinking
El pensamiento de Sistemas significa que cada equipo debe ser consciente de las acciones de
todos los demás equipos que trabajan en las líneas de desarrollo y en última instancia las
entregas se realizan al cliente.
DevOps define cómo las acciones pueden afectar no solo al equipo sino a todo el Sistema. Esto
significa que los desarrolladores podrían tener una mayor visibilidad en el ciclo de vida completo
de las piezas del código que escriben.
Esto también significa tomar conciencia de las posibles ramificaciones de un cambio en lugar de
olvidarse de las modificaciones después de que se hayan terminados los códigos.
126
System Thinking
El pensamiento sistemático forma un excelente enfoque para pensar también sobre la culpa.
Tradicionalmente, cuando alguien forzaba partes de código hacia la producción, que causaban
interrupciones importantes del servicio, eran señalados, reprendidos e incluso potencialmente
despedidos.
Un pensamiento sistemático ha sido capaz de eliminar estas inclinaciones iniciales para la culpa
individual.
127
System Thinking
El equipo de DevOps investigará inmediatamente las causas; no por personas que hicieron esto,
sino cómo esto podría producirse en absoluto. Se puede mirar en las causas de por qué las
pruebas automatizadas no pudieron atrapar la falla que lleva al principio de aprendizaje y
experimentación.
128
Experimentación y Aprendizaje
El incidente sería arreglado así que incluso si alguien hace la misma cosa otra vez, el sistema lo
evitaría.
129
Experimentación y Aprendizaje
Esto, naturalmente, animaría a todos a ser humildes, no hay ideas perfectas todas se podrían
desafiar.
130
Feedback
Feedback
La retroalimentación ocurre entre los pares en los mismos equipos y entre negocio en la forma
de retroalimentación de los clientes.
Para proporcionar las características al cliente en el tiempo posible más corto es crítico que la
retroalimentación se reciba lo más pronto posible.
132
Feedback
Los enfoques de DevOps han revertido los enfoques tradicionales y los clientes controlan el
desarrollo a través de canales de retroalimentación abiertos.
Aunque un enfoque de proceso incremental lleva años, los resultados son siempre
transformadores, el punto final es que DevOps es dinámico.
133
Herramientas para el Apoyo
de la Cultura DevOps
Herramientas DevOps
Hacer DevOps sin el uso de herramientas es complejo si entendemos que DevOps tiene
componentes de automatización. DevOps es y será un tema cultural y no será tan solo el
conjunto de herramientas.
Miremos un ejemplo, las herramientas no hacen cultura, pensemos en una empresa que desea
hacer que sus reuniones internas inicien a tiempo. Si la compañía compra un software de gestión
de reuniones, ¿logrará que las reuniones inicien a tiempo?
Si la cultura interna es iniciar reuniones tarde, se deberá trabajar en cambiar la cultura interna
primero. La herramienta por más buena que sea no logrará hacer que la cultura cambie.
¿Qué herramientas para DevOps o llamadas DevOps conocen los candidatos a la Certificación
DevOps Essentials?
¿Qué hacen puntualmente esas herramientas?
135
Herramientas
DevOps
136
Cadena de herramientas de DevOps
Fuente: https://www.edureka.co/blog/devops-tools
137
Herramientas DevOps-GIT
GIT fue producido siguiendo los requerimientos de la comunidad Linux para SCM, es decir, el software Source-
Control-Management que podría soportar sistemas distribuidos.
Esta es la herramienta más comúnmente utilizada para el manejo de fuentes que está disponible hoy en día.
Su ventaja consiste en tener grandes características adicionales en las solicitudes de bifurcación y tracción;
Además GitHub también proporciona plugins que son capaces de conectar Jenkins y facilitar la integración y
despliegue.
Las pruebas de velocidad que se ejecutan en una operación de red GIT generan resultados impresionantes, ya que
los protocolos GIT para la transferencia de datos están altamente optimizados.
Sin embargo, con el tiempo, las implementaciones internas de GIT revelan limitaciones que pueden tener impactos
en la velocidad y eficiencia de las tuberías de entrega.
138
Plataforma Nube
Las tareas en la automatización de la nube son realizadas por muchas herramientas de automatización
como scripts y herramientas de gestión local para la gestión de la configuración.
Las orquestas de DevOps son una coordinación automatizada por procesos de DevOps
personalizados en las herramientas y tareas de organización y automatización que se están llevando a
cabo en el proceso.
139
Plataforma Nube
Los desarrolladores que utilizan Docker crean entornos Docker en el portátil para desarrollar y
probar localmente aplicaciones en los contenedores.
Dentro de este entorno se realizan ensayos en pilas de servicio compuestas con múltiples
contenedores Docker.
Los múltiples contenedores de Docker convergen como pilas de un solo servicio, como las pilas
LAMP y tardan segundos en crear una instancia.
140
Docker
141
Docker
142
JS
Las plataformas JS tienen bibliotecas que permiten a las aplicaciones servir como servidores
web sin necesidad de software como el Apache-HTTP-Server o el Microsoft-IIS, sin tener que
hacer que los servidores web acorten las listas de tareas pendientes de DevOps y optimicen el
flujo de código desde el desarrollo hasta el despliegue. Además, el JavaScript se puede utilizar
tanto en cliente como en servidor.
143
JS
Los desarrolladores encuentran una ventaja de eficiencia debido a la reutilización del código.
Las aplicaciones NODE.JS pueden ejecutarse en tiempo de ejecución NODE.JS en Microsoft
Windows, OSX, Linux y FreeBSD.
Ha sido diseñado para una operación rápida con gran experiencia del usuario. Un modelo de
E/S sin bloqueo y controlado por eventos en NODE.JS permite aplicaciones ligeras que son
altamente eficientes.
144
Chef
145
Chef
Las recetas se ejecutan de forma independiente mediante el uso de CHEF SOLO o un servidor
que tenga CHEF SERVER que actúe como hubs para los datos de configuración.
Los servidores almacenan libros de cocina o políticas aplicadas a los nodos y los metadatos que
describen el nodo registrado administrado por chef-client.
Chef es una herramienta de gestión multi-plataforma para Windows, Linux, Mac OS, etc., y
puede integrarse con los principales proveedores de cloud.
146
Jenkins
Este es un motor para la integración extensible y continua que se utiliza como una de las
principales herramientas de los ingenieros de DevOps que desean monitorear repetidas
ejecuciones de trabajo.
Con Jenkins, el ingeniero de DevOps encuentra más fácil integrar los cambios en los proyectos
y puede acceder a las salidas fácilmente cuando encuentran que algo va mal.
147
Puppet
Tiene cadenas de herramientas comunes y respalda las mejores prácticas clave en DevOps que
incluyen la entrega continua.
También existen versiones de Puppet de fuente abierta disponibles que han sido utilizadas por
la Universidad de Stanford para colmar las lagunas en el desarrollo de software para su servicio
de biblioteca digital y administración del sistema, necesarias para mantener los servicios
funcionando de manera segura.
148
Modelo Gartner DevOps
P.P.T y Cultura
150
Modelo Gartner DevOps
www.gartner.com
151
152
Este modelo mira DevOps desde tres puntos de vista: procesos, automatización y la
colaboración. Se extiende por una serie de estados claramente definidos en el camino hacia un
entorno DevOps optimizado.
154
Lista de Chequeo - DevOps
Las listas de comprobación de DevOps no son estáticas o únicas y no tienen manifiestos que
describan a DevOps, pero deben adaptarse a las necesidades de la organización, las
interacciones humanas y otros criterios de naturaleza específica.
155
Autoevaluación
En las empresas hay una necesidad de evaluación continua que constituye una piedra angular
para el desarrollo escalable de la empresa DevOps.
• La evaluación de resultados e impactos constituye una disciplina importante y crítica que los
equipos de TI deben adoptar durante la implementación de DevOps. Este proceso debe ser
integral, automático y continuo.
• Sin una evaluación continua en un kit de herramientas de DevOps, existe el riesgo de pasar a
ciegas y perder grandes oportunidades que pueden estar fácilmente al alcance.
• Esta información será crucial cuando los líderes empresariales y de TI prioricen su inversión
futura y hagan concesiones que puedan surgir.
156
Autoevaluación
Fuente:
El resultado de esta autoevaluación debería ser http://devopsassessment.azurewebsites.net/es-ES/
usada para ayudar a optimizar tus prácticas y
herramientas DevOps.
157
Autoevaluación
La autoevaluación ayuda a determinar y medir qué características de DevOps son muy valiosas
y se deben mejorar en la cultura empresarial.
Es costoso mantener y hace difícil la innovación, lo que ralentiza el equipo de desarrollo, por lo
que es obligatorio un proceso de autoevaluación continua.
158
Reporte DevOps 2023
www.puppet.com
159
Taller
30 Minutos
Análisis del Estado DevOps de Puppet
https://www.puppet.com/resources/state-of-platform-engineering
Referencias
Literatura
162
Referencias
163
¡Síguenos, ponte en contacto!