“Hope is not a strategy.”
“The definition of insanity is doing the same thing over and over again and expecting different results.” -- A. Einstein
Accesible | Adaptable | Auditable |
Versionable | Recuperable | Certificable |
Integro | Documentado | Durable |
Eficiente | Efectivo | Resiliente |
Interoperable | Mantenible | Modificable |
Seguro | De calidad | Entendible |
Responsive | Robusto | Escalable |
Compatible | Testeable | Monitoreable |
Disponible | Administrable | Efectivo |
Software Architects | Networking Engineers | Developers |
Build Engineer | System Retrabitrty Engineers | Automation Engineers |
Security Official | Functional Testers | Non Functional Testers |
Designers | Cloud Engineers | Gerentes de Proyecto |
STEAMROOT="$(cd "${0%/*}" && echo $PWD)"
rm -rf "$STEAMROOT/"*
¿Alguien lo ha logrado?
¿Resuelven estos problemas de la misma forma?
¿DevSecOps?
No existe un acuerdo global de su definición.
Desarrolladores y Operaciones trabajando conjuntamente.
Desarrolladores, QA, Seguridad y Operaciones trabajando conjuntamente. (DevQASecOps ...)
- DevOps es una Cultura de Confianza y Colaboración
- en la cual las personas usan las Herramientas adecuadas
- para automatizar
- y así poder garantizar una Entrega Continua.
DevOps | SRE |
---|---|
Herramientas y Automatización | Automatización y Minimización de trabajo manual |
Medir Todo | Ve Operaciones como problema de software y define formas para medir disponibilidad, tiempo de arranque, daños, latencias, etc. |
DevOps | SRE |
---|---|
Minimiza Silos Organizacionales | Comparte Empoderamiento |
Accepta Fallos | Balance de Accidentes y Fallos con Nuevas Versiones |
Cambios Graduales | Reducir costo de Fallos |
DevOps | SRE |
---|---|
Herramientas y Automatización | Automatización y Minimización de trabajo manual |
Medir Todo | Ve Operaciones como problema de software y define formas para medir disponibilidad, tiempo de arranque, daños, latencias, etc. |
Production Engineer
Equipo que cuenta con la experiencia y el conocimiento necesario para analizar y retroalimentar proyectos y productos de Software mejorando su:
- tiempo de entrega
- calidad
- operabilidad / administración
- visualización / transparencia
Desde su rol dentro del proyecto de software responda:
Infraestructura como código
Configuración como código
Aplicaciones
Datos como código
IaC | CaC | A | DaC | |
Versionar | ||||
Probar | ||||
Asegurar |
DEV | Developers |
BUILD | Build Engineer |
QA | QA Team |
SIT | Integration Testers |
UAT | User Test |
PROD | Operations |
Manifiesto Ágil
12 principios
Los sistemas grandes están compuestos de sistemas más pequeños y dependen de las propiedades reactivas de estos.
I. Codebase | One codebase in revision control, many deploys |
II. Dependencies | Explicitly declare and isolate dependencies |
III. Config | Store config in the environment |
IV. Backing services | Treat backing services as attached resources |
V. Build, release, run | Strictly separate build and run stages |
VI. Processes | Execute the app as one or more stateless processes |
VII. Port binding | Export services via port binding |
VIII. Concurrency | Scale out via the process model |
IX. Disposability | Maximize robustness: fast startup and graceful shutdown |
X. Dev/prod parity | Keep "environments" as similar as possible |
XI. Logs | Treat logs as event streams |
XII. Admin processes | Run admin/management tasks as one-off processes |
Servidores Fénix vs Copo de nieve