Sincronizar datos entre Linux y Windows con Cygwing + Rsync + SSH.

Continuamos con los backup. Hoy vamos a sincronizar la información contenida entre los distintos datacenters en Francia y nuestro servidor local Windows, con la finalidad de tener toda la información también localmente, por lo que pudiera pasar, y con la idea de poder sacar en adelenta backups en DVD, cintas o Blu-Ray. Hasta hora Rsync se está portando de maravilla y quiero seguir haciendo uso de él incluso en este paso, donde el servidor de destino funciona con Windows.

Este es solo un caso en el que nos puede venir bien, pero existen mucho más, por ejemplo se me ocurren estos:

  • Tener un backup de vuestros datos en la misma máquina
  • Tener un backup en un ordenador distinto dentro de la misma red
  • En un ordenador alojado en otra ubicación
  • Entre dos equipos Windows o como en este caso una combinación Linux-Windows.

En fin, multitud de situaciones. Recordad que Rsync no se limita solo a copiar archivos, ni siquiera aquellos que son nuevos o se han modificado, sino que Rsync es capaz hasta de copiar solo la parte del archivo que ha cambiado, por ejemplo, si tenemos un archivo de 1Gb Rsync copiará este en el primer backup, pero en el siguiente si dicho archivo ha pasado a contener 1.1Gb Rsync solo copiará los 100Mb que le falta, con el considerable ahorro de CPU y ancho de banda que supone, y todo ello bajo una conexión SSH.
 
Existen versiones parecidas a Rsync para Windows pero todo el mundo coincide en que no son tan potentes como la original, y no voy a ser yo el que pierda el tiempo probándolo para llegar a la misma conclusión, así que utilizaremos Cygwin, el emulador de Linux para Windows, por resumirlo en una frase, y así podremos seguir con Rsync.

Cygwin es una aplicación gratuita en la que puedes ejecutar muchísimas aplicaciones de Linux, entre ellas todas las que vamos a necesitar para hacer funcionar Rsync del mismo modo en que si tuvíeramos un entorno Linux. De esta manera nos ahorramos tener que cambiar de S.O. o de habilitar un nuevo PC para esta tarea.

Antes de nada aseguraros de hacer un NAT bien hecho del puerto 22 para SSH y del 873 para Rsync en vuestro router, de esta forma el equipo con Linux podrá encontrar al equipo Windows, siempre y cuando los dos equipos se encuentren en ubicaciones distintas.

Empezamos por instalar Cygwin:

  1. Descarga Cygwin de http://www.cigwin.com/ e instálalo en Windows
  2. Cuando el asistente de instalación de Cygwin nos pregunte entre "Just Me" y "All Users" elegimos este último
  3. Cuando nos pregunte donde instalarlo le indicamos el siguiente path: c:\cygwin
  4. Seleccionamos una ubicación desde la que descargar los paquetes (cualquiera de las que hay valen)
  5. Pulsamos el botón "View" para ver todos los paquetes
  6. Seleccionamos los paquetes que necesitaremos, pulsando para ello sobre la palabra "skip" de los siguientes paquetes: openssh, openssl, tcp_wrappers, zlib, rsync, cygrunsrv
  7. Pulsamos "Next" y empezará la instalación.
  8. Una vez instalado ejecutamos Cygwin e introducimos los siguientes comandos

# ssh-host-config -y

Cuando el script nos pida que indiquemos la "environment variable CYGWIN=" le escribimos la siguiente: ntsec tty

Iniciamos el servicio por medio del siguiente comando:

# net start sshd

Ahora ya podemos establecer conexiones SSH entre los equipos Linux y Windows para el sincronizado de datos. Para ello probamos el siguiente ejemplo desde la consola de Linux:

# rsync -avz archivo_cualquiera.txt -e ssh administrador@ip_windows:/

Donde archivo_cualquiera.txt lo sustituimos por un archivo contenido en el directorio en el que nos encontramos y que podemos usar a modo de prueba, y donde ip_windows los sustituimos por la dirección IP del equipo en el que corre Windows.

Si todo es correcto nos dirá algo así:

RSA key fingerprint is b1:a0:ff:7a:1f:50:17:10:21:a9:26:ad:55:c3:90:ee.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ´ip_windows´ (RSA) to the list of known hosts.
Administrador@ip_windows´s password:

