Mostrando entradas con la etiqueta sistemas. Mostrar todas las entradas
Mostrando entradas con la etiqueta sistemas. Mostrar todas las entradas

lunes, marzo 28, 2011

La arquitectura de visualización de descargas de Mozilla

lunes, marzo 28, 2011 por Martín

Confieso que no he probado todavía Firefox 4. La verdad es que Chrome me ha dado todo lo que necesito. Pero hay algo que me ha gustado mucho de Firefox 4 sin haberlo probado, y es su página de visualización de descargas en tiempo real. Mozilla Glow. Realmente impresionante.

En un mapa del mundo se pueden ver en tiempo real todas las descargas que se están realizando de Firefox, y que no son pocas ya que en el momento de escribir estas líneas ya van 37 millones.

Desde el punto de vista técnico la utilidad de este tipo de visualizaciones es más bien nula, salvo el hecho de poder decirnos: "bien, hay gente descargando nuestro software". Desde el punto de vista de marketing el impacto es brutal. Hay que darse cuenta de que Firefox tampoco es un navegador tan popular (o era), y el efecto que tiene este gráfico en una persona de a pie es cercano al "Guau!!! ¿¿¿pero hay realmente tanta gente descargándose Firefox???". Esto no puede ser malo.

lunes, febrero 28, 2011

El centro de datos más verde del mundo

lunes, febrero 28, 2011 por Martín


El servidor de datos más verde del mundo está donde menos me lo podría esperar. Justo debajo de la catedral de Helsinki. Para ser más exactos, se encuentra a unos 30 metros bajo tierra dentro de un antiguo refugio de guerra.

Lo que las compañías finlandesas Academica y Helsingin Energia han hecho es realmente interesante. Lo primero es que no utilizan energía para refrigerar el centro de datos sino que se aprovechan diréctamente del agua del mar, que evidéntemente en Finlandia debe de estar lo suficientemente fría.

domingo, noviembre 28, 2010

SSD vs. memoria RAM en MySQL

domingo, noviembre 28, 2010 por Martín


Interesante reflexión en el blog de Percona sobre si tener más memoria RAM tiene ya sentido cuando los discos SSD están cada vez más baratos.

En sus pruebas crearon un conjunto de datos de 230Gb. y empezaron a darle caña al MySQL
variando el tamaño del buffer de datos de memoria. Aquí están los resultados:

lunes, noviembre 15, 2010

El servidor más seguro del mundo está en Los Alpes

lunes, noviembre 15, 2010 por Martín

O eso dice su dueño. Le llaman el Fort Knox Suizo y se encuentra emplazado en lo que antaño era un refugio nuclear en el los Alpes suizos.

El centro de datos está formado por dos bunkers independientes situados bajo tierra, en el corazón de la montaña, y unidos por un túnel subterráneo de 10 kilómetros de largo. La compañía que diseñó el refugio de datos ha aprovechado además los recursos de la montaña y la peculiar situación para refrigerar los servidores de manera natural. Así, todo el sistema de refrigerado se abastece de agua que proviene de un lago glaciar subterráneo.

El lugar para emplazar el refugio quizás no esté tan pensado, ya que como comentan en Wired, que publicó este mes un reportaje sobre tan peculiar lugar, en el valle cercano a la montaña se encuentra la mayor concentración de billonarios de todo el planeta, y aquí estoy especulando, quizás guarden más que datos en sus cajas acorazadas.

El refugio que tuvo un coste de construcción de alrededor de los 30 millones de euros, contiene lo último de lo último en cuanto a seguridad, reconocimiento facial, plásticos anti-bala, filtros de aire militares capaces de filtrar impurezas atómicas y químicas, hotel de emergencia y cámaras acorazadas cortesía de bancos suizos. Y por supuesto su funcionalidad más deseada es la que proviene de su uso original, puede sobrevivir a un ataque nuclear.





Si queréis conocer más sobre esta bestia de la seguridad os recomiendo ver el artículo de wired.

jueves, noviembre 11, 2010

MySQL y los pools de Threads

jueves, noviembre 11, 2010 por Martín

Estaba repasando algunas entradas en la red sobre MySQL y me he encontrado sobre este artículo que habla del problema que tiene MySQL con la gestión de Threads y en particular con la plataforma Java.

