com o Amazon CloudFront

Neste tutorial, você saberá como entregar conteúdo e diminuir a latência dos usuários finais de seu aplicativo web usando o Amazon CloudFront. O CloudFront acelera a entrega de conteúdo, aproveitando sua rede global de datacenters, conhecida como pontos de presença, para reduzir o tempo de entrega armazenando o conteúdo em caches próximos aos usuários finais. O CloudFront obtém conteúdo de uma origem como um bucket do Amazon S3, uma instância do Amazon EC2, um load balancer do Amazon Elastic Load Balancing ou seu próprio servidor web, quando não está em um ponto de presença. O CloudFront pode ser usado para entregar um site ou aplicativo inteiro, incluindo conteúdo dinâmico, estático, interativo e de streaming.

Nas etapas seguintes, você configurará um bucket do Amazon S3 como origem e testará sua distribuição usando um navegador web para garantir que seu conteúdo está sendo entregue.

Todas as atividades realizadas neste tutorial estão qualificadas para o nível gratuito.

Você precisa de uma conta para acelerar a entrega de conteúdo

Faça login no Console

O nível gratuito da AWS inclui 50 GB de transferência de dados para fora e 2.000.000 solicitações HTTP ou HTTPS por mês durante um ano.  

Consulte os detalhes do nível gratuito da AWS »


Nesta etapa, carregaremos um conteúdo estático de exemplo para um bucket do Amazon S3. Usaremos esse bucket como uma origem do CloudFront nas próximas etapas. O Amazon S3 é uma boa opção para uma origem do Amazon CloudFront que inclui conteúdo estático como imagens, vídeos, páginas HTML e arquivos .css e .js.


a. A imagem de exemplo que usaremos no tutorial é uma imagem no formato PNG chamada cloudfront-test-image.png.  Clique no botão à direita para fazer download da imagem de exemplo e certifique-se de salvá-la como cloudfront-test-image.png.

Faça download da imagem de exemplo

b. Ao clicar aqui, o Console de Gerenciamento da AWS será aberto em uma nova janela do navegador. Digite S3 na caixa de pesquisa e clique duas vezes para abrir o painel.

tmt_faster-content-delivery-01

(clique para ampliar)

tmt_faster-content-delivery-01

c. Agora que você está no painel do S3, clique no botão Criar Bucket.

  • Nome do bucket: insira um nome para o bucket ele deve ser exclusivo e estar todo em letras minúsculas. Para saber sobre restrições adicionais em nomes de buckets do S3, consulte Restrições e limitações de buckets
  • Região: você tem a opção de selecionar uma região perto de você para otimizar a latência, minimizar os custos ou cumprir requisitos normativos.  

Selecione Próximo.

No painel Definir propriedades, há várias opções úteis para os buckets do S3, incluindo versionamento, registro em log de acessos ao servidor, tags, registro em log no nível do objeto e criptografia padrão. Não habilitaremos esses recursos neste tutorial.

Selecione Próximo.

No painel Set permissions, você pode definir permissões de controle de acesso para um bucket. Não habilitaremos esses recursos neste tutorial.

Selecione Próximo.

No painel Revisar, selecione Criar bucket.

tmt_faster-content-delivery-02

(clique para ampliar)

tmt_faster-content-delivery-02

d. Clique duas vezes no nome de seu bucket. Selecione Fazer uploadAdicionar arquivos e selecione cloudfront-test-image.png em seu computador. 

Selecione Próximo.

tmt_faster-content-delivery-03

(clique para ampliar)

tmt_faster-content-delivery-03

e. Na guia Definir permissões, será necessário tornar a imagem publicamente legível.  Por padrão, objetos do S3 são definidos como privados.  Altere Gerenciar permissões públicas para "Conceder acesso público ao(s) objeto(s)".

Selecione Próximo.

Na guia Set properties, você pode definir a classe, a criptografia e os metadados do armazenamento. Não habilitaremos esses recursos neste tutorial.

Selecione Próximo.

Na guia Review, verifique o upload do arquivo.

Selecione Fazer upload.

tmt_faster-content-delivery-04

(clique para ampliar)

tmt_faster-content-delivery-04