Introducimos el password de administrador de Windows y el archivo se enviará, ...Rakastasplán!

A partir de ahora solo queda crear un script que sincronice con Rsync los datos que querais tener por duplicado en el servidor Windows e incluir este en el cron.

Por último, para que entre Linux y Windows no se pidan contraseñas de acceso y podamos automatizar la tarea podeis seguir los pasos que comenté en este otro post.



21-03-2008 | Linux


Intercambio de llaves públicas para sincronizaciones con Rsync

He terminado unos scripts para que mediante rsync pueda mantener una copia actualizada de un servidor "A" en otro "B". La idea es ejecutar estos scripts con cierta frecuencia por medio del cron para que en todo momento tengamos por duplicada la información correspondiente a todas y cada una de las webs.

Al ejecutar los scripts manualmente el servidor B pide introducir la clave de acceso, y una vez validada empieza la sincronización de archivos, y así cada vez que se lo pidamos. Pero si la idea es automatizar esta tarea necesitamos poder evitar introducir siempre la contraseña manualmente. Y eso, que al final ha resultado tan sencillo ha terminado siendo lo que más tiempo me ha llevado, así que para futuras ocasiones y por si a álguien le puede interesar explicaré los pasos a continuación:

Resumiendo, esto se soluciona creando una llave pública en el servidor fuente "A", y enviándosela al servidor destino "B", de forma que cuando solicitemos una sincronización estos se reconozcan y establezcan la conexión casi sin saludarse.

Para ello en el equipo A ejecutamos lo siguiente:

# cd ~/.ssh
# ssh–keygen –t rsa

Pedirá una contraseña pero la podemos dejar en blanco pulsando Enter tres veces.

Con esto ya tenemos una clave pública de nuestro servidor A.

Ahora nos falta hacérsela llegar al servidor B y que la guarde para cuando le vayamos a visitar.

# ssh-copy-id –i id_rsa.pub root@direcciónipdelservidorB

Para establecer la conexión y enviarle la llave púbica el servidor B nos pedirá la contraseña de root. Se la damos y... el servidor B ya ha guardado nuestra llave pública!

Ahora podemos comprobar que todo ha salido correctamente intentando una conexión con el servidor B desde el servidor A haciendo lo siguiente:

# ssh root@direccionipdelservidorB

Si todo ha salido bien no nos pedirá ninguna contraseña de acceso, ya que nos ha reconocido gracias a la llave púbica, y por lo tanto desde ahora un script también podrá establecer conexiones automaticamente con el servidor B.

¿Fácil no? Pues no había manera de encontrar cómo hacerlo.

19-03-2008 | Linux


Chiho! no te lo vas a creer!

Hace poco más de un mes que estoy viviendo solo y ayer sucedió lo que creía que nunca llegaría a pasar: ¡cansarme de espaguetis, kebabs y perritos!. Pero salir a cenar y sentarse solo en según que restaurantes da un poco de vergüenza, y a las horas que termino de trabajar tampoco es plan para llamar a los amigos. Así que me decidí y fuí al Caprabo, compré un paquete de arroz, un sobre de unos polvos extraños que según dicen se convierten en arroz negro con el contacto con agua, y me vine a casa. El proceso es bastante fácil y solo dura un cuarto de hora en hacerse. ¡Chiho estará orgullosa de mi hazaña!

Cuenta la leyenda que hirviendo durante 15min un vaso de arroz, cinco de agua, un poco de aceite y unos polvos mágicos  la mezca se convierte en un arroz negro. ¿Será verdad?

¡Increible, esto lo tendrían que enseñar en los colegios de todo el mundo!



15-03-2008 | Comida


La odisea de programar para iPhone usando WINDOWS

Febrero tenía que ser el mes en que Apple sacase el SDK del iPhone y todos pudieramos programar -mejor o peor- nuestras aplicaciones, al menos dentro del marco legal de del señor Jobs, ya que hasta el momento existían y existen herramientas para poder hacerlo por otras vías.

