Из этого учебного пособия вы узнаете, как доставлять контент конечному пользователю интернет-приложения с меньшей задержкой при помощи Amazon CloudFront. CloudFront ускоряет доставку контента с помощью глобальной сети центров обработки данных (периферийных местоположений), которые сокращают время доставки путем кэширования контента ближе к конечным пользователям. Если контент пока отсутствует в периферийном местоположении, CloudFront получает его из таких источников, как корзина Amazon S3, инстанс Amazon EC2, балансировщик нагрузки Elastic Load Balancing или собственный веб-сервер клиента. CloudFront можно использовать для доставки всего веб-сайта или приложения, включая динамический, статический, потоковый и интерактивный контент.

В этом руководстве мы настроим корзину Amazon S3 в качестве источника и проверим базу раздачи с помощью веб-браузера, чтобы убедиться, что контент доставляется.

Все действия, описанные в данном учебном пособии, доступны на уровне бесплатного пользования.

Для ускоренной доставки контента необходим аккаунт

Вход в Консоль

Уровень бесплатного пользования AWS включает 50 ГБ исходящих данных и 2 миллиона запросов HTTP или HTTPS в месяц в течение одного года.  

Подробнее об уровне бесплатного пользования AWS »


На этом шаге мы загрузим образец статического контента в корзину Amazon S3. В дальнейшем эта корзина будет использоваться в качестве источника CloudFront. Amazon S3 отлично подходит в качестве источника Amazon CloudFront при работе с таким статическим контентом, как изображения, видеоролики, страницы HTML, файлы .css и .js.


a. В этом учебном пособии в качестве образца используется изображение в формате PNG с именем cloudfront-test-image.png.  Нажмите кнопку справа, чтобы загрузить на свой компьютер образец изображения, и убедитесь, что файл сохранился под именем cloudfront-test-image.png.

Загрузить образец изображения

b. Щелкните здесь, чтобы открыть Консоль управления AWS в новом окне. Введите в поле поиска S3 и дважды щелкните, чтобы открыть панель управления.

tmt_faster-content-delivery-01

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-01

c. На панели управления S3 нажмите кнопку «Create Bucket» (Создать корзину).

  • «Bucket Name» (Имя корзины): укажите имя корзины, оно должно быть уникальным и полностью состоять из символов нижнего регистра. Сведения о других ограничениях, связанных с именами корзин S3, см. в разделе Bucket Restrictions and Limitations
  • «Region» (Регион). Можно выбрать близкий к вам регион, чтобы оптимизировать задержку, сократить расходы или обеспечить соответствие нормативным требованиям.

Нажмите «Next» (Далее).

На панели «Set properties» (Установка свойств) вы найдете множество полезных настроек для корзины S3, в том числе «Versioning» (Управление версиями), «Server Access Logging» (Ведение журнала доступа к серверу), «Tags» (Теги), «Object-level Logging» (Ведение журнала на уровне объектов) и «Default Encryption» (Шифрование по умолчанию). Но в этом руководстве они использоваться не будут.

Нажмите «Next» (Далее).

На панели «Set permissions» (Установка разрешений) можно установить разрешения на управление доступом к корзине. Но в этом руководстве они использоваться не будут.

Нажмите «Next» (Далее).

На панели «Review» (Проверка) выберите «Create bucket» (Создать корзину).

tmt_faster-content-delivery-02

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-02

d. Дважды щелкните имя корзины. Выберите «Upload» (Загрузить), затем «Add Files» (Добавить файлы) и выберите файл «cloudfront-test-image.png» на компьютере. 

Нажмите Next.

tmt_faster-content-delivery-03

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-03

e. На вкладке «Set permissions» (Установка разрешений) необходимо сделать изображение публичным для чтения.  По умолчанию объекты S3 являются частными.  Измените «Manage public permissions» (Управление публичными разрешениями) на «Grant public access to objects(s)» (Предоставить публичный доступ к объектам).

Нажмите «Next» (Далее).

На вкладке «Set properties» (Установка свойств) можно настроить такие параметры, как «Storage class» (Класс хранилища), «Encryption» (Шифрование) и «Metadata» (Метаданные). Но в этом руководстве они использоваться не будут.

Нажмите «Next» (Далее).

На вкладке «Review» (Проверка) проверьте загрузку файла.

Нажмите Upload.

