Ir al contenido principal

¿Qué es DevOps?

DevOps es un término para un grupo de conceptos, que aunque no son nuevos, han experimentado un renacimiento y rápida propagación a través de la comunidad técnica. Como todo término de moda, (Cloud Compunting?), las personas tienen impresiones erradas y a veces contradictorias de lo que significa. Este artículo intenta dar una definición base de lo que DevOps representa.

Definición de DevOps

DevOps es un término relativamente nuevo para describir lo que también ha sido llamado como “administración ágil de sistemas” y también el trabajo y colaboración en conjunto de los equipos de operaciones y de desarrollo.
Puedes pensar en DevOps como la participación efectiva de los administradores de sistemas en el proceso de desarrollo de aplicaciones, utilizando las mismas técnicas ágiles que usan los desarrolladores.
Para este propósito “DevOps” no diferencia entre las diferentes sub-disciplinas de la administración de sistemas. Bajo el alero de “Ops” se ubican ingenieros, administradores de sistema, personal de operaciones, entre varios otros.
DevOps significa un montón de cosas diferentes para diferentes personas porque el “desarrollo ágil” en si mismo cubre un terreno bastante amplio. Algunas personas dirán que DevOps es “la colaboración de los departamentos de desarrollo y operaciones”, o que es “tratar tu código como infraestructura”, o “usar automatización”, o “usar kanban”, o una variedad de términos similares que se relacionan de una u otra forma.
La mejor forma de definir su significado en profundidad es comparándolo con la definición de desarrollo ágil, que según Wikipedia y el manifiesto ágil, se resumen en tres puntos:
  • Principios Ágiles - son los valores principales del movimiento, como: colaboración, personas antes que procesos, software antes que documentación y la disposición al cambio antes que la sobre planificación.
  • Métodos Ágiles - procesos específicos para implementar los principios ágiles. Iteraciones,Lean, Programación Extrema (XP)Scrum. En resumen, todo lo contrario al “Desarrollo en Cascada”.
  • Prácticas Ágiles - técnicas usadas a menudo con el desarrollo ágil, pero que no son requisitos. Como puede ser el Test Driven Development (TDD)Integración continua (CI), etc.
Al poner atención a lo que las personas hablan acerca de DevOps, podemos ver que se relacionan fuertemente con los puntos anteriores:
  • Principios DevOps - Como debemos pensar diferentes sobre operaciones. Ejemplos incluyen la colaboración entre administradores y desarrolladores, “infraestructura como código”, etc.
  • Métodos DevOps - Procesos que se usan para realizar operaciones ágiles, como iteraciones, lean/kanban, reuniones de 5 minutos, etc.
  • Prácticas DevOps - Técnicas y herramientas específicas usadas como parte de la implementación de los procesos, como herramientas de automatización (Puppet, Cheft),continuous deployment, sistemas de monitoreo (Nagios, Zabbix), y cualquier aplicación que tengas en tu “caja de herramientas”.
Si nos guiamos por esta conclusión, de que DevOps consiste en traer las prácticas del desarrollo ágil a la administración de sistema y el trabajo en conjunto entre desarrolladores y administradores de sistemas, vemos que DevOps no es una descripción de cargo o el uso de herramientas, sino un método de trabajo enfocado a los resultados.
DevOps es un término que está sonando fuerte, prueba de ello es la fuerte demanda de Ingenieros DevOps, pero no te dejes engañar, tal cosa no existe. Lo que si existe es tu experiencia y tu disposición a trabajar en equipo usando múltiples sombreros para sacar adelante los desafíos.

Comentarios

Entradas más populares de este blog

Sailfish OS certificado como alternativa a Android en Rusia

Los finlandeses de  Jolla  están de enhorabuena, especialmente si recordamos que no hace mucho estaban casi en la bancarrota, tras embarcarse en una aventura algo arriesgada para la fabricación de tablets. Ahora la vida les sonríe: las autoridades rusas  han certificado  el  sistema operativo Sailfish OS  para su uso por parte del gobierno y corporaciones del país. Se trata de un sistema con base open source ( Linux ), pero con una  capa privativa  presente en algunos de sus componentes como puede ser la interfaz o determinadas aplicaciones. La gran ventaja de Sailfish respecto a otros competidores en el mercado del smartphone –como el ya desaparecido  Firefox OS  o  Ubuntu –, es su  compatibilidad con las aplicaciones de Android. Las intenciones de Rusia es  reducir el uso de sistemas operativos extranjeros  (Android, iOS) en móviles del 95% actual  a la mitad en 2025 . Disminuir la  dependen...

3 tácticas para gestionar el tiempo que te ayudarán a aumentar tu productividad

Uno de los grandes problemas que tenemos y del que no siempre somos conscientes los profesionales de marketing online es que  necesitamos pautas para gestionar nuestro tiempo y ser más eficientes . De nada sirve ocupar buena parte de tu jornada leyendo las últimas novedades y actualizaciones si no te queda tiempo para ponerlas en práctica. Trabajar con información no es fácil Hoy me gustaría explicarte  3 reglas de oro  que te ayudarán a ser mucho más productivo en todo lo que hagas y a  eliminar bloqueos mentales , que muchas veces es el  verdadero problema encubierto de la gestión del tiempo . # 1. Simplifica Simplificar es una cuestión de prioridades . ¿Cuántas horas pasas delante del ordenador atendiendo las tareas menos importantes mientras las importantes las retrasas un día tras otro hasta que dejan de serlo? Por ejemplo, te conectas a Facebook o Twitter en cuanto recibes una notificación, respondes al email que acaba de llegar, buscas conten...

Iproute2 la Sustitución completa de ifconfig

Adios net-tools, Bienvenido iproute2 Un poco de historia El aprender del pasado, nos prepara para el futuro La mayoría de las distribuciones de Linux, y la mayoría de los UNIX, usan todavía algunas de ellas las venerables órdenes arp, ifconfig y route. Aunque funcionan, muestran cierto comportamiento inesperado a partir de Linux 2.2. Por ejemplo, los túneles GRE son parte integral del enrutado hoy día, pero precisan herramientas completamente diferentes. Los núcleos Linux 2.2 y superiores incluyen un subsistema de red completamente rediseñado. Este nuevo código de red proporciona a Linux un rendimiento y características con poca competencia en el panorama general de los SO. En realidad, el nuevo código de enrutado, filtrado y clasificación tiene más posibilidades que el que proporcionan muchos enrutadores y cortafuegos dedicados y productos de control de trafico. Actualmente las principales distribuciones de Linux, han sustituido la instalación predeterminada de estas aplicacio...