Nunca me planteé programar algo por desconocer el lenguaje y sobre todo por lo dificil pintaba el asunto (hacks, compilaciones, software rarísimo, comandos en Linux...), así que me autojustificaba con un “hasta que no salga el SDK...” y seguía consumiendo software de los repositorios, ese cajón de programas que no para de crecer, obra de hackers y magia negra, que es lo que en mi opinión había que hacer para poder crear algo ejecutable en un iPhone.

El domingo pasado en casa del Mazius-Ma vi la luz cuando me enteré de que Apple había lanzado ya su SDK, cogí el coche y fui corriendo hasta casa, encendí el ordenador, entré en apple.com y... “SOLO PARA USUARIOS DE MAC”. Eh? Cómo que solo? y los que usamos ratones de dos botones?

No había corrido desde Cala Blava hasta casa para conformarme con esa respuesta, y ya que estaba decidí informarme un poco más sobre el lado oscuro de la escena del iPhone. Tras leer en distintos sitios pude comprobar como lo que para mi era magia negra era en realidad software con nombre, apellidos y además gratuito.

Durante los siguientes días he estado descargando, buscando, leyendo, buscando, probando y buscando hasta que finalmente he llegado a completar la primera fase de cualquier experiencia con un lenguaje nuevo: ejecutar el “Hola Mundo”. Y eso es lo que voy a explicar, ya que no he visto ningún tutorial en castellano que lo haga ni en inglés que recoja todos los pasos.

1. Ponte cómodo

Antes de nada vamos a tener que bajar más de 1Gb en software así que ves pensando en qué ocuparás tu tiempo mientras tanto.

Descargamos entonces lo siguiente:

2. Instala PowerISO

  • Lo usaremos para extraer los archivos de la imagen que hemos descargado (Xcode 2.5 Developer Tools)

3. Instalar WinChain

  • Extrae PrebuiltToolchain
  • Ejecuta WinChain, pulsa Browse y selecciona la carpeta donde has descomprimido PrebuiltToolchain
  • Pulsa el primer botón: “Copy Toolchain Files into Place”
  • Pulsa el tercer botón para instalar Notepad++

4. Instalar Gygwin

  • Cuando pida que elijamos un sitio desde el que descargar introduciremos una nueva URL indicando la siguiente: http://www.iphonegameover.com/cygwin pulsamos “Add”, marcamos la URL que hemos introducido y “Next”.
  • La siguiente ventana nos pregunta qué paquetes queremos instalar. La selección por defecto es correcta, así que “Next”.

5. Abrir Xcode 2.5 Developer Tools

  • Por medio de PowerISO extraemos el siguiente archivo de la imagen Xcode 2.5 Developer Tools: \Packages\Packages\MacOSX10.4.Universal.pkg\ Contents\Archive.pax.gz
  • Guardamos el archivo en C:\cygwin\home\Administrator

6. Nos vamos a Inicio > Programas > Cygwin y ejecutamos “Cygwin Bash Shell”

  • Aparecerá una ventana de MSDOS. Cuando nos pregunte “Do you wish to connect to your device and download the required files? [y/n]:” pulsamos “y”
  • Indica la dirección IP de tu iPhone cuando nos pregunte “Please enter the remote IP address of your device”. Si no sabes como obtener la IP del iPhone entra en “Settings > Wi-Fi” y clica en la flech azul que figura a la derecha de la red inalámbrica.
  • Cuando nos pregunte “Are you sure you want to continue connecting (yes/no)?” escribe “yes”
  • SSH creará un archivo con el root file system una vez introduzcas el password de tu iPhone (ojo, el password la conexión SSH no es el PIN!. Prueba con “alpine”)
  • Espera cerca de 5 minutos mientras se crea el archivo.
  • Si has llegado hasta aquí verás el siguiente mensaje “Found Archive.pax.gz in currect directory. Extrating /home/David/Archive.pax.gz...”
  • Y si todo ha salido bien el proceso terminará con el siguiente “Your toolchain installation is now complete!”. ¡Bien!

7. Abrimos el proyecto de ejemplo “HelloWorld” en Notepad++

  • De momento no vamos a modificar nada, o por lo menos no es el objetivo de este tutorial. Pero está bien abrirlo y ver esos códigos en C tan hermosos. Ponerlos a pantalla completa y haceros una foto junto a ellos, esto os ayudará más adelante para fardar delante de los amigos y despertar el deseo entre las feminas.