Básicamente el problema es que MySQL se ejecuta como un único proceso. Este proceso crea un Thread para cada una de las conexiones que recibe. En MySQL lo implementaron de este modo porque parece que era realmente rápido. Pero entonces se encontraron con esas plataformas que, como Java, están llenas de pools de conexiones.

Para los que no estéis familiarizados con este concepto, la idea de un pool de conexiones consiste en reservar de antemano las conexiones a recursos externos como son las bases de datos. El conectarse a un recurso externo suele ser una tarea costosa en cuanto a tiempo, y por lo tanto el mantener una estructura de memoria donde se guarden conexiones abiertas que se puedan reutilizar cada vez que nuestro programa accede a ese recurso, parece una buena idea. Cualquier servidor de aplicaciones Java que utilicéis funciona de este modo, Tomcat, Glassfish, WebSphere, WebLogic, el que sea. En otros lenguajes como .NET o Rails también es algo típico.

Y ese es básicamente el problema. La persona que administra el servidor de aplicaciones puede decidir el crear un pool grande: "Voy a reservar 500 conexiones porque vamos a tener muchos usuarios concurrentes". Lo que hará el servidor de aplicaciones es abrir 500 conexiones y mantenerlas abiertas de por vida, aunque no se utilicen. Como consecuencia en MySQL se abren 500 threads, aunque no se utilicen.

Lo ideal sería que MySQL tuviese también un pool de conexiones, pero por ahora va a ser que no. Parece que MySQL 6.0 sí lo va a tener aunque están resolviendo algunos problemillas.

Por cierto si utilizáis MySQL, el blog de Percona tiene dos artículos bastante interesantes:

1 - MySQL utilizado como base de datos NoSQL en memoria SSD
2 - Percona como alternativa a Oracle tras el lio de los precios con InnoDB

miércoles, noviembre 10, 2010

Fotos del Centro de datos de Hadoop

miércoles, noviembre 10, 2010 por Martín

En un artículo en InformationWeek de hace unos meses tienen algunas de las fotos del centro de datos y el equipo de Hadoop. Las imágenes son bastante impresionantes. Hace nada Yahoo lanzó S4, muy relacionado también con el tema de Hadoop.






lunes, noviembre 08, 2010

Un día en el centro de operaciones de Facebook

lunes, noviembre 08, 2010 por Martín


Hace unos meses, Tom Cook, Ingeniero de Sistemas de Facebook daba una charla en el evento Velocity 2010 de O'Reilly donde describía como es el día a día dentro del servicio de operaciones del gigante americano de las redes sociales.

La charla comienza con algunas estadísticas que le quitan el hipo a cualquiera:

- La gente pasa 16000 millones de minutos diarios en Facebook
- Se comparten 6000 millones de piezas de contenido al mes
- Se suben 3000 millones de fotos al mes
- Hay un millón de implementaciones de Facebook Connect

A todo ello contribuye que 50 de los 100 sitios más visitados del mundo integren Facebook de algún modo, ayudando a llegar a los 400 millones de usuarios de este 2010. Para soportar esta carga de usuarios, Facebook tiene dos centros de datos. Uno en la costa Este y otro en la costa Oeste de Estados Unidos y están construyendo uno nuevo en Oregon. Todos sus servidores utilizan Linux y su distribución es CentOS.

Nada más comenzar la charla uno se da cuenta de que Facebook es un lugar donde la opinión de los ingenieros tiene realmente mucho peso, para bien o para mal. Está claro que no es trata de un lugar habitual. Algo que me ha sorprendido por ejemplo es que la propagación de parches y cambios a producción se hace con BitTorrent, moviendo ese código a más de diez mil servidores. Otro uso interesante de BitTorrent.


Pero hay cosas todavía más sorprendentes. Facebook está hecho en PHP. Sin embargo parece que el rendimiento llegó un punto en el que no era aceptable. Lejos de cambiar de plataforma, ya que a sus ingenieros les gusta PHP, crearon una herramienta interna para traducir el PHP a C++, compilándolo después con g++. El resultado fue un 50% de aumento en el rendimiento que podríamos trasladarlo, aunque no sea estríctamente así, a un 50% menos de servidores. Sea como sea, el crear un traducor de PHP a C++ no parece que sea el tipo de decisión recomendable para todas las compañías que quieran más rendimiento.

