De administrador del sistema a DevOps | Activar administrador del sistema

El rol de administrador del sistema es uno de los roles más diversos y complejos en TI. Un administrador de sistemas debe conocer los sistemas operativos, las redes y las bases de datos, pero también el presupuesto, el soporte y las operaciones.

"

El puesto de administrador del sistema ha evolucionado a medida que evolucionan las organizaciones. En los últimos años, las organizaciones han incorporado nuevos modelos para llevar productos al mercado rápidamente, lo que les permite seguir el ritmo de la innovación global.

Históricamente, los administradores y desarrolladores de sistemas han tomado diferentes posiciones sobre cómo llevar los productos a los entornos de producción.

  • Los administradores del sistema son responsables de mantener el entorno de producción operativo y gestionar los acuerdos de nivel de servicio (SLA).
  • Los desarrolladores quieren impulsar nuevas versiones en producción lo antes posible para integrar nuevas funciones en las aplicaciones.
  • Estas nuevas características podrían romper los sistemas de producción e impactar en los SLA.

Es por esta razón que los nuevos enfoques como DevOps están mejor posicionados para abordar estos problemas.

DevOps

Los administradores de sistemas modernos deben conocer las prácticas de DevOps para aprovechar estos enfoques y participar en la mejora general de sus organizaciones para producir mejores aplicaciones y reducir el tiempo de comercialización de sus productos de software.

DevOps está destinado a ser una forma multifuncional de trabajar, reuniendo a diferentes equipos y rompiendo los silos en la organización.

Es importante identificar los aspectos clave de DevOps para los procesos de desarrollo y entrega, que permiten incorporar iteraciones cortas para empujar el código a producción con frecuencia con el apoyo de procesos automatizados con el objetivo de aumentar la calidad del código y reducir los impactos negativos.

La siguiente figura muestra el ciclo de vida de DevOps y describe los procesos de integración continua, entrega continua e implementación continua.

Para facilitar la adopción de DevOps y la transición entre cada fase, es importante conocer los siguientes valores, principios y prácticas de DevOps.

valores DevOps

  • Cultura representada por la comunicación humana, procesos técnicos y herramientas.
  • Automatización de procesos
  • Medición de KPI
  • Comparta comentarios, mejores prácticas y conocimientos

Principios de DevOps

  • Desarrolle y pruebe en un entorno similar al de producción
  • Despliegue con procesos repetibles y confiables
  • Supervisar y validar la calidad operativa
  • Amplificar los bucles de retroalimentación

prácticas de DevOps

  • Configuración de autoservicio
  • Aprovisionamiento automatizado
  • Construcción continua
  • Integración continua
  • Entrega continua
  • Gestión de versiones automatizada
  • Pruebas incrementales

Principales aspectos a considerar

La transición de administrador de sistemas a DevOps implica una curva de aprendizaje para desarrollar nuevas habilidades o mejorar las existentes. Como referencia general, la Hoja de ruta de DevOps proporciona una guía paso a paso para DevOps o cualquier otra función operativa. Está destinado a darle una idea del paisaje y no a alentarlo a elegir lo que está de moda y de moda.

En las próximas secciones, exploraremos algunos aspectos clave que podrían ayudar a que esta transición sea un éxito.

Git y control de versiones

Como administrador del sistema, produce código y documentación a diario. Quizás ya utilices un sistema de control de versiones, pero si no, git es una gran opción

Hay varias implementaciones que puede usar en línea para alojar su repositorio, como GitHub, GitLab, y bitbucket. Del mismo modo, si necesita instalar un servicio interno en el sitio, Edición de la comunidad de Gitlab podría ser una buena opción también.

Puede encontrar muchos recursos en línea para comenzar con git, como este guía fácil.

La idea básica es mantener todo su código y documentación en un sistema de control de versiones, lo que le permite tener todo su historial de cambios y poder revertir los cambios fácilmente si es necesario.

Otro beneficio de un sistema de control de versiones es que lo ayudará a implementar la versión correcta de código a escala y ayudará en la implementación de infraestructura como código y automatización.

De mascotas a ganado

Pasar de mascotas a ganado es un cambio fundamental en la mentalidad sobre cómo organizar e interactuar con la infraestructura. la analogía de Mascotas versus Ganado se ha convertido en uno de los conceptos centrales de un modelo de servicio DevOps. Las mascotas son de vital importancia, pero el ganado es intercambiable.

Esto alude al concepto de infraestructura inmutable, un paradigma en el que los servidores nunca se modifican después de la implementación. Si es necesario actualizar, arreglar o cambiar algo, se aprovisionan nuevos servidores creados a partir de una imagen común con los cambios apropiados para reemplazar los antiguos.