8. ¡Acción!

  • Abrimos Cygwin
  • Navegamos entre los directorios hasta llegar al proyecto (la carpeta) de “HelloWorld” que tenemos
  • Asignamos privilegios a la carpeta con “# chmod 755 –R HelloWorld” seguido del nombre de la carpeta.
  • Compilamos el ejemplo por medio de la instrucción “# make” · Si todo ha ido bien ya tenemos los archivos necesarios para introducirlos en el iPhone

9. Un último paso

  • Abrimos Photoshop y guardamos un archivo png con el nombre icon.png de 57x57 pixels con el dibujo del icono que queremos que tome la aplicación una vez lo tengamos en el iPhone.

10. Subimos el resultado al iPhone

  • Conectamos por FTP al iPhone y subimos la carpeta del proyecto “HelloWorld” en /Applications/ junto con todos los demás programas. La carpeta la deberemos renombrar para a “HelloWorld.app” para que la reconozca.
  • Por último asignamos privilegios de nuevo: “# chmod 755 –R HelloWorld.app

11. Ejecuta tu HelloWorld!

  • Reinicia el iPhone y verás tu icono junto con los demás en el spring board. ¡Viva la comunidad!


15-03-2008 | iPhone


Crear cuentas FTP desde consola

Plesk crea cuentas de FTP, sí, pero con sus limitaciones. Dos de las cuales son imprescindibles para mi: 1. Poder asignar una cuenta de FTP a la carpeta que yo decida y no la que Plesk me mande, y 2. Poder asignar varios usuarios de FTP a una misma carpeta. Y como suele suceder las limitaciones son justamente la parte imprescindible de aquello que necesitas.

El procedimiento por lo tanto para crear una cuenta FTP sin pasar por Plesk es usando la consola de la siguiente manera:

Loguearse con root y crear un usuario indicando la carpeta que usaremos

# /usr/sbin/useradd -d $HTTPD_VHOSTS_D/your_domain/some/location -s /bin/false USER_NAME

donde $HTTPD_VHOSTS_D deberá reemplezarse por el path real donde Plesk aloja los hosts virtuales y USER_NAME el nombre de usuario que queramos definir para la conexión FTP

Lo siguiente es asignar una contraseña al usuario creado por medio del comando ‘passwd'

# passwd USER_NAME

Añadimos al usuario en el grupo ‘psacln', que es que utiliza Plesk

# /usr/sbin/usermod -G psacln USER_NAME

Le damos privilegios para que pueda leer y escribir en el directorio una vez se loguee

# chmod 755 $HTTPD_VHOSTS_D/your_domain/some/location
# chown USER_NAME:psacln $HTTPD_VHOSTS_D/your_domain/some/location
# chmod 751 $HTTPD_VHOSTS_D/your_domain/httpdocs

Y listo, ya podemos usar un cliente de FTP para conectarnos. Con este proceso podemos crear tantos usuarios como queramos, donde consideremos y con los permisos que nos interese.

EDITADO: En Ubuntu hará falta editar el archivo /etc/vsftpd.user_list/ y añadir en la lista de usuarios que pueden conectar al FTP el nombre del que hemos creado.

11-03-2008 | Linux


Chooiieando por la ciudad

Estos días estoy pensando qué podría hacer para llamar la atención de la gente y traerlas a Chooii. Me pongo en el lugar de un usuario cualquiera y me imagino entrando en Chooii, viendo que hay poca información, casi nada de lo que me podría llegar a interesar, y nada que haya en el lugar donde podría vivir. Resultado: Cierro la ventana y le pregunto a mi primo si sabe donde podría conseguir aquello que ando buscando.

Que haya poca información tiene dificil solución si no se crea comunidad alrededor de Chooii. Pero que por lo menos lo que hay pueda llegar a ser de interés para álguien sí parece que tenga solución, partiendo claro está de la idea de que por lo general la dieta a base de pizza, hamburguesas y espagueti pueda considerarse de interés común. Si esto fuera así y la persona que entrara a Chooii viviera en Palma, o alrededores como muy lejos, Chooii podría llegar a ayudar a esta persona.

