Hospedagem do site S3 tolerante a falhas

1

Devido ao recente período de inatividade do S3 na Costa Leste, quero perguntar à comunidade qual é a melhor maneira de implementar uma solução de hospedagem de site S3 tolerante a falhas?

Pelo que entendi, é necessário nomear um intervalo depois do seu domínio (por exemplo, example.com). Mas esse intervalo é específico da região e o nome do intervalo é globalmente exclusivo, por isso não posso criar o mesmo em outra região. Então, se essa região cair no bucket do S3, isso não significaria que meu site está inativo?

    
por Justin 14.03.2017 / 20:12

1 resposta

6

A resposta curta é: Não consigo encontrar uma boa maneira de ter um site estático hospedado do S3 sobreviver a uma falha de região sem usar lógica ou servidores adicionais. Eu ficaria realmente interessado se alguém mais pudesse propor um caminho.

Você pode colocar o CloudFront na frente do site do S3. Se o intervalo for desativado, o conteúdo será exibido a partir do cache, mesmo que seja obsoleto. Isso, é claro, depende do conteúdo que está no cache do ponto de extremidade mais próximo do cliente.

Você pode usar a replicação entre regiões do S3 para mover os dados do S3 para outra região . Originalmente, achei que você poderia usar o roteamento de failover do Route53 para selecionar o intervalo de trabalho, mas isso não vai funcionar. A replicação de região cruzada deve ser para um intervalo com um nome diferente, com o site S3 hospedando você só pode hospedar um site a partir de um bloco nomeado para o domínio. Gostaria de saber se havia uma solução manual, mas você não pode renomear os intervalos e, se a primeira região estiver inativa, provavelmente não será possível excluir o intervalo com o nome do site.

Eu pensei que uma combinação de CloudFront e Route53 poderia funcionar, mas isso dependeria da criação de duas distribuições do CloudFront que veiculam conteúdo para o mesmo domínio. Isso não parece ser possível.

Isso não é o ideal, mas acho que você poderia fazer isso com o EC2 e o Route53. Crie servidores em duas ou mais regiões, faça com que eles procurem manualmente o conteúdo S3 usando Nginx ou similar e equilibre-os com o Route53. Isso derrota o ponto de hospedagem do S3 e é, em geral, uma idéia terrível, mas provavelmente poderia funcionar se fosse absolutamente necessário.

    
por 14.03.2017 / 20:38