Los beneficios de una infraestructura inmutable incluyen una mayor consistencia y confiabilidad en su infraestructura y un proceso de implementación más simple y predecible.

Registros y observabilidad

Al escalar servicios, el registro centralizado se vuelve más importante porque almacenar registros y métricas externamente permite la depuración incluso cuando el acceso de shell está restringido o después de que se destruye un servidor. Además, ayuda a mejorar la seguridad al tiempo que conserva los rastros en caso de que el servidor se vea comprometido.

La observabilidad es un término de la teoría del control. "En la teoría del control, la observabilidad es una medida de cómo los estados internos de un sistema pueden inferirse mediante el conocimiento de sus salidas externas. La observabilidad y la controlabilidad de un sistema son duelos matemáticos". - Wikipedia.

En el mundo de los productos y servicios de software, observabilidad significa que puede responder todas las preguntas sobre lo que sucede dentro del sistema simplemente observando el exterior del sistema, sin tener que enviar un nuevo código para responder nuevas preguntas.

A veces hay un debate en torno observabilidad vs monitoreo. La sección "Supervisar" del bucle DevOps proporciona la información esencial que impulsa futuras iteraciones. El monitoreo y la observabilidad están en una relación simbiótica, resumida en la siguiente declaración.

"Si eres observable, puedo observarte".

Después de hacer que el sistema sea observable y después de recopilar los datos con una herramienta de monitoreo, debe realizar el análisis de forma manual o automática.

Índice

Idempotencia y automatización

idempotencia es la propiedad de ciertas operaciones en matemáticas e informática por la cual se pueden aplicar varias veces sin modificar el resultado más allá de la aplicación inicial.

Si aplicamos esto a la programación, la idempotencia significa que el estado final permanece igual sin importar cuántas veces se ejecute el código. Este concepto se ha implementado de forma útil en las herramientas de gestión de la configuración.

Las herramientas de gestión de la configuración permiten que los cambios y las implementaciones sean más rápidos, repetibles, escalables, predecibles y capaces de mantener el estado deseado, lo que pone los activos controlados en el estado esperado.

Hay una variedad de herramientas de gestión de configuración disponible, y cada uno tiene características específicas que lo hacen mejor para algunas situaciones que para otras. Ansible es una herramienta muy interesante y un buen punto de partida.

automatizando es la última necesidad de la práctica de DevOps, y "automatizar todo" es el principio clave de DevOps. En última instancia, la automatización en DevOps abarca todo, desde la creación, la implementación y la supervisión.

Algunos beneficios de la automatización:

  • Elimina errores manuales
  • Los miembros del equipo están empoderados
  • Aumentar el número de entregas.
  • Reduce el retraso
  • Aumenta la frecuencia de salida
  • Proporciona una retroalimentación más rápida
  • Permite velocidad, confiabilidad y consistencia

Como puede ver, la automatización tiene varios beneficios que pueden ayudarlo a administrar sus infraestructuras, pero también es importante tener en cuenta que la automatización también puede inducir errores a escala. Por lo tanto, debe estar preparado y planificar con anticipación cómo lidiar con estos escenarios.

Seguridad predeterminada

La seguridad de la información consiste esencialmente en ser conscientes del valor de nuestros activos de información, identificando las amenazas y vulnerabilidades a las que están expuestos y reduciendo el nivel de riesgo, implementando contramedidas con el objetivo de mantener la confidencialidad, integridad y disponibilidad.

"

Hay normas que podría ayudar a lograr este objetivo. Tenga en cuenta que la seguridad de la información es un proceso importante que debe ser parte de nuestra organización e integrarse en todos los aspectos del desarrollo de software y las operaciones de infraestructura, incluida la automatización de la seguridad.

Seguridad predeterminada, en el software, significa que los ajustes de configuración predeterminados son los ajustes más seguros posibles. Otras referencias que te pueden interesar son los 20 controles y recursos del CIS y Referencias CEI, donde puede encontrar comprobaciones de seguridad y guías prácticas de refuerzo para varios sistemas operativos y aplicaciones.

"

Conclusión

La transición de Sysadmin a DevOps puede ser más fácil o más difícil según su experiencia y prácticas actuales; Por supuesto, esto tendrá un costo en tiempo y esfuerzo, pero valdrá la pena si anticipa los beneficios futuros de las nuevas habilidades, herramientas y mentalidad que le brindará.

La parte más importante de esta transición es seguir aprendiendo y descubriendo durante el proceso.

"

Artículos de interés

Subir