Entonces, y recordando una idea que me dio Nakasama ayer, se me ha ocurrido una forma divertida (="no efectiva") de atraer público Mallorquín, concretamente de Palma. Atentos: Nada más y nada menos que ¡pegatinas de Chooii! cerca de los puntos donde a día de hoy la Web tiene algo interesante que enseñar a los usuarios.

Ahora se entiende lo de "no efectiva", pero siendo domingo y teniendo la vena artística en marcha me ha parecido una forma muy freak de pasar el rato. Así que me he puesto a pensar sobre como deberían ser las pegatinas y el mensaje, y chafardeando por internet he llegado hasta unas ilustraciones de una artista americana que dibuja caras de bichos raros a base de unos pocos trazos. Ya pondré la URL cuando me encuentre delante del ordenador desde el que navegaba esta mañana.

Me ha gustado la idea de usar un dibujo tan simple por varias razones: al mostrar solo la cara se da mucha importancia a la expresión facial, algo que está muy relacionado con la satisfacción con un producto. Viendo la expresión facial de una persona frente a un producto ya se puede intuir si está satisfecho con él, si le ha sorprendido, si está decepcionado, etc. Otra razón de peso es que Chooii no pretende dar a conocer productos, sino la satisfacción que han despertado esos productos en las personas. Por estas razones he pensado que usar expresiones faciales de distintas personas es lo que más se asemeja a la filosofía de Chooii.

Y como el valor de Chooii no es otro que la diversidad de opiniones, lo mejor es usar distintas personas para representar cada una. Pero hay más, ¿dibujaré hombres o mujeres?, ¿niños o niñas?, ¡qué más da!, lo que importa es la expresión, así que dibujaré cualquier forma que me valga para recrear un estado de ánimo.

Mm... una voz en mi cabeza que me recuerda que ya tengo 30 años y que debería ocupar mi tiempo en cosas más serias. ¡Un momento! publico las fotos del día de hoy y me pongo a ver el futbol como haría una persona normal de mi edad.

Primeras 8 pegatinas

Espero no ir a la carcel por esto...



12-01-2008 | Chooii


Chooii cumple un mes

Ya ha pasado un mes desde que en Meneame, Genbeta y Loogic se habló de Chooii. Gracias a estos sitios Chooii recibió una media de 150 visitas diarias durante una semana, hasta que poco a poco ha ido decreciendo a una veintena de visitas. Si tuviera que rendir cuentas a alguien seguramente me costaría coger el sueño, pero como no es el caso puedo seguir jugando y experimentando con este sitio como he venido haciéndolo durante este mes.

Incluso con las pocas funciones y el escaso y casi monotemático material que tiene Chooii actualmente, he de decir que la crítica no ha sido nada dura, y que entre todos me han aportado una interesante lista de mejoras a realizar. Por lo que he visto la gente se porta bastante bien con proyectos recién salidos en Internet.

En general la gente ha opinado que la idea de Chooii es interesante, pero que el éxito del sitio solo se dará cuando se cree una comunidad importante de usuarios que aporten a Chooii lo que otros usuarios estén buscando. Así es, estoy convencido de que Chooii es una buena idea, pero tiene el inconveniente de que necesita un empujón muy grande por parte de los usuarios para convertirse en una herramienta útil.

El otro inconveniente de Chooii es que no se trata de un sitio al que puedas acudir a pasar el rato como lo haces en Youtube. Como yo lo veo Chooii solo puede llegar a ser una herramienta muy útil para los casos en que necesites el consejo de la comunidad para tomar una determinada acción. Pero volvemos a lo mismo, si hoy por hoy Chooii no me facilita más que información relativa a hamburguesas y perritos en Mallorca, ¿cómo va a ser suficientemente útil como para que la gente decida aportar su granito de arena?

Todas estas cosas no las había pensado antes de meterme en esto, como suele pasarme, pero no quiere decir que de haberlo hecho Chooii hoy no existiría. Sigo creyendo en Chooii y tengo la esperanza de que poco a poco se vaya sumando más gente.

Si tengo la esperanza de que la bgMSX se convierta en el sitio de la música para MSX por excelencia, ¿cómo no la voy a tener en algo que podría llegar a interesar a muchísima más gente?

12-01-2008 | Chooii


Chooii

