La infraestructura de Microsoft.com

Llevo casi todo el verano leyendo acerca de la omnipresente pelea Linux-Windows, en particular en el terreno de los servidores Web, uno de los tres temas de discusión preferidos, junto con el predominio en el escritorio y la seguridad.

Por un lado tenemos las estadísticas de uso de los diferentes servidores Web del mercado que publica Netcraft, en agosto sobre una impresionante muestra de casi 128 millones de sites. No hay que ser un avezado matemático para darse cuenta de que la mayoría de los servidores Web están repartidos básicamente entre Apache e IIS (aprox. en un 85%), con tendencias a la baja y al alza respectivamente desde finales de 2005. Es también conveniente contrastar estas cifras con las que publica Port80 acerca del servidor Web favorito de las "Top 1000" empresas de Estados Unidos (Fortune 1000).

Por otro, están los estudios que ofrece Pingdom sobre el "uptime" de diferentes dominios, en base a cifras que se obtienen a base de recolectar la información de los voluntarios que se instalan un pequeño cliente, que se encarga de comprobar si los dominios que se agregan al mismo están vivos o no. A la vista de cómo funciona todo el sistema de medida, es de esperar que la exactitud de la misma no será homogénea para todos los dominios, pero si ha servido para poner de manifiesto algunas diferencias entre los tiempos de caída de las Webs de algunos de los fabricantes en liza.

Si a todo lo anterior sumamos noticias como la intrusión en cinco servidores de la web de comunidades de Ubuntu y la caída del servicio de Skype durante 48 horas, han habido motivos más que suficientes para alimentar el eterno debate.

En esto de la disponibilidad y la seguridad de una infraestructura crítica, como lo es la de un servicio Web corporativo, creo que influyen, como en otras muchas cosas, los tres factores de siempre. La tecnología utilizada, los procesos de despliegue y operaciones y las personas involucradas en ellos. Todo ello íntimamente entrelazado y terciado por las inversiones que se decidan llevar a cabo en función de su criticidad.

Es evidente que la web de Microsoft.com es crítica en términos de negocio e imagen de Microsoft. La cantidad de información albergada es ingente. Algunos de los comentarios que he leído en el Blog Maligno respecto a las noticias y cifras citadas anteriormente me han llevado a indagar un poco más acerca de cómo tenemos montado el servicio Web. ¿Cuántos servidores están realmente detrás de Microsoft.com? ¿Y de Microsoft Update?. Como decía Ballmer en su anuncio, how much do you guess?

Lo cierto es que yo también creía que eran más. Microsoft.com cuenta con 80 servidores y Microsoft Update con 160. Toda estos servidores, con arquitectura y Sistema Operativo x64, se reparten entre 7 CPDs y 3 CDNs (Content delivery Networks), soportan 120 sitios web, 1000 aplicaciones, 2500 bases de datos, unos 30 Gb/sec de tráfico web y unos 220 Gb/sec de tráfico de descargas. Según datos de Keynote Systems, las disponibilidades anuales desde 2005 siempre han sido superiores al 99,80%, siendo los principales problemas los timeouts de conexión, de página, y las búsquedas y resoluciones de nombres DNS asociadas al dominio:

  • Microsoft.com
    • 80 servidores, la mitad de ellos corriendo ya Windows server 2008 con IIS7
    • 7º site del mundo en usuarios únicos con unos 280 millones
    • 10.000 peticiones por segundo
    • 300.000 conexiones concurrentes
    • 500 Virtual Roots
    • 350 aplicaciones de IIS en 12 Application Pools
  • Microsoft Update
    • 300 millones de "escaneos" únicos (Web + Cliente de AU) por día, y 350 millones/día en total
    • 60.000 peticiones ASP.NET por segundo
    • 1.5 millones de conexiones concurrentes
    • 50 billones de descargas en 2006
    • Update Egress: Microsoft, Akamai, Level3 y Limelight (50-220 Gbits/Seg)

Sobre la arquitectura de la solución es lógicamente compleja. Hay balanceadores hardware, clusteres NLB, sistemas de seguridad contra denegaciones de servicio y seguimiento de anomalías, firewalls que back-ends que utilizan almacenamiento DFS y replicación DFS-R, etc.

Todos estos datos se contaron en directo en el último TechEd 2007, y la sesión quedo grabada en el IT Showtime. Por si hay alguien interesado en saber más detalles, aquí está el enlace directo:

http://www.microsoft.com/emea/itsshowtime/sessionh.aspx?videoid=550

Sin embargo, como decía no solamente esto es importante para mantener semejante infraestructura. La calidad de las operaciones y de las personas son claves para la calidad de la solución. Es una práctica frecuente de los equipos que soportan nuestras infraestructuras internas (para nosotros, MSIT) el compartir con los clientes sus recomendaciones, buenas prácticas, detalles de arquitectura y problemas más frecuentes, extraídos de su experiencia al desplegarlas y mantenerlas internamente.

Toda esta información acerca de "How Microsoft does IT" está colgada en el IT Showcase de TechNet, donde se puede ver, por ejemplo, qué es lo que hace el equipo de Microsoft IT Attack and Penetration Testing Team y cómo trabajan.

Technorati tags: Microsoft.com, IIS, IIS7, pingdom, Netcraft, Port80, Keynote Systems, Fortune1000, TechNet, IT Showtime, IT Showcase