Otro modo que tienen de aumentar el rendimiento es utilizar cachés (Memcached) y una enorme cantidad de memoria RAM: más de 300Tb de datos en vivo en diferentes cachés. Utilizan MySQL en la base de datos. Sobre MySQL en Facebook ya puse unas notas hace un año en el post "Notas sobre la arquitectura de Facebook".

La principal conclusión que he extraido de esta charla es que Facebook es, sin ninguna duda, una de esas compañías dirigidas principalmente por el equipo de operaciones. Está claro el peso de este departamento en el proceso de desarrollo y producción. En mi experiencia, trabajar en este tipo de empresas puede llegar a ser un auténtico infierno en los casos en los que el equipo de producción esté demasiado aislado del equipo de desarrollo, en los casos en que los procesos de trabajo estén demasiado cargados de burocracia o en los casos en que el departamento de operaciones tenga excesivo celo en cuanto a la implantación de cambios y nuevas funcionaliades.


Facebook nuevamente es diferente. Tom Cook comenta en su charla como los ingenieros de operaciones se mezclan con los ingenieros de desarrollo para trabajar conjuntamente en los parches y funcionalidades. Asimismo, los desarrolladores adquieren plena autonomía y responsabilidad sobre sus actos, de modo que deben participar en todas las fases de despliegue y sentarse con el equipo de sistemas a la hora de pasar cambios a producción.

Una de las consecuencias de esto es que en Facebook han eliminado la capa de QA. Esto en mi opinión es un error, pero no cabe duda de que Facebook es un sitio diferente. Me imagino que todo el desarrollo de productos y parches estará dirigido por procesos controlados, pero desde luego la impresión que se extrae de la charla es que los ingenieros tienen poco más que barra libre para introducir cambios a su antojo sin el más mínimo control de calidad. Claro, uno después se explica como en funcionalidades que no son 'core' como puedan ser las aplicaciones Facebook, un día las cosas funcionan y otro no :-)


Pero entonces, ¿cómo suplen esta falta de control de Calidad? Con un gran énfasis en la monitorizacíon y la instrumentación. Todo lo que sucede en los servidores de Facebook está completamente controlado. Para ello disponen de herramientas internas o usan software Open Source como Ganglia, Nagios o CFEngine. Pueden controlar en cualquier instante el estado de cualquier servidor, rack, cluster o centro de datos. Además de resaltar la importancia de la monitorización y la instrumentación se hace relevante también el automatizar la reacción ante caidas de cualquiera de estos componentes, ya sea eliminando el nodo, reiniciándolo, etc.

Una cosa queda clara en la charla. En Facebook no se toman las operaciones a broma. Aunque nuevamente hay cosas muy desconcertantes en cuanto al control de calidad. En la charla muestran herramientas de comunicación interna que se utilizan para que todo el mundo en la compañía conozca el estado de los sistemas en cualquier momento independientemente de tu puesto en la compañía. Es algo sin duda fantástico. Pero asimismo cuando sucede un problema lo que se entiende de la charla es que lo resaltan en su portal interno de noticias y esperan a que ningún ingeniero introduzca código, ya que éstos tienen la capacidad de introducir cambios en cualquier momento. Esto no hace más que reafirmar en mi interior que Facebook no es una empresa tradicional, y que por el contrario ofrece ese sentimiento de funcionamiento bastante anárquico en ciertos aspectos.

Por último, os dejo el video por si interesa verlo vosotros mismos.

domingo, noviembre 07, 2010

Gráfica del fraude de tarjetas de crédito este año en USA

domingo, noviembre 07, 2010 por Martín


En Bank Info Security han publicado una gráfica muy interesante sobre los fraudes más importantes que se han llevado a cabo durante lo que va de año dentro de los Estados Unidos.

Para nosotros, en Europa, no es demasiado relevante pero si pasáis el ratón por la gráfica podréis ver la descripción de todos estos casos y se puede apreciar que es algo que nos puede pasar a cualquier de nosotros en cualquier lugar. ¡Da miedo!
















martes, noviembre 02, 2010

Como exponer 100.000 passwords de tus clientes y quedarte tan ancho