Voy a escribir sobre lo contento que estoy de haber visto a Chooii en genbeta y en meneame, pero antes tendré que explicar de que va todo esto.

En realidad el orden debería ser al revés, primero presentar a Chooii y luego comentar la publicación en estos dos sitios, pero a pesar de mi intento por controlar los acontecimientos se han sucedido así, aunque al final estoy contento con el resultado de la maniobra de ataque de Alex.

Primero voy a explicar que es Chooii por medio de la primera mención que hice en el blog de Alex:

En mi intento por hacer algo útil en la vida me he pasado las últimas semanas embarcado en la creación de una Web de recomendaciones y/o sugerencias a lo 2.0

La idea surgió un día en el que Chiho me comentaba lo difícil que se le presentaba la compra de unos nuevos zapatos teniendo en cuenta el poco tiempo del que iba a disponer para ir de tiendas. Como suele ser habitual en estos casos no presté más atención del debido, pero una vez en la cama me puse a pensar en lo mucho que molaría disponer de un sitio al que poder acudir en busca de información sobre futuros artículos o servicios que tuvieramos pensado adquirir, y una vez tomada la decisión acudir al destino en concreto y soltar los lagartos.

A los pocos minutos yo tambien pensé en lo mismo que estareis pensando: Internet. Ya existen millones de sitios Web donde consultar las características y la disponibilidad de infinidad de productos, y encima si quieres hasta te lo mandan a casa, peeero la mayoría de estos contenidos tienen una razón en común por la que se han publicado en Internet: Su venta. Lo que me hace sospechar que no siempre la información que se da sobre ellos va a ser suficientemente objetiva, transparente o incluso real, por lo que no confío totalmente en muchas de las cosas que veo en la red: ofertas, promociones, regalos, oportunidades, etc, y hace que cada vez más me decante por la compra de productos de los que me consta que otros compañeros ya han probado y están satisfechos con ellos.

Salvando las distancias podría comparar este escenario con el que todos prensenciamos en la actualidad: Medios de comunicación tradicionales VS Blogs, Enciclopedias VS Wikipedia, o muchos otros ejemplos de la vida real que siguen el patrón de "Información privada con ánimo de lucro" frente a "Información en estado puro".

Por suerte existen muchos sitios y foros donde la gente puede aportar su opinión y experiencia para el beneficio de todos, pero lo que me ha impulsado a hacer esta Web ha sido la falta de sitios donde poder disponer de información ordenada y geolocalizada de cada producto, algo que me parece realmente útil por ejemplo a la hora de realizar un viaje a un destino que no conoces, y quieres de buenas a primeras disponer de información acerca de los lugares recomendados donde poder adquirir o consumir tal o cual producto, o sin necesidad de irnos lejos probar cerca de donde estamos cosas nuevas con la tranquilidad de contar con bastantes probabilidades de salir victoriosos de la operación.

El "pero" es que una Web de estas características difícilmente resulte de interés al público general hasta que su base de datos cuente con un buen número de productos, y conseguir esto será la clave para su éxito.

Como buen proyecto 2.0 que se precie se encuentra anclado en su versión Beta, y a pesar de no haber terminado de implementar todas las funcionalidades previstas para su lanzamiento hoy ya es operativo, y quería enseñarlo a un primer grupo de usuarios para recibir las primeras opiniones mientras el sitio va terminado de tomar forma, así que me he decidido a publicar este post.


Estais invitados a una coca-cola en casa del Antonio por pequeña que sea vuestra ayuda!

Hasta aquí el post publicado en el blog de Alex con la finalidad de recibir unos pocos consejos por parte de usuarios familiarizados con servicios web, 2.0 y redes sociales.

Mi cuenta de correo aun no había recibido nada cuando a las 21h me llama Alex insistiendo en que entre en Genbeta. Le había faltado tiempo para hacerse eco ahí, y Genbeta mostraba ya una entrada presentando a Chooii entre noticias de Flickr, Thinstall y Project2Manage.

Lo mejor de la noticia en Genbeta es lo bien que explican el concepto de Chooii. Hasta yo he redescubierto las posibilidades de esta herramienta. Tan solo el título ya dice más que toda mi explicación: "Chooii, conoce los bienes y servicios de tu entorno y compártelo con los visitantes". Por si fuera poco Genbeta responde con el feedback que estaba buscando:

