Em 24 de março de 2010, a refrigeração do data center europeu da Wikimedia falhou e muitos servidores se desligaram sozinhos para proteger o hardware. Como esse site atendia o tráfego europeu da Wikipédia e dos demais projetos, a equipe de operações executou seu failover rápido padrão: alterar os registros de DNS para que todo o tráfego de usuários migrasse para o cluster da Flórida. Minutos depois, a equipe descobriu que o próprio mecanismo de failover estava quebrado, e a resolução de DNS de todos os sites da Wikimedia havia parado de funcionar — não só na Europa, mas globalmente.

A recuperação então esbarrou em um segundo modo de falha, mais silencioso. A equipe esperava que os resolvedores descartassem as respostas ruins em até uma hora, o TTL de cache negativo anunciado pela zona, mas os resolvedores de muitos provedores de internet ignoraram essa indicação e armazenaram em cache as consultas com falha por mais tempo. A solução alternativa foi direta: renomear o registro de DNS afetado para que os resolvedores tivessem de buscar um nome novo. Enquanto isso, o gateway SSL secure.wikimedia.org, desativado durante a emergência, entrou em colapso com o retorno do tráfego e só voltou às 21h32 UTC.

Por várias horas, a enciclopédia de referência do mundo simplesmente não pôde ser resolvida, sem nenhum canal de status de indisponibilidade para acompanhar — o Mashable observou que o Twitter era o único lugar onde era possível acompanhar o caso. O Wikimedia Signpost registrou que o site ficou "offline globalmente por várias horas", e a equipe publicou no mesmo dia uma explicação no blog de tecnologia, assinada pelo engenheiro de infraestrutura Mark Bergsma.

Todos os sites da Wikimedia pararam de resolver no mundo todo por várias horas, com a indisponibilidade noticiada pela CNN, pelo Telegraph e pelo Mashable à medida que os leitores perdiam o acesso.

O procedimento de failover era rotulado como "rápido padrão", mas sua etapa de DNS estava quebrada quando de fato executada — o caminho de recuperação evidentemente nunca havia sido exercitado contra uma troca real.

As estimativas de recuperação presumiam que os resolvedores dos provedores de internet respeitariam o TTL de cache negativo de uma hora anunciado; muitos não respeitaram, transformando um incidente de duração limitada em um incidente sem prazo definido.

O gateway SSL não tinha folga: quando o tráfego voltou em massa, o secure.wikimedia.org sobrecarregou e caiu, agravando a indisponibilidade.

O atendimento europeu estava concentrado em uma única instalação, de modo que uma única falha de refrigeração exigiu, desde o início, uma troca de tráfego global.

Um caminho de failover que nunca é exercitado é uma esperança, não um mecanismo. Ensaiar procedimentos de recuperação como simulações reais e nunca presumir que os caches a jusante expiram no prazo previsto.

O acesso voltou depois que o registro de DNS foi renomeado e as novas consultas se propagaram; o gateway SSL retornou às 21h32 UTC do mesmo dia. A análise pública de postmortem publicada no mesmo dia no blog de tecnologia da Wikimedia definiu o tom para o hábito posterior da fundação de publicar retrospectivas de incidentes. A armadilha da redundância em si persistiu: em agosto de 2012, um único corte de fibra rompeu ambos os links "redundantes" entre os data centers de Ashburn e Tampa e derrubou a Wikipédia por mais 63 minutos, e só então a fundação consolidou seu back end de atendimento em Ashburn.

CONFIRA AS EVIDÊNCIAS

As fontes

  1. Global Outage (cooling failure and DNS) Wikimedia Tech Blog (Diff) · diff.wikimedia.org ·
  2. Wikipedia Goes Down [Updated] Mashable · mashable.com ·
  3. Server overheating and DNS problems cause global Wikipedia downtime The Wikipedia Signpost · en.wikipedia.org ·