Depois que o upload do conteúdo for feito no Amazon S3, você poderá usar o console do Amazon CloudFront para entregar conteúdo para os usuários finais no mundo todo.


a. Ao clicar aqui, o Console de Gerenciamento da AWS será aberto em uma nova guia do navegador.  Localize o Amazon CloudFront em Armazenamento e entrega de conteúdo e clique para abrir o console do Amazon CloudFront.

tmt_faster-content-delivery-06

(clique para ampliar)

tmt_faster-content-delivery-06

b.  Selecione Criar distribuição.


 

tmt_faster-content-delivery-07

(clique para ampliar)

tmt_faster-content-delivery-07

Uma distribuição na web especifica as definições de configuração de forma que o CloudFront saiba de qual origem obter o conteúdo quando um usuário solicitá-lo. Você pode usar buckets do Amazon S3 (pastas de armazenamento) e servidores HTTP (por exemplo, servidores da web) como uma origem.


a.  ​Selecione primeiramente o método de entrega de conteúdo.  Uma distribuição na web é usada para conteúdo estático e dinâmico, enquanto a distribuição RTMP é ideal para o streaming de arquivos de mídia usando o protocolo RTMP do Adobe Flash Media Server.

Como cloudfront-test-image.png é uma imagem estática, selecione Comece agora na opção Web .

tmt_faster-content-delivery-08

(clique para ampliar)

tmt_faster-content-delivery-08

b.  Você agora vai definir suas configurações. 

Em Nome de domínio de origem, selecione o nome do bucket do S3 no qual você armazenou cloudfront-test-image.png.

Você pode deixar o restante das definições das configurações com os valores padrão para este tutorial.  Se você quiser saber mais sobre cada definição das configurações, clique no menu suspenso abaixo.

Configurações padrão do comportamento do cache

