
Tenemos un script PHP que ejecuta MongoDB en segundo plano. Quiero convertirlo en un paquete (instalador) para Unix.
Lo usaré para instalar lo siguiente en cualquier máquina:
- Instalar Apache, PHP + MongoDB
- Configurar el proyecto PHP + MongoDB
¿Alguien puede dirigirme a recursos apropiados para lograr esto?
¿Cuáles son tus sugerencias? ¿Cuál es la mejor solución si desea implementar un paquete en un cliente?
Respuesta1
Quizás sea un martillo demasiado grande para su caso particular, pero esta herramienta en realidad puede abrir posibilidades que nunca antes imaginó. Echa un vistazo aMarioneta. Es una herramienta de gestión de configuración que le permite controlar sus clientes de forma centralizada e independiente del sistema operativo.
En Puppet, se asegura de que un determinado paquete esté instalado escribiendo algo similar a lo siguiente en un archivo de configuración (en el servidor):
$package_name = $operatingsystem ? {
debian => 'apache-for-debian',
redhat => 'apache-for-rhel',
default => 'apache',
}
package{$package_name: ensure => installed}
En cuanto a su script PHP casero, puede colocarlo en el árbol de Puppet en su servidor y hacer que los clientes lo descarguen con algo similar a lo siguiente:
file{'my_script':
ensure => file, #as opposed to directory
path => '/path/on/client/myscript',
mode => 0755,
source => 'puppet:///path/on/server/myscript',
}
Puede hacer que Puppet verifique periódicamente los cambios en la configuración del servidor y los refleje en el host local (cliente). Esto significa que el mantenimiento de su script PHP después de la instalación también está centralizado.