martes, noviembre 02, 2010 por Martín


Ayer, Abe Voelker hacía públicos varios fallos de seguridad muy graves en las web Progress Software (los que compraron IONA en el 2008). Se trata de fallos muy básicos que exponena públicamente los datos personales, incluyendo las contraseñas, de más de 96.000 clientes. Casi nada.

No voy a entrar en detalle en como acceder a esos datos, ya que todo está explicado en el blog de Abe, y el que quiera puede probar. Pero si os paráis a leer en detalle el artículo, veréis que son realmente conceptos tan simples que uno se pregunta si ha habido algún tipo de revisión de código. Me imagino que los programadores serían inexpertos, más razón para revisar el código. Si ese era el caso es una gran falta de responsabilidad del responsable del proyecto. Si ha sido por desidia, la responsabilidad es doble, del autor y de su superior.


El primero de los ataques, porque vaya es que no sé ni si se pueden definir como ataques, es el acceder a una URL de mantenimiento de perfil, que no se encuentran protegidas. Si ahí pones el nombre del usuario de cualquier persona que haya solicitado alguna mejora en el software de Progress, verás todos sus datos.

La contraseña aparece con asteriscos, pero que no os engañe, es simplemente el campo HTML, si vamos al código fuente el password está en texto plano.

El segundo ataque ya no funcionaba a la hora de escribir esto. Quizás hayan borrado el CGI, o quizás sea simplemente un error tipográfico y se pueda todavía acceder a la información, lo cierto es que no lo he intentado. Pero era más de lo mismo salvo que se exponía toda la información en texto plano en formato XML. Alguno podrá decir, "pero es que hay que conocer los login de todos los usuarios". Nada demasiado complicado cuando tienes una People Community Search. Cualquiera podría hacer un bucle y conseguir las contraseñas de todo el mundo.

Otra curiosidad es que parece ser que las únicas contraseñas que estaban en texto plano eran las de sus usuarios y clientes. Las contraseñas de sus empleados estaban encriptadas, eso sí en SHA1 sin salt. Bueno, pero algo es algo si lo comparamos con la información de los clientes. Supongo que les costaba mucho el reutilizar el código.

El otro día casualmente comentaba con un cliente lo importante que es no utilizar las mismas contraseñas en los diferentes servicios. El me comentaba que siempre utilizaba la misma, y tampoco veía demasiado peligro en ello. Puede que no, a mi tampoco me importa demasiado que me hackeen mi cuenta de Facebook. Pero si ya entran en mi cuenta de Paypal, entonces sí que me puede hacer más pupa :-)

sábado, octubre 30, 2010

Sobre captchas, tickets y conciertos

sábado, octubre 30, 2010 por Martín


Han pasado casi cinco meses desde mi último post, y la verdad es que hoy me he pasado por el blog y me he sorprendido al ver 990 lectores por Feedburner. Evidentemente, la mayoría de estos lectores son como yo, no leen los feeds a los que están suscritos, pero vaya que me ha hecho pensar "pero que coño estoy haciendo que estoy abandonando este blog en el que tanto trabajo he puesto". Así que he hecho el propósito de poco a poco ir retomando la actividad. A ver cuanto dura :)

Y empiezo con un tema que hace tiempo que había visto y me había entusiasmado. Últimamente no sé que pasa pero me he vuelto un apasionado de todo lo relativo a los cibercrímenes. Así que quizás tenga nueva temática para el blog. Este tema lo recordé gracias a un gran y muy educativo artículo de José Manuel Alarcón llamado reCaptcha, mucho más de lo que ves a simple vista, y en el que explica muy detalladamente como funcionan los Captchas y por qué hay tanta gente deseando romperlos. Si sois de los que piensan que son simplemente dos palabrejas que hay que meter de vez en cuando para ver si somos robots o no, echarle un vistazo porque veréis que hay mucho más.

La verdad es que a mi lo que más me gusta es la parte oscura :-) Pero voy al tema. Creo que todavía estaba en Irlanda cuando leyendo el Metro había visto que habían detenido a una banda que se dedicaba a saltarse Captchas para comprar tickets de conciertos. Recuerdo que me sorprendió porque me pareció la caña. Pues bien, hace tan sólo unos días leía que ese caso será definitivamente juzgado en Marzo, ya que hasta ahora se encontraba en un laberinto legal, pero definitivamente una juez de Nueva Jersey ha decidido proceder al juicio donde se busca condenar a esta banda por fraude electrónico y diversos abusos contra una ley de Anti Hacking o algo así :)

