Ingeniería de confiabilidad de sitios y operaciones de desarrollo

Descripción general

Go ayuda a las empresas a automatizarse y escalar

Los equipos de Operaciones de Desarrollo (DevOps) ayudan a las organizaciones de ingeniería a automatizar tareas y mejorar su proceso de integración continua, entregas y despliegues continuos (CI/CD). DevOps puede derribar los silos de desarrollo e implementar herramientas y automatización para mejorar el desarrollo, la despliegue y el soporte de software.

Site Reliability Engineering (SRE) nació en Google para hacer que los "sitios a gran escala" de la empresa sean más confiables, eficientes y escalables, escribe Silvia Fressard, consultora independiente de DevOps. "Y las prácticas que desarrollaron respondieron tan bien a las necesidades de Google que otras grandes empresas tecnológicas, como Amazon y Netflix, también las adoptaron". SRE requiere una combinación de habilidades de desarrollo y operaciones, y “empodera a los desarrolladores de software ser dueño del funcionamiento diario continuo de sus aplicaciones en producción”.

Go sirve a sus dos hermanos, DevOps y SRE, desde sus tiempos de compilación rápidos y su sintaxis sencilla hasta su soporte de seguridad y confiabilidad. Las características de simultaneidad y redes de Go también lo hacen ideal para herramientas que administran la implementación en la nube, lo que admite fácilmente la automatización y, al mismo tiempo, aumenta la velocidad y la capacidad de mantenimiento del código a medida que la infraestructura de desarrollo crece con el tiempo.

Los equipos de DevOps/SRE escriben software que va desde pequeños scripts hasta interfaces de línea de comandos (CLI), pasando por servicios y automatización complejos, y el conjunto de funciones de Go tiene beneficios para cada situación.

Beneficios clave

Crea fácilmente pequeños scripts con la sólida biblioteca estándar y el tipado estática de Go.

Los rápidos tiempos de construcción e inicio de Go. La extensa biblioteca estándar de Go, que incluye paquetes para necesidades comunes como HTTP, E/S de archivos, hora, expresiones regulares, exec y formatos JSON/CSV, permite a DevOps/SRE acceder directamente a su lógica empresarial. Además, el sistema de tipos estáticos de Go y el manejo explícito de errores hacen que incluso los scripts pequeños sean más sólidos.

Despliega CLIs rápidamente con los rápidos tiempos de compilación de Go

Cada ingeniero de confiabilidad del sitio ha escrito scripts de "uso único" que se convirtieron en CLI utilizados por docenas de otros ingenieros todos los días. Y los pequeños scripts de automatización de implementación se convierten en servicios de gestión de implementación. Con Go, DevOps/SRE están en una excelente posición para tener éxito cuando el alcance del software inevitablemente aumenta. Comenzar con Go lo coloca en una excelente posición para tener éxito cuando eso suceda.

Escala y mantén aplicaciones más grandes con el bajo consumo de memoria y el generador de documentación de Go

El recolector de basura de Go significa que los equipos de DevOps/SRE no tienen que preocuparse por la administración de la memoria. Y el generador automático de documentación de Go (godoc) hace que el código se autodocumente, lo que reduce los gastos de mantenimiento y establece las mejores prácticas desde el principio.

Cliente Breve introducción Proyectos usando go
Docker Docker Docker Docker es un producto de software como servicio (SaaS), escrito en Go, que los equipos de DevOps/SRE aprovechan para "impulsar la automatización y despliegues seguros a escala masiva", respaldando su esfuerzos de CI/CD.
Drone Drone Drone Drone es un sistema de entrega continua basado en tecnología de contenedores, escrito en Go, que utiliza un archivo de configuración YAML simple, un superconjunto de docker-compose, para definir y ejecutar tuberías dentro de contenedores Docker.
etcd etcd etcd etcd es un almacén de valores clave distribuido y fuertemente consistente que proporciona una forma confiable de almacenar datos a los que debe acceder un sistema distribuido o un grupo de máquinas, y está escrito en Go.

Comienza

Libros Go sobre DevOps y SRE

Ver más
  • spf13/cobra

    Una biblioteca para crear potentes aplicaciones CLI modernas y un programa para generar aplicaciones y aplicaciones CLI en Go

  • spf13/viper

    Una solución de configuración completa para aplicaciones Go, diseñada para funcionar dentro de una aplicación para manejar las necesidades y formatos de configuración

  • urfave/cli

    Un framework mínimo para crear y organizar aplicaciones Go de línea de comandos

Ver más
Ver más