linux:clusters:csync2
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Próxima revisión | Revisión previa | ||
| linux:clusters:csync2 [2018/12/06 16:02] – creado grillo | linux:clusters:csync2 [2018/12/06 16:07] (actual) – grillo | ||
|---|---|---|---|
| Línea 5: | Línea 5: | ||
| Versión 1 | Versión 1 | ||
| - | !'' | + | ** Configurar |
| Cluster de w11-test y w12-test como master y (esclavo) | Cluster de w11-test y w12-test como master y (esclavo) | ||
| - | Instalar csync2 en cada nodo del cluster | + | Instalar csync2 en cada nodo del cluster |
| - | {{{ apt-get install csync2 | + | ``` apt-get install csync2 |
| - | Verificar que cada equipo conozca la ip de los demás en el / | + | Verificar que cada equipo conozca la ip de los demás en el / |
| - | {{{ | + | ``` |
| 127.0.0.1 | 127.0.0.1 | ||
| 192.168.2.152 | 192.168.2.152 | ||
| 192.168.2.153 | 192.168.2.153 | ||
| - | }}} | + | ``` |
| - | En w11-test generar clave (si no hace nada tipear hasta que vuelva) | + | En w11-test generar clave (si no hace nada tipear hasta que vuelva) |
| - | {{{ csync2 -k / | + | ``` csync2 -k / |
| - | {{{ chmod 600 / | + | ``` chmod 600 / |
| - | Generar los certificados en un debian 6 o anterior con el Common Name (CN) vacío (por un bug de la v1) | + | Generar los certificados en un debian 6 o anterior con el Common Name (CN) vacío (por un bug de la v1) |
| - | {{{ openssl genrsa -out / | + | ``` openssl genrsa -out / |
| - | {{{ openssl req -new -key / | + | ``` openssl req -new -key / |
| - | {{{ openssl x509 -req -days 600 -in / | + | ``` openssl x509 -req -days 600 -in / |
| - | Copiarlos a w11-test | + | Copiarlos a w11-test |
| - | {{{ rsync -av /etc/csync* w11-test:/ | + | ``` rsync -av /etc/csync* w11-test:/ |
| - | {{{ chown root.root / | + | ``` chown root.root / |
| - | {{{ chmod 640 / | + | ``` chmod 640 / |
| - | Crear archivo de configuracion / | + | Crear archivo de configuracion / |
| - | {{{ | + | |
| + | ``` | ||
| # please see the REAMDE file how to configure csync2 | # please see the REAMDE file how to configure csync2 | ||
| #nossl w* w*; # no utiliza certificados ni encriptacion | #nossl w* w*; # no utiliza certificados ni encriptacion | ||
| - | group apache2 | + | group apache2 |
| host w11-test; | host w11-test; | ||
| host (w12-test); | host (w12-test); | ||
| Línea 45: | Línea 46: | ||
| include /var/www; | include /var/www; | ||
| exclude *.swp; | exclude *.swp; | ||
| - | action | + | action |
| pattern / | pattern / | ||
| exec "/ | exec "/ | ||
| logfile "/ | logfile "/ | ||
| do-local; #ejecuta el comando en local y remotos | do-local; #ejecuta el comando en local y remotos | ||
| - | | + | |
| - | action | + | action |
| pattern / | pattern / | ||
| exec "/ | exec "/ | ||
| logfile "/ | logfile "/ | ||
| do-local; | do-local; | ||
| - | | + | |
| - | action | + | action |
| pattern /var/www/*; | pattern /var/www/*; | ||
| exec "/ | exec "/ | ||
| logfile "/ | logfile "/ | ||
| do-local; | do-local; | ||
| - | | + | |
| backup-directory / | backup-directory / | ||
| Línea 68: | Línea 69: | ||
| auto none; # modo para resolver conflictos en este caso gana siempre master | auto none; # modo para resolver conflictos en este caso gana siempre master | ||
| - | } | + | ` |
| - | }}} | + | ``` |
| - | Copiar archivos de configuracion a w12-test | + | Copiar archivos de configuracion a w12-test |
| - | {{{ scp / | + | ``` scp / |
| - | Reiniciar el inetd en ambos nodos | + | Reiniciar el inetd en ambos nodos |
| - | {{{ / | + | ``` / |
| - | Generar directorio para backups en cada nodo | + | Generar directorio para backups en cada nodo |
| - | {{{ mkdir -p / | + | ``` mkdir -p / |
| - | Hacer primera sincronización para generar la base | + | Hacer primera sincronización para generar la base |
| - | Primero en el master y luego en los esclavos | + | Primero en el master y luego en los esclavos |
| - | {{{ csync2 -xv }}} | + | ``` csync2 -xv ``` |
| - | Los esclavos deben tirar error de que no pueden sincronizar a otros por política del cluster | + | Los esclavos deben tirar error de que no pueden sincronizar a otros por política del cluster |
| - | {{{ ERROR from peer w12-test: Permission denied for slave! | + | ``` ERROR from peer w12-test: Permission denied for slave! |
| - | Verificar que todos quedaron con la base al día (no debe devolver ninguna salida) | + | Verificar que todos quedaron con la base al día (no debe devolver ninguna salida) |
| - | {{{ csync2 -T }}} | + | ``` csync2 -T ``` |
| - | Opcional: agregar sincronización automática | + | Opcional: agregar sincronización automática |
| - | {{{ */1 * * * * csync2 -x >/ | + | ``` */1 * * * * csync2 -x >/ |
| - | Opcional: generar script para sincronizar a mano | + | Opcional: generar script para sincronizar a mano |
| - | Archivo / | + | Archivo / |
| - | {{{ | + | |
| + | ``` | ||
| #!/bin/bash | #!/bin/bash | ||
| # sincroniza config de apache usando csync2 | # sincroniza config de apache usando csync2 | ||
| Línea 100: | Línea 102: | ||
| / | / | ||
| / | / | ||
| - | }}} | + | ``` |
| Marca para sincronizar los archivos modificados y después los sincroniza notificando al syslog | Marca para sincronizar los archivos modificados y después los sincroniza notificando al syslog | ||
| - | Fuente: | + | Fuente |
| http:// | http:// | ||
| - | !'' | + | ** Problemas |
| - | Para debug de errores | + | Para debug de errores |
| - | {{{ csync2 -xvvv }}} | + | ``` csync2 -xvvv ``` |
| - | {{{ csync2 -TI }}} | + | ``` csync2 -TI ``` |
| - | Probar sin certificados: | + | Probar sin certificados: |
| - | {{{ | + | ``` |
| nossl w* w*; # no utiliza certificados ni encriptacion | nossl w* w*; # no utiliza certificados ni encriptacion | ||
| - | }}} | + | ``` |
| + | |||
| + | En caso de cambio de certificados: | ||
| + | ``` Peer did provide a wrong SSL X509 cetrificate. ``` | ||
| + | |||
| + | Borrar certificado de la base | ||
| + | ``` sqlite / | ||
| + | ``` sqlite> delete from x509_cert where peername = ' | ||
| - | En caso de cambio de certificados: | + | Error de identificacion |
| - | {{{ Peer did provide a wrong SSL X509 cetrificate. }}} | + | ``` ERROR from peer w12-test: Identification failed! ``` |
| - | Borrar certificado de la base | + | |
| - | {{{ sqlite / | + | |
| - | {{{ sqlite> delete | + | |
| - | Error de identificacion | + | Revisar que cada equipo se pueda conectar a los demás sin problemas |
| - | {{{ ERROR from peer w12-test: Identification failed! }}} | + | ``` csync2 |
| - | Revisar que cada equipo se pueda conectar a los demás sin problemas | + | Borrar base en los nodos y regenerar listado de archivos sincronizados |
| - | {{{ csync2 -vT }}} | + | ``` rm /var/lib/csync2/w11-test.db ``` |
| - | Borrar base en los nodos y regenerar listado de archivos | + | Script para borrar |
| - | {{{ rm / | + | |
| - | Script para borrar archivos de la base | + | ``` |
| - | {{{ | + | |
| echo ' | echo ' | ||
| - | for I in `cat /tmp/1`; do echo " | + | for I in `cat /tmp/1`; do echo " |
| - | }}} | + | ``` |
linux/clusters/csync2.1544112164.txt.gz · Última modificación: 2018/12/06 16:02 por grillo