Podéis ver la historia completa en Wired que a mi me ha parecido apasionante. Nada más y nada menos que 25 millones de dólares en beneficios ha hecho esta gente, en siete años de nada. Para ello contrataban bloques de IPs y varias redes de ordenadores remotos que lanzaban contra webs como Ticketmaster en los momentos en los que comenzaban las subastas más interesantes, haciéndose con grandes cantidades de tickets. Algunos datos del juicio son impresionantes. Por ejemplo en el 2006 consiguieron comprar 882 de los 1000 tickets disponibles para la Rose Bowl (título de futbol americano universitario) o en 2007 que compraron 1924 tickets para los playoffs de los Yankees.

Pero lo mejor fue cuando Ticketmaster se dio cuenta de que algo no iba bien y cambió el algoritmo a utilizar Re-Captcha. Entonces la banda decidió crear bots para descargarse todos los captchas, que están identificados por ids, y creó una enorme base de datos de cientos de miles de Captchas asociados con sus respectivas ids. Bueno, ya sabéis para que sirven estos trabajos que se anuncian por correo "Trabaja desde casa. Gran sueldo. No se requieren ningunos estudios!", o quizás simplemente contrataran personas al kilo para leer captchas. También parece que configuraron su red de bots para que cometieran fallos a posta para evitar ser cazados por los filtros anti-fraude de las casas de tickets.

Pero la red iba todavía más allá. Ellos ya no eran ni siquiera los que vendían los tickets. Ejercían de intermediario. Había una red completa de brokers de tickets, usease reventas, que les proporcionaban sus datos y su tarjeta de crédito a la red, y la banda lanzaba sus ordenadores garantizándoles la compra, entiendo que por su correspondiente márgen. La leche, vamos.

No sé si vosotros os podíais imaginar que los Captchas daban para tanto pero a mi todo esto me parece de película :-)

domingo, enero 03, 2010

¿Cuántos servidores puede administrar simultáneamente un administrador de sistemas?

domingo, enero 03, 2010 por Martín

Lo comentan en Data Center Knowledge y también en en Slashdot.

Entre los comentarios se sacan datos muy curiosos como que en Facebook asignan un administrador para cada millón de usuarios. Partiendo de que tienen más de 30000 servidores y 230 ingenieros, utilizando 30000 como el dato exacto saldrían 130 servidores por administrador.

En Microsoft todo está más automatizado y comentan que un sólo administrador trabaja dentro del ratio de 1000 a 2000 servidores.

viernes, diciembre 11, 2009

Instantáneas del almacén de Amazon en UK

viernes, diciembre 11, 2009 por Martín

Un poco fuera de contexto pero no puedo evitar poner esta foto:



Se trata del almacén de Amazon en Milton Keynes, al sureste de Inglaterra. Impresionante. Le dedican un artículo en el Daily Mail.

Update: Creo que el de Swansea no se queda corto:



Más instantáneas aquí.

miércoles, octubre 28, 2009

OWASP Podcasts y entrevista el manager de desarrollo seguro de Paypal

miércoles, octubre 28, 2009 por Martín


De OWASP ya he escrito en otras ocasiones. Es una asociación para la promoción de la seguridad en la red que no conocía, y con la que tuve contacto por primera vez en Irlanda, aunque tienen también su capítulo en España.

Una de las cosas que empezaron a finales del año pasado y que han desarrollado bastante este año es la publicación de un Podcast sobre seguridad bastante imprescindible para el que le interese estos temas. A mi personalmente muchos de los temas ahí ya se me quedan un poco grandes, sin embargo sí que me llamó un poco más la atención un podcast de hace unas semanas en el que hacían una entrevista a Andy Steingruebl (PayPal Secure Development Manager).