tmt_faster-content-delivery-04

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-04

После загрузки контента в Amazon S3 можно использовать консоль Amazon CloudFront для доставки контента конечным пользователям по всему миру.


a. Щелкните здесь, и в новом окне браузера откроется Консоль управления AWS.  Найдите пункт CloudFront в разделе «Storage & Content Delivery» (Хранение данных и доставка контента) и щелкните его, чтобы открыть консоль Amazon CloudFront.

tmt_faster-content-delivery-06

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-06

b. Выберите «Create Distribution» (Создать базу раздачи).


 

tmt_faster-content-delivery-07

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-07

Параметры конфигурации веб-базы раздачи определяют, из какого источника сервису CloudFront нужно получать контент, запрашиваемый пользователем. В качестве источника можно использовать корзины Amazon S3 (папки хранилища) и HTTP-серверы (например, веб-серверы).


a. Для начала необходимо выбрать метод доставки контента.  Веб-база раздачи используется для статического и динамического контента, а база раздачи RTMP является оптимальным вариантом для потоковой передачи файлов мультимедиа с использованием протокола RTMP сервера Adobe Flash Media Server.

Поскольку файл cloudfront-test-image.png представляет собой статическое изображение, выберите «Get Started» (Начать) под вариантом «Web» (Веб-).

tmt_faster-content-delivery-08

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-08

b. Теперь нужно настроить параметры. 

В поле «Origin Domain Name» (Доменное имя источника) выберите имя корзины S3, в которой сохранен файл cloudfront-test-image.png.

В этом учебном пособии для остальных параметров можно оставить значения по умолчанию.  Подробную информацию о каждом параметре конфигурации см. в приведенном ниже раскрывающемся списке.

Стандартные параметры кэширования