· Los puntos geográficos añadido al mapa no llevan a las entradas a las que pertenecen.
· El formulario para añadir Chooiis necesita ser traducido al español, además de simplificarse.
· Las búsquedas no funcionan. Un filtro por países y categorías sería una buena opción.
· Además, debería de haber una opción que permita reordenación de resultado según valoraciones o fechas.
· Marcar como favoritos algunas de las entradas también debería de estar contemplado.
· Falta la opción de versión para su impresión para cada uno de los Choolis.

...ya tengo trabajo para los próximos días.

Y cuando aun no me había repuesto del susto me dice que está enviándolo a menemane. En realidad esto último me daba bastante miedo, porque no se hasta que punto el sistema está en condiciones de recibir un tsunami de visitas, pero finalmente han pasado varias horas y todo a quedado en un susto, ni rastro de tsumanis.

Así que ya puestos he enviado yo mismo una nota a Javier Martín de Loogic, a quien pude conocer el pasado mes de octubre en iMad. Ya veremos si hace alguna mención de Chooii durante los próximos dias.

Lo malo del asunto es que la emoción no me ha dejado trabajar en las mejoras de Chooii previstas para hoy, y mi dedo ha estado ocupado clicando el botón de refrescar del navegador para no perder detalle de la respuesta que se generaba en estos sitios.


09-12-2007 | Chooii


¿Y cuando se cae un servidor?

El pasado domingo uno de los servidores de Dieyes donde alojamos sitios Web dejó de funcionar. La primera vez que presencias algo así le echas la culpa al navegador, y tras reintentarlo de nuevo, a tu conexión de Internet, que rápidamente descartas cuando ves que otros sitios Web (google.es) sí responden, momento en el que uno ya empieza a mirarse el ombligo y a pensar en lo peor. Empiezas a probar todos y cada uno de los dominios que recuerdas cuelgan del mismo servidor, y uno a uno vas comprobando cómo no responden. Mientras tanto las neuronas empiezan a especular, a buscar responsables, culpables. A los pocos minutos recapacitas, -Un momento, soy yo el responsable –¡!

Entonces te incorporas en la silla y te llevas las manos a la cabeza –¡Es domingo!-. Las voces de los clientes quejándose dentro de tu cabeza no te dejan pensar, y tratas de ver la situación en perspectiva, -Tengo un día como máximo para solucionarlo todo-.

Vale, ya hemos establecido un periodo de actuación, un intervalo de tiempo que psicologicamente te ayuda aislarte de las consecuencias y te permite concentrarte exclusivamente en el problema en cuestión.

La primera pregunta que te viene a la cabeza: -¿se habrá perdido información?-. Una simple conexión mediante consola al servidor puede ayudar a saberlo, pero los sudores empiezan a hacer presencia cuando te das cuenta que ni así responde. Ya poco puede hacerse, tan solo usar el comodín de la llamada: el departamento de soporte técnico responde diciendo que la configuración RAID está dañada y que es irreparable, pero que la partición de datos sigue intacta.

Una vez levantado el servidor en recovery puedes acceder por SSH y efectivamente, comprobar que todos los datos siguen ahí. Configuras un nuevo servidor, instalas el SO y empiezas la migración.

Plesk no responde, por lo que una migración con el Migration Manager es imposible realizarla, así que hay que tirar de RSYNC entre ambos servidores. En unos minutos toda la información empieza a transferirse al nuevo servidor.

Mientras tanto vas configurando ya los clientes, dominios, alias y sus bases de datos desde Plesk en el nuevo servidor. La idea es tan solo crear la estructura, pues los datos van a llegar de un momento a otro.

Finalizada la estructura y enviados todos los datos ya dispones de un servidor funcionando, pero no está operativo. Redirigir todos los dominios a la IP del nuevo servidor sería una tarea manual que junto con la correspondiente propagación te llevaría mucho tiempo, así que hay que olvidarlo.

Instalas de nuevo el SO en el servidor dañado, ahora ya con el RAID operativo. Una vez este ya está listo y tiene a Plesk funcionando puedes iniciar una migración con PMM. La espera es larga y no puedes hacer mucho mientras tanto, así que es un buen momento para ir recapitulando y analizando. ¿Qué o quién ha causado todo? ¿qué medida debes tomar para evitar una segunda vez?. La primera pregunta la buscarás en su momento pero ahora lo más importante es, creo, atacar la segunda.