En el Podcast Andy comanta su experiencia en Paypal y realiza una serie de recomendaciones. He recogido unas cuantas notas del podcast que tenía pendientes de publicar y que pongo a continuación:

  • CSRF y Cross-site Scripting son los problemas más grandes en la actualidad. Cosas como SQL Injection todavía están muy presentes pero existe más educación sobre ellas y las soluciones son mucho más conocidas.
  • Una vez establecidos unos protocolos de acción y una buena metodología de trabajo los costes de hacer desarrollo de software seguro e inseguro no se diferencian tanto. Hay montones de librerías y utilidades disponibles en la red. El coste está más en conseguir la disciplina y la mentalidad en una organización para que se apliquen prácticas de desarrollo seguras.
  • Aplicar técnicas de desarrollo seguro en metodologías ágiles es más complicado ya que se centran siempre en pequeñas ventañas de funcionalidades. Es posible, pero es más complicado que con metodologías adhoc.

    (sinceramente, aquí no le vi sentido a esto. Estoy bastante en desacuerdo. Me imagino que el problema es más de adaptar una gran empresa como Paypal y todos sus planes que tienen que realizar para auditorías de seguridad a las metodologías ágiles que otra cosa.)
  • No reinventar la rueda. Reutilizar frameworks de seguridad.
  • Aunque los IDEs incluyen herramientas de análisis estático todavía hay mercado para esas herramientas. Hay muchas compañías pagando por herramientas específicas para el análisis estático de código.
  • Alguién sugería la necesidad de 150.000 profesionales del software. Andy se muestra en desacuerdo y opta más por la formación y aprendizaje como la solución. Educar a los desarrolladores e incluso incluir nociones de seguridad en la formación universitaria. Los desarrolladores no necesitan ser expertos en seguridad, pero sí que deberían tener conocimientos básicos sobre los ataques más comunes y sus soluciones, así como conocimientos de que herramientas y librerías utilizar para prevenir estos ataques.
  • PCI no es una mala certificación ya que al menos fuerza a las personas a tomar algunas medidas de seguridad. Aún así, eso debería salir directamente de las empresas y no ser medidas encaminadas únicamente a pasar la auditoría.


Volviendo al tema del agilismo, el podcast en sí está bien pero la parte de que las metodologías ágiles hacían más difícil el desarrollo seguro no tiene ni pies ni cabeza.

martes, agosto 11, 2009

Centros de datos

martes, agosto 11, 2009 por Martín

Me encanta. Siempre genial...



El original aquí.

viernes, julio 03, 2009

Cuenta gratis en Pingdom

viernes, julio 03, 2009 por Martín


Nota muy rápida por si alguien no está subscrito al blog de Pingdom. Ayer anunciaron que desde ahora pasan a ofrecer gratuitamente su herramienta de monitorización de sitios web. No es una trial, es una cuenta totalmente gratis, incluyendo 20 alertas SMS. Eso sí, está limitada a un único sitio web o servidor.

Podéis coger vuestra cuenta aquí. Servicios parecidos son ExternalTest del que Enrique Domínguez me cedió amablemente invitaciones para los lectores de este blog o webpagetest.

Edit: Muy rápido. Después de haberme dado de alta, aclaro lo de las limitaciones porque es algo engañoso. El límite es por un único chequeo, y no por servidor o página web. Es decir, para un mismo sitio web no podrás crear varias alertas sino tan sólo una. Le resta un poco la utilidad pero bueno... es gratis.

martes, junio 09, 2009

Sobre hackers, servidores virtuales y suicidios

martes, junio 09, 2009 por Martín

De rebote, estos últimos días en el equipo de Jobsket nos hemos visto en medio de una situación tan rocambolesca como trágica. Tiene que ver con el servidor que utilizamos para desarrollo en Jobsket, y menos mal que se ha quedado en eso.

Os cuento, cuando empezamos con Jobsket, estábamos utilizando un servidor virtual que yo tenía contratado en los Estados Unidos. El precio era un poco alto y el tiempo de acceso también así que decidimos movernos a un centro de datos en UK para estar aquí en Europa. Todo esto que os voy a contar afecta sólo a nuestro servidor de desarrollo ya que el servidor de producción lo tenemos en otro lugar.

Como queríamos algo baratillo y funcional, ya que simplemente utilizamos esta máquina como integración, para los tests y eso, nos decidimos por VAServ que venían precedidos de muy buena fama en sitios como WebHostingTalk. Vaya por delante que la gente de VAServ siempre ha respondido prontamente y con eficacia.

