De manera similar al software de construcción, las herramientas deben usarse para implementar actualizaciones del servidor de producción (ya sea DB, sitio web, configuraciones de enrutador, etc.). El uso de herramientas reduce ciertos tipos de errores humanos (pasos omitidos, por ejemplo).
- ¿Qué herramientas están disponibles para la implementación de software / configuración / etc. (ya sea gratuita o comercial)?
Por favor
- Listar una sola herramienta por publicación
- Qué parte del proceso de implementación realiza
- Ventajas o desventajas particulares del uso de esta herramienta (es decir, solo .NET, admite todas las plataformas LAMP / WAMP, etc.)
No agregue una herramienta que ya existe: agregue comentarios si tiene algo en particular que decir sobre una respuesta dada.
-Adán
deployment
process
development
Adam Davis
fuente
fuente
Respuestas:
Puppet es una herramienta más recientemente escrita, escrita en Ruby, que está ganando terreno contra la cfengine.
fuente
cfengine es el ejemplo canónico en el mundo de Unix.
fuente
Realmente me gusta cfengine 3
Básicamente puede encargarse de cada parte del proceso de implementación, dada la configuración correcta: copie archivos desde una ubicación, use automáticamente el sistema de empaquetado (como apt, yum) para instalar / actualizar el paquete, iniciar / detener servicios, verificar archivos / páginas contenido.
Lo uso para instalar (o verificar la existencia de) paquetes, y como soy más un tipo Java, cuando necesito implementar algo, descargo el archivo desde un punto central, detengo el servicio Tomcat, copio el archivo en Tomcat directorio, inicie el servicio y compruebe que se puede encontrar el valor correcto en una página servida específica. Sí, cfengine lo hace casi solo.
Ventajas:
Desventajas
fuente
Aunque es principalmente una herramienta de desarrollador, Capistrano también es una buena opción.
No estoy seguro de qué tan bien es compatible con las plataformas Windows, aparte de lo que parece funcionar. Linux / OSX son totalmente compatibles.
Puede usarlo para realizar prácticamente cualquier operación en sus servidores de implementación, desde actualizaciones de archivos hasta copias de seguridad de bases de datos y gestión de usuarios.
Junto con un repositorio de git, obtienes administración de cambios e implementaciones rápidas y fáciles.
fuente
Herramienta: Chef es una herramienta nueva lanzada en enero por Opscode . Está escrito en Ruby y su lenguaje de configuración es un DSL de Ruby puro. Es una herramienta joven en desarrollo activo, pero varias empresas la están utilizando en la producción.
Chef puede administrar toda su infraestructura, desde la configuración de los servicios de arranque y arranque de PXE, hasta la implementación de aplicaciones y la administración de usuarios. Es muy flexible, extensible y potente.
Las ventajas específicas son el DSL Ruby puro, una API RESTful , datos de nodos de búsqueda y una gran cantidad de libros de cocina listos para usar. Debido al DSL de Ruby, se pueden usar estructuras de datos complejas y lógica dentro de las recetas, y junto con la API RESTful, hacen de Chef una herramienta poderosa para programar una infraestructura.
fuente
Jugamos con Fabric en este momento, es bastante simple pero en la línea de Capistrano usando Python.
fuente
Utilizamos Setup Factory
fuente
Para las migraciones de MS SQL Server, sp_help_revlogin es invaluable para la migración de usuarios con el fin de llevar usuarios / SID / pwds al nuevo cuadro.
fuente
Para ventanas: SCCM
fuente
Usamos el conjunto de herramientas Shavlik para manejar parches, configuración y auditoría.
No puedo pensar en ningún pros o contras en particular: funciona bastante bien y no hemos tenido ningún problema real que pueda recordar. (Eso es lo mejor que puedo decir al respecto: funciona lo suficientemente bien como para no tener que pensarlo :)
fuente
Me gustaría dar un gran +1 a Capistrano y Chef. Ambos son muy buenos para escribir tareas específicas de implementación y administración sobre ssh. La marioneta también es interesante, pero el viejo adagio generalmente es cierto "Jack of all trades, master of none". Su mejor opción sería encontrar la herramienta más mínima para los trabajos que desea realizar y ejecutarla.
fuente