Параметры базы раздачи

  • «Price Class» (Ценовая категория): в CloudFront есть три ценовые категории, определяемые количеством периферийных местоположений по всему миру, которые требуется поддерживать. По умолчанию CloudFront использует все периферийные местоположения, чтобы обеспечить максимальную производительность. Подробные сведения см. на странице Цены на Amazon CloudFront.
  • «AWS WAF Web ACL» (Веб-список ACL в AWS WAF): если вы хотите разрешать или блокировать запросы HTTP и HTTPS в соответствии с заданными вами критериями, выберите веб-список ACL, который требуется связать с этой базой раздачи. Подробные сведения см. в руководстве AWS WAF Developer Guide.
  • «Alternate Domain Names» (Альтернативные доменные имена): при создании веб-базы раздачи сервис CloudFront автоматически назначит вам доменное имя (например, http://abcdefghi888.cloudfront.net/filename.jpg). В URL-адресах объектов также можно указывать собственное доменное имя (например, http://вашДомен.com/имя_файла.jpg), изменив конфигурацию DNS для маршрутизации запросов DNS к вашей базе раздачи CloudFront. В данном учебном пособии мы оставим это поле пустым.
  • «SSL Certificate» (Сертификат SSL): CloudFront предоставляет сертификат по умолчанию. Вы также можете указать собственный сертификат SSL. 
  • «Default Root Object» (Корневой объект по умолчанию): здесь можно указать объект, который CloudFront будет запрашивать из источника, когда пользователь запрашивает только корневой URL-адрес базы раздачи. Допустим, пользователь запрашивает адрес http://www.example.com/. Можно сделать так, чтобы доставлялся объект http://www.example.com/product-description.html. Указав корневой объект по умолчанию, вам не придется предоставлять содержимое своей базы раздачи.
  • «Logging» (Ведение журнала): CloudFront может заносить в журнал сведения о каждом запросе к объекту и сохранять файлы журнала в корзине Amazon S3. За включение ведения журналов не взимается дополнительная плата, но стоимость хранения файлов и обеспечения доступа к ним добавляется к плате за использование корзины Amazon S3.
  • «Bucket for Logs» (Корзина для журналов): если вы указали корзину Amazon S3 для хранения журналов доступа, CloudFront может регистрировать данные о каждом запросе пользователей к объекту и сохранять файлы в указанной корзине Amazon S3. Ведение журнала можно включить или отключить в любой момент. Подробную информацию о журналах доступа CloudFront см. в разделе Access Logs.
  • «Log Prefix» (Префикс журнала): если для параметра «Logging» (Ведение журнала) выбрано значение «On» (Включено), можно указать префикс, который CloudFront будет добавлять к именам файлов журналов этой базы раздачи. Подробную информацию о журналах доступа CloudFront см. в разделе Access Logs.
  • «Cookie Logging» (Ведение журнала для файлов cookie): если в качестве источника объектов используется Amazon S3, следует учесть, что этот сервис не обрабатывает файлы cookie. Поэтому, если ваша база раздачи не включает Amazon EC2 или другой пользовательский источник, для параметра «Cookie Logging» (Ведение журнала для файлов cookie) следует выбрать значение «Off» (Отключено). Подробные сведения относительно файлов cookie см. в разделе Configuring CloudFront to Cache Objects Based on Cookies.
  • «Comment» (Комментарии): здесь можно указать комментарии, которые будут сохранены вместе с базой раздачи.
  • «Distribution Status» (Статус базы раздачи): по умолчанию выбрано значение «Enabled» (Включена). Это означает, что ваш контент будет доступен сразу же после создания базы раздачи.
tmt_faster-content-delivery-09

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-09

После настройки базы раздачи CloudFront создаст ее и распространит по сети CloudFront для использования. Выберите «Create Distribution» (Создать базу раздачи).

По завершении этого процесса значение в столбце статуса изменится с «In Progress» (Выполняется) на «Deployed» (Развернута).

Примечание. Это может занять несколько минут.

Доменное имя, которое CloudFront назначит вашей базе раздачи, появится в списке ваших баз раздачи. Запомните его, так как оно потребуется на следующем этапе. Если щелкнуть поле «Distribution ID» (Идентификатор базы раздачи), откроется страница, где в поле «Domain Name» (Доменное имя) будет указано полное доменное имя CloudFront.

tmt_faster-content-delivery-10

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-10

Создав веб-базу раздачи, можно протестировать ее и убедиться, что CloudFront получает объект из источника и возвращает его в веб-браузер.  Для этого вам потребуются доменное имя CloudFront, которое вы узнали при выполнении шага 4, и имя изображения, загруженного в корзину S3 в процессе шага 1.


a. Откройте на компьютере текстовый редактор. Скопируйте и вставьте следующий код HTML:

Мой тест CloudFront

Место для текстового контента.

мое тестовое изображение

  • Замените «доменное имя» на доменное имя, которое сервис CloudFront назначил вашей базе раздачи, например d111111abcdef8.cloudfront.net.
  • Замените «имя объекта» на имя файла изображения в корзине Amazon S3. В нашем случае это cloudfront-test-image.png.
  • Сохраните текст в файле с именем mycloudfronttest.html.

b. Откройте свою веб-страницу в браузере и проверьте, отображается ли контент. 

cloudfront-16

(Нажмите, чтобы увеличить.)

cloudfront-16

Базу раздачи легко отключить с помощью консоли CloudFront. Рекомендуется всегда отключать базы раздачи, которые больше не используются, чтобы не платить за их использование. Однако примите во внимание, что при отключении базы раздачи все веб-сайты, поддерживаемые ею, станут неактивными, а контент будет недоступен конечным пользователям.


a. Установите флажок рядом с созданной базой раздачи и щелкните «Disable» (Отключить).

tmt_faster-content-delivery-11

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-11

b. Вам будет предложено подтвердить операцию. Щелкните «Yes, Disable» (Да, отключить).

tmt_faster-content-delivery-12

(Нажмите, чтобы увеличить.)

tmt_faster-content-delivery-12

Вы создали свою первую веб-базу раздачи Amazon CloudFront и доставили элемент статического контента, размещенного в облачном хранилище сервиса Amazon S3. Внеся несколько изменений в конфигурацию, CloudFront можно использовать для доставки динамического контента и трансляции мероприятий (например, собраний, конференций и концертов) в режиме реального времени по протоколу HTTP или HTTPS. Используйте Amazon CloudFront, чтобы ускорить доставку всего веб-сайта или приложения, включая динамический, статический, потоковый и интерактивный контент.

Вы узнали, как настраивать базу раздачи веб-контента и доставлять статический контент с помощью Amazon CloudFront. Теперь в ходе предстоящих «прямых линий» или вебинаров AWS Tech Talk вы можете задать дополнительные вопросы экспертам CloudFront.

Страница начала работы с Amazon CloudFront >>

 

Да
Нет