Bueno, pues hace dos días recibimos un correo que comenzaba así:

"As many of you are aware, we were hacked today around 7pm GMT and portion of our service has been cut off (mostly US and portion of UK servers)."


Habían sido hackeados. Después de cambiar la contraseña, y de sentirme aliviado porque la tarjeta de crédito que había usado ya no está activa, pues me puse a investigar un poco sobre lo que había pasado. Aparentemente los hackers no se limitaron a robar datos, sino que han destruido buena parte de los datos que había en los diferentes servidores, con la gravedad que esto conlleva ya que este proveedor barato era enormemente popular con miles de clientes. Buena fé de esto da el hilo principal en WebHostingTalk sobre el tema que ahora mismo alcanza ya las 115 páginas.

En fin, la gente de VAServ lleva trabajando día y noche para solucionar el problema. Nosotros no teníamos nada demasiado importante ahí, salvo el sistema de integración continua que nos daría bastante trabajo de recuperar la configuración de las diferentes build, pero por suerte no hemos sido afectados por el ataque. Sí que lo han sido otros muchos a tenor de lo comentado en el foro, que tenían negocios más importantes.

Pero ahora viene lo grave. El ataque se debió al sistema de gestión que utiliza esta gente, HyperVM, un producto de la compañía LxLabs, una firma india fundada por K T Ligesh. Ayer, TheRegister reportaba el ataque que como podéis ver no nos ha afectado sólo a nosotros, sino que ha podido haber más de 100.000 sitios web afectados por el problema.

Pues bien, hace nada y según parece debido a la falta de interés de LxLabs se hizo pública la lista de vulnerabilidades de su producto, que incluye 24 bugs bastante graves. Como reportan en HostingFu el producto no era una maravilla, pero parece que lo peor ha sido la falta de interés.

Y ahora viene el final triste de la historia. El dueño de LxLabs, Ligesh, fue encontrado hoy ahorcado y se sospecha de suicidio. En el Times de India hablan de la pérdida de un contrato importante. Su madre y su hermana se habían suicidado hace cinco años, algo que también había afectado a Ligesh. Y parece que esto pudo ser la gota que colmó el vaso.

Una historia muy triste en la que nos hemos visto por en medio muy de refilón. Descanse en paz.

lunes, junio 01, 2009

Facebook ya prueba su sistema de micropagos virtuales

lunes, junio 01, 2009 por Martín


Esto va a ser enorme. Leo en Finextra que Facebook ha empezado ya a probar su sistema de micropagos virtuales. Es decir, que a partir de ahora podrás comprarte un queso de Arzúa virtual por tus 10 céntimos para regalárselo a algún amigo. O crear un juego para ver quién bebe más cubatas y cobrar 20 céntimos por instalarlo.

No hace falta ser un genio para ver la cantidad de dinero que se va a generar de esto. Y cuanto más chorra sea la aplicación mejor. En fin, parece ser que esto va a funcionar comprando créditos con tarjeta de crédito. Cada crédito valdría 10 céntimos y se podrían utilizar para pagar en Facebook. Facebook se lleva un porcentaje de cada transacción. Con 200 millones de usuarios y 54 mil aplicaciones, yo creo que hasta con sólo coger 0.1 céntimos de cada 10 la cantidad de dinero que harían sería enorme.

Por otra parte, comentan que esto puede ser bastante beneficioso para los comerciantes, ya que al comprar por créditos se evitan las comisiones de las tarjetas de crédito (estas ya han aplicado la comisión antes). Y claro, al igual que ha pasado con Facebook Connect, es muy probable que muchos sitios web externos comiencen a aceptar pagos por Facebook.

Habrá que estar muy atentos a todo esto, porque el que quiera dar un pelotazo tiene aquí una buena oportunidad. Sólo hay que pensar en algo bastante chorra :)

domingo, mayo 17, 2009

Más sobre Facebook. Esta vez, Hadoop y datawarehousing.

domingo, mayo 17, 2009 por Martín

Hoy, repasando los feeds pendientes de leer, me he encontrado con este artículo sobre Facebook y Hadoop.

