Concluindo a migração para a nuvem

A jornada da Netflix para sistemas em cloud começou em agosto de 2008, quando tivemos um problema grave de corrompimento da base de dados e não pudemos enviar DVDs para nossos assinantes por três dias. Foi então que percebemos que precisávamos nos distanciar de pontos de falhas escalonados verticalmente, tais como bases de dados relacionais em nosso centro de dados, em direção a sistemas distribuídos na nuvem, mais confiáveis e escalonáveis horizontalmente. Escolhemos a Amazon Web Services (AWS) como provedor de nuvem porque havia maior possibilidade de expansão e um conjunto mais amplo de serviços e recursos. A maioria dos nossos sistemas, incluindo todos os serviços voltados aos clientes, foram migrados para a nuvem antes de 2015. No entanto, esperamos até que tivéssemos um plano seguro e sustentável para migrar para a nuvem a nossa infraestrutura de cobrança, bem como todos os aspectos de gerenciamento de dados de nossos clientes e funcionários. Temos o prazer de anunciar que, no começo de janeiro de 2016, após sete anos de muito trabalho, finamente completamos a migração para a nuvem e fechamos o último datacenter utilizado por nosso serviço de transmissão.

A migração para a nuvem trouxe vários benefícios para a Netflix. Nós temos oito vezes mais assinantes do que tínhamos em 2008, e eles são muito mais ativos, com a visualização crescendo em três ordens de grandeza em oito anos:

O serviço Netflix continua a evoluir rapidamente, incorporando novos recursos e gerando volumes de dados cada vez maiores. Teria sido extremamente difícil suportar esse crescimento tão acelerado em nossos próprios datacenters. Nós simplesmente não teríamos conseguido aumentar a capacidade de servidores com a velocidade necessária. A flexibilidade da nuvem nos permite adicionar milhares de servidores virtuais e petabytes de armazenamento em questão de minutos, o que possibilita a nossa expansão. Em 6 de janeiro de 2016, a Netflix expandiu o serviço para mais de 130 países, tornando-se realmente uma rede mundial de TV pela Internet. A possibilidade de utilizar múltiplas regiões da nuvem AWS, espalhadas pelo mundo inteiro, nos permite realizar mudanças e expandir nossa capacidade mundial de infraestrutura, criando uma experiência de transmissão melhor para os assinantes da Netflix, onde quer que eles estejam.

Nós dependemos da nuvem para toda a carga de computação e armazenamento escalonáveis: lógica corporativa, bases de dados de distribuição e processamento/análise de megadados, recomendações, transcodificação e centenas de outras funções que compõem o aplicativo Netflix. Vídeos são transmitidos por meio do Netflix Open Connect, nossa rede de entrega de conteúdo distribuída mundialmente para levar nossos bits aos aparelhos dos assinantes com eficiência.

A nuvem também nos permitiu aumentar significativamente a disponibilidade de nosso serviço. Nossos datacenters sofreram diversas interrupções de serviço, e embora tenhamos passado por alguns momentos difíceis na nuvem, principalmente no começo da migração, temos visto um aumento constante de nossa disponibilidade, chegando quase ao nosso objetivo de “quatro noves” (99,99%) de disponibilidade. Falhas são inevitáveis em qualquer sistema de distribuição de grande escala, incluindo sistemas baseados na nuvem. Contudo, a nuvem permite criar serviços confiáveis com a redundância de componentes que sempre serão suscetíveis a falhas. Incorporando os princípios de redundância e graceful degradation em nossa arquitetura, e aprendendo sobre problemas de produção regulares com o Simian Army, é possível resistir a falhas na infraestrutura da nuvem e em nossos próprios sistemas sem comprometer a experiência do assinante.

A redução de custos não foi o que nos motivou a migrar para a nuvem. No entanto, nossos custos por começo de transmissão na nuvem são uma fração dos custos do centro de dados. Esse foi um efeito colateral positivo. Isso foi possível graças à elasticidade da nuvem, que nos permite otimizar continuamente o serviço e aumentar ou reduzir nosso tamanho quase que instantaneamente, sem a necessidade de mantermos amortecedores de capacidade. Dessa forma, também nos beneficiamos da economia em escala que só é possível em um ecossistema na nuvem.

Considerando as vantagens óbvias da nuvem, por que demoramos sete anos para completar a migração? Na verdade, a migração para a nuvem deu muito trabalho, e tivemos que fazer várias decisões difíceis ao longo do caminho. Teria sido fácil migrar para a nuvem simplesmente transferindo todos os sistemas, sem alterações, do centro de dados para a AWS. Mas se tivéssemos feito isso, teríamos migrado também todos os problemas e limitações que conhecemos trabalhando em datacenters. Ao invés disso, optamos por reconstruir praticamente toda a nossa tecnologia na nuvem, mudando a forma como a empresa opera. Do ponto de vista da arquitetura, migramos de um aplicativo monolítico para centenas de microsserviços e desnormalizamos nosso modelo de dados, com o uso de bases de dados NoSQL. A aprovação de orçamento, a coordenação centralizada de lançamentos e os ciclos de provisão de hardware de várias semanas deram lugar à entrega contínua, a equipes de engenheiros que tomam decisões independentes usando ferramentas self service em um ambiente de DevOps mais flexível, contribuindo para acelerar a inovação. Tivemos que desenvolver muitos sistemas novos e aprender novas habilidades. Foi necessário tempo e muito trabalho para transformar a Netflix em uma empresa que é nativa da nuvem, mas isso nos colocou em uma posição muito melhor para continuar a crescer e nos transformar em uma rede de TV mundial.

A tecnologia de transmissão da Netflix evoluiu muito nos últimos anos e ficamos felizes por finalmente estarmos livres das limitações que tínhamos anteriormente. Entretanto, a nuvem é ainda uma novidade para muitos de nós e há muitas dúvidas a responder e problemas a resolver. Por meio de iniciativas como a Netflix Open Source, esperamos continuar colaborando com profissionais de tecnologia talentosos e enfrentar juntos todos esses desafios.

-Yury Izrailevsky, Stevan Vlaovic e Ruslan Meshenberg

Mais de Blog corporativo

Recomendações: uma abordagem global

Com o lançamento da Netflix em mais 130 países em janeiro, nós queríamos que o nosso serviço funcionasse bem em todos os lugares do mundo. Para isso, era preciso solucionar uma série de problemas técnicos complexos com uma abordagem global em mente. Continuar lendo

Top