Este proyecto consta de una serie de scripts para levantar un servidor virtual con una configuracion no monolitica, la idea es que los desarrolladores empiecen a pensar en que sus desarrollos no van a ir enfocados a un solo nodo, si no a multiples, especialmente en empresas grandes donde su infraestructura es mas robusta.
Se recomienda:
Vagrant 2.*
VirtualBox 5.*
Para usar este proyecto es necesario tener instalado lo siguiente:
- virtualbox 5.*
- vagrant 2.*
- putty (en caso de estar usando windows)
Para hacer accesibles las paginas publicadas por el servidor virtual, necesitamos poner las siguientes lineas en el archivo hosts (/etc/hosts en linux y mac, C:\windows\system32\drivers\etc\hosts para windows )
192.168.66.10 www.wrappergraylogzendlogger.local.com
192.168.66.10 magentotraining.local.com
192.168.66.10 magento2training.local.com
Es importante comentar que la resolucion de nombres, esta en cada uno de los servidores y responden a la siguiente manera:
-virtualmachine
--vagrant
--puppet
-magento1
-
-
-magento2
-
-
-WrapperGrayLogZendLogger
Una vez que tenemos la configuración correcta podemos manipular el servidor virtual desde la linea de comandos con los siguientes comandos
vagrant up
La primera vez que se usa este comando, vagrant genera y configura el servidor virtual, por lo que es probable que se tarde varios minutos.
vagrant halt
vagrant reload --provision
Esto se hará cada vez que hagamos una corrección en los scripts de este proyecto para que los servidores de cada uno tome los cambios, obvio habrá que hacer un "git pull" previamente.
vagrant destroy
Esta instrucción destruye el servidor virtual y debe ser usada con cuidado, es útil en el caso de que se desee liberar espacio en disco, cuando ya no se ocupe más el servidor, o en caso de querer iniciar con un servidor limpio.
Los datos en las carpetas de los proyectos no se ven afectados.
Si después de ejecutar este comando ejecutamos una vez mas vagrant up, la maquina se volverá a generar desde cero.
vagrant ssh
Este comando es muy útil para revisar logs del servidor, hacer cambios manuales a la configuración reiniciar servicios etc.
Recuerda que cualquier configuración especial que hagas a mano aquí diferirá de la configuración que tienen los demás y se perderá si ejecutas vagrant destroy o en algunos casos si ejecutas vagrant reload --provision, si deseas hacer una configuración que se pueda regenerar automáticamente, hay que hacerlo en los scripts de este proyecto, en puppet o en sh.
El servidor virtual creado por vagrant con los archivos de este proyecto, tiene instalado:
nginx
compass
nodejs
npm
php-fpm 5.6
mysql
xdebug
y una serie de librerías de php
Para verficar que el servicio esta funcionando, por favor de correr:
netstat -tulpn | grep :11211
Para verificar el estatus del servidor memcached, se deberá de usar memcached-tool
memcached-tool 127.0.0.1 stats
Para el borrado de la cache por favor usar :
telnet 127.0.0.1 11211
flush_all
Puedes conectarte al servidor ejecutando vagrant ssh app01 o app02, y revisar los logs los logs de php los puedes encontrar en.
/var/log/php-fpm/www-error.log
Te recomiendo ejecutar dentro del servidor tail -f /var/log/php-fpm/www-error.log
@author Ricardo Ruiz Cruz [email protected]