El artículo está muy bien hecho y todo su contenido vale la pena, así que recomiendo su lectura. Básicamente comenta como en el 2007 Facebook decidió migrar un datawarehouse (de un vendedor que no menciona) de 15 terabytes a Hadoop. Las razones eran varias: precio de las licencias, menor coste de hardware, más rendimiento al no tener necesidad de transacciones, o la capacidad del equipo de Facebook para contribuir al Open Source.

Para el sistema de datawarehouse utilizaron Hive. Es interesante mencionar que la estabilidad del sistema no es perfecta, pero que parece que a los usuarios no les importan que se caigan nodos o que las consultas puedan tardar hasta 1 hora en devolver datos siempre y cuando no tengan que enviarlas de nuevo.

Por cierto que en otra nota en el mismo blog hablan del uso de compresión gzip que hace Facebook. Me apunto este blog de DBMS2. Parece un gran recurso.

Por cierto que por si os interesa, os dejo enlaces a estos dos posts que ya había escrito anteriormente sobre la arquitectura de Facebook y el uso que Facebook hace de Hadoop:

Notas sobre la arquitectura de Facebook.
Hadoop@Facebook.

miércoles, abril 15, 2009

Los retos de la nube para aplicaciones tradicionales

miércoles, abril 15, 2009 por Martín

Muy interesante este hilo en el grupo de Cloud Computing de Google Groups, donde se exponen opiniones sobre cuales son los principales retos a la hora de migrar una aplicación tradicional a un entorno de Cloud Computing como pueda ser Amazon EC2. En el hilo se exponen algunas notas importantes:
  • Falta de software preparado para la "nube". ¿Dónde están nuestros cloud-enabled Tomcats, WebSpheres, WebLogics o Jbosses, por decir algo? O por poner un ejemplo más reciente, Google lanza el soporte Java en Google App Engine pero hay que pasarse unas semanas arreglando Groovys, Grails, JRubys y similares.
  • Volviendo al tema Google App Engine. La forma de programar cambia. Donde teníamos una base de datos tradicional ahora tenemos BigTable. Encapsulado o no en JPA o cualquier otro interfaz, hay que cambiar el chip.
  • Bienvenidos al mundo de la programación distribuida. Aunque se puede usar la nube para desplegar una aplicación en capas tradicional. Pues aquí la idea es la promocionada por BigTables, MapReduces y similares. Es decir, distribuir el procesamiento/almacenamiento/mensajería entre los diferentes componentes de la nube. ¿Estás preparado para ello?, o incluso mejor, ¿Están tus programadores preparados para ello?

Nati Shalom de GigaSpaces comenta este mismo hilo en su blog y también Grig Gheorghiu tiene comentarios interesantes sobre sus experiencias en un despliegue importante sobre EC2.

Esperar fallos parece uno de los consejos más sensatos que se pueden extraer de estas lecturas, y también el de intentar automatizar el proceso para no morir en el intento. Una buena lectura para el que esté planteándose una migración.

domingo, febrero 01, 2009

Como hacer un backup seguro de MySQL de la forma más simple

domingo, febrero 01, 2009 por Martín

Sin duda, uno de los temas más importantes a la hora de crear una aplicación es la gestión de backups. Pero claro, qué pasa si no tenemos dinero para una SAN o una NAS, o ni siquiera un segundo servidor, o resulta que no podemos usar los servicios de cloud de Amazon o simplemente que no queremos, o peor aún, qué pasa si no tenemos los conocimiento suficientes como para hacer un backup completo...

Vaya lio. Bueno, Robin Blandford nos demuestra en un post que hasta las cosas que parecen de lo más complicado, se pueden hacer de la manera más simple. Si trabajamos con Subversion y MySQL, pues por qué no utilizar el primero para hacer backup del segundo.

Insultantemente simple:

#!/bin/sh
echo Starting Backup $(date)

mysqldump yourdbname > /var/svn/yourprojectname/yourdbname.sql

echo Dump Completed

svn ci /var/svn/yourprojectname/yourdbname.sql -m backup

echo SVN Commit Completed

echo Backup Done! $(date)
echo —


Solo quedaria poner nuestro SVN en algun otro servidor (en Internet hay algunos proveedores gratuitos) y listo respaldos incrementales que consumen poco tamaño y además offshore. Qué más se puede pedir :)

¿Algún truquillo mejor que se os ocurra?