Eliminar las averías de nuestras vidas es algo imposible y hay que saber convivir con ellas, y la mala suerte puede tocarnos a todos con mayor o menor probabilidad, así que la cuestión sería ¿cúanto tiempo necesitas para reponerte de una caida?. Como bien dicen en Rocky no es más fuerte quien menos veces cae, sino quien antes se levanta. Una caida no pone en compromiso un servicio tanto como el tiempo que se necesita en reestablecer este, así que ahí es dondo hay que ir a buscar una solución, que bien puede ser una réplica del servidor por medio de RSYNC o similar. Es decir, contratar nuevo hardware y configurar el sistema en sincronización con el servidor principal, de forma que dispongas en todo momento de un equipo 100% actualizado y listo para entrar en acción en el momento en que se le necesite.

Pare reducir aun más la probabilidad de averías en el servicio la réplica del servidor deberá estar en una ubicación distinta del actual, de forma que no se vean ambos afectados por encontrarse en una misma red, entorno o bajo un mismo nodo. Así, difícilmente se producirá un caso en que se sen dos averías en ubicaciones distintas y al mismo tiempo. Ante un nuevo posible caso como el sucedido hoy se podría reestablecer el servicio en el tiempo que tardan las DNS de los distintos dominios en propagarse, lo cual da espacio de sobra para trabajar en la reparación de la avería mientras los clientes siguen disfrutando del servicio. Indirectamente todos salimos beneficiados, pues a partir de ahora las copias de seguridad se realizarán desde la réplica, lo que no pondrá en compromiso el rendimiento del servidor principal.

Ya sabes, si estás en una situación similar esta es la medida que vamos a tomar, y espero pueda serte de ayuda. Y si eres de los que aun piensan que hoy en día con hacer copias de seguridad diarias y alojar tus servidores en datacenters vas sobrado, pues ten cuidado, el dia menos pensado un ataque, un fallo en las instalaciones o un problema de hardware por insignificante y poco probable que pueda parecer, pondrá en comprosimo tus Webs.

04-12-2007 | Dieyes


Firsto Posto

Hace ya mucho tiempo que vengo pensando en la posibilidad de hacerme un blog, pero me encuentro siempre con el mismo problema: ¿realmente tengo algo que contar o son solo ganas de escribir por escribir? Pues sí, y encima mal. Solo ganas de escribir, y alguna que otra idea posteable pero nada más. Con el paso del tiempo las ganas se han incrementado viendo lo divertido que les está resultando hacer lo mismo a otros (Alex, Konamiman), pero las ideas se han esfumado como por arte de magia. Además siempre estoy haciendo y deshaciendo proyectos que me consumen el poco tiempo que tengo, y un blog me da la sensación de que requiere una continuidad que no sé si podré mantener. Pero estos días y a raíz de mi último “proyecto” (no estoy seguro de si esta palabra le quedará en estos momentos algo grande) me he dado cuenta que sí hay un motivo. El motivo no es otro que el de hacer públicos todos los trabajos que voy haciendo con el motivo de recibir comentarios que puedan ayudarme a tomar mejores decisiones, algo para lo que no soy precisamente bueno, y que siempre hecho de menos. Como decía, últimamente leo bastantes blogs relacionados con las cosas que me interesan, con la idea de encontrar respuestas a mis preguntas, y aunque la gente participa mucho en estos blogs aportando muy buenos comentarios, no siempre encuentro la respuesta a mi pregunta en el momento adecuado. Por otra parte estas personas a las que sigo parecen disfrutar de todo tipo de contactos y experiencias gracias a sus blogs, lo que me causa una envidia increible. Así es que desde ahora publicaré en este blog todo lo relacionado con los “algos” que hago, y trataré de enriquecerme con los comentarios que hagais sobre ellos, si los llega a haber claro. Al mismo tiempo estoy seguro que me ayudará a poner orden a las ideas que rondan tanto en mi cabeza como por la mesa en la que trabajo. < blog >Blog!< /blog >

22-09-2011 | Blog




Suscribirse