Configurações de distribuição:

  • Classe de preço o CloudFront tem três classes de preço determinadas pelo número de Pontos de presença que você quer que tenham suporte ao redor do mundo. Por padrão, o CloudFront usa todos os pontos de presença para garantir a melhor performance. Para obter mais informações, consulte Definição de preço do Amazon CloudFront.
  • AWS WAF Web ACL: se você quiser permitir ou bloquear solicitações HTTP e HTTPS com base em critérios que você especificar, selecione a ACL da web a ser associada a esta distribuição. Para obter mais informações, consulte o Guia do desenvolvedor do AWS WAF.
  • Nomes de domínio alternativos: o CloudFront atribuirá automaticamente um nome de domínio quando você criar uma distribuição na web (por exemplo, http://abcdefghi888.cloudfront.net/filename.jpg). Você também pode especificar seu próprio nome de domínio nos URLs para seus objetos (como http://yourDomain.com/filename.jpg) depois de atualizar a configuração de DNS para rotear as consultas DNS para a distribuição do CloudFront. Para este tutorial, deixe este campo em branco.
  • Certificado SSL: o CloudFront fornece um certificado padrão ou você pode especificar um Certificado SSL customizado. 
  • Objeto raiz padrão: é onde você especifica o objeto a ser solicitado pelo CloudFront de sua origem quando um usuário solicita apenas o URL raiz de sua distribuição. Por exemplo, um usuário solicita http://www.example.com/, e você pode especificar que http://www.example.com/product-description.html seja entregue. A especificação de um objeto raiz padrão evita a exposição do conteúdo da distribuição.
  • Registro em log: o CloudFront pode registrar informações sobre cada solicitação de um objeto e armazenar os arquivos de log em um bucket do Amazon S3. Não há custo adicional para habilitar o registro em log, mas você acumulará cobranças do Amazon S3 pelo armazenamento e acesso dos arquivos.
  • Bucket para logs: se você especificou um bucket do Amazon S3 no qual armazenar e acessar os logs, o CloudFront pode registrar as informações sobre cada solicitação de usuário para um objeto e armazenar os arquivos de log em um bucket do Amazon S3 especificado. É possível habilitar ou desabilitar o registro a qualquer momento. Para obter mais informações sobre os logs de acesso do CloudFront, consulte Logs de acesso.
  • Prefixo do log: se você selecionar Ativado para o registro em log, especifique a string que você deseja que o CloudFront use como prefixo nos nomes de arquivo do log de acesso dessa distribuição. Para obter mais informações sobre os logs de acesso do CloudFront, consulte Logs de acesso.
  • Registro em log de cookies: ao usar o Amazon S3 como a origem de seus objetos, o Amazon S3 não processará os cookies, portanto, a menos que sua distribuição também inclua um Amazon EC2 ou outra origem personalizada, você terá que selecionar Desativado para o valor de Registro em log de cookies Para obter mais informações, consulte Configuração do CloudFront para armazenar objetos em com base em cookies.
  • Comentário: é possível inserir qualquer comentário que você queira para salvar com a distribuição.
  • Status da distribuição: o padrão é Habilitado. Isso significa que seu conteúdo estará disponível assim que a distribuição for criada.
tmt_faster-content-delivery-09

(clique para ampliar)

tmt_faster-content-delivery-09

Assim que você configurar sua distribuição, o CloudFront criará a distribuição e a propagará em toda a rede CloudFront para seu uso.  Selecione Criar distribuição.  

Após a conclusão desse processo, a coluna de status mudará de Em andamento para Implantado.

Observação: isso poderá levar alguns minutos para ser concluído.

O nome de domínio atribuído pelo CloudFront à sua distribuição será exibido na lista de distribuições. Lembre-se disso, pois você precisará dessas informações para a próxima etapa. Clicar no campo ID da distribuição levará você a uma página em que o domínio completo do CloudFront será exibido em Nome de domínio.

tmt_faster-content-delivery-10

(clique para ampliar)

tmt_faster-content-delivery-10

Depois que criar sua distribuição na web, você poderá testá-la confirmando que o CloudFront obtenha seu objeto da origem e retorne-o para um navegador da web.  Para esse teste, você precisará do nome de domínio do CloudFront na Etapa 4 e o nome da imagem que você carregou no bucket do S3 na Etapa 1.


a. Abra um editor de texto em seu computador. Copie e cole o seguinte código HTML:

</html>

  • Substitua o nome de domínio pelo nome de domínio que o CloudFront atribuiu à sua distribuição, como d111111abcdef8.cloudfront.net.
  • Substitua o nome do objeto pelo nome de seu arquivo de imagem no bucket do Amazon S3, nesse caso, cloudfront-test-image.png.
  • Salve o texto em um arquivo como mycloudfronttest.html.

b. Abra a página da web em um navegador para garantir que você possa ver o conteúdo. 

cloudfront-16

(clique para ampliar)

cloudfront-16

Você pode desabilitar facilmente a distribuição no console do CloudFront. Na verdade, é uma melhor prática desabilitar as distribuições que você não usa mais para que você não seja cobrado por elas. No entanto, observe que, quando uma distribuição é desabilitada, qualquer site com suporte dessa distribuição será desativado e o conteúdo não estará mais acessível para os usuários finais.


a.  Marque a caixa de seleção ao lado da distribuição que você criou e clique em Desabilitar.

tmt_faster-content-delivery-11

(clique para ampliar)

tmt_faster-content-delivery-11

b. Você será solicitado a confirmar. Clique em Sim, desabilitar.

tmt_faster-content-delivery-12

(clique para ampliar)

tmt_faster-content-delivery-12

Você criou sua primeira distribuição na web do Amazon CloudFront e entregou um trecho de conteúdo estático hospedado na nuvem por meio do Amazon S3. Com algumas alterações de configuração, você pode usar o CloudFront para fornecer conteúdo dinâmico e eventos ao vivo, como uma reunião, conferência ou conjunto, em tempo real via HTTP ou HTTPS. Use o Amazon CloudFront para acelerar a entrega de um site ou aplicativo inteiro, incluindo conteúdo dinâmico, estático, interativo e de streaming.

Agora que você aprendeu a configurar uma distribuição web e entregar um fragmento de conteúdo estático com o Amazon CloudFront, já pode fazer perguntas aos nossos especialistas de CloudFront nos próximos Office Hours ou AWS Tech Talks.

Página de conceitos básicos do Amazon CloudFront >>

 

Sim
Não