Рубрики
Uncategorized

Хостинг веб -приложений в облаке AWS

Обзор традиционного веб -хостинга Это изображение изображает традиционную архитектуру … с меткой AWS, WebDev, Cloud, DevOps.

Обзор традиционного веб -хостинга

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

Хостинг веб -приложений в облаке с помощью AWS

После изучения значения, переходящего в облако и решить, что она лучше для вашего случая, этот раздел помогает вам архитектировать ваше приложение в облаке, используя AWS

AWS может решить общие проблемы с хостингом веб -приложений

  • Экономическая эффективность

    Использование автоматического масштабирования (вверх/вниз) в зависимости от обеспечения трафика для сокращения бесполезных мощностей в непиковое время, чтобы обеспечить экономически эффективное использование ресурсов.

  • Быстрое масштабируемость

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

  • Управление различными средами

    Легко и экономически эффективно управлять средами (тестирование/бета/постановка), чтобы обеспечить качество применения на разных этапах его жизненного цикла разработки. Это помогает оптимально использовать этот параллельный флот, когда и по мере необходимости. Вы также можете использовать этот параллельный флот в качестве постановки для вашего нового выпуска и рычага Сине-зеленое развертывание Анкет

Облачная архитектура AWS для хостинга веб -приложений

  • Услуги DNS с Amazon Route 53 упрощает управление доменом
  • Кэширование края С AWS Cloudfront Чтобы уменьшить задержку контента для пользователей
  • БЕЗОПАСНОСТЬ EDGE для Amazon Cloudfront с AWS WAF Определенные клиентом правила для фильтрации вредоносного трафика (XSS — SQL -инъекции)
  • Балансировка нагрузки с упругой балансировкой нагрузки (ELB) Распределите нагрузку по зонам доступности и используйте AWS Auto Massing Groups для избыточности
  • Защита DDOS с AWS Shield Для сетевых и транспортных уровней автоматически атакует атаку
  • Брандмауэры с группами безопасности Брандмауэр на уровне хоста для веб-серверов и серверов приложений.
  • Кэширование с AWS Elasticache Редакция Redis и Memcached для более низкой задержки частых запросов.
  • Управляемые базы данных с Amazon RDS Высоко доступная архитектура DB с несколькими AZ с 6 возможными двигателем DB
  • Статическое хранение и резервное копирование с Amazon S3 Простая, HTTP-хранение объектов для резервного копирования и активов.

Ключевые компоненты AWS Cloud Web App

  • Управление сетью
    • Группы безопасности обеспечивают безопасность на уровне хоста
    • Amazon VPC:
      • Позволяет запущенным ресурсам в изолированной сети, которую вы определили.
      • Помогает создать гибридную архитектуру с помощью аппаратного VPN, чтобы расширить ваш центр обработки данных с помощью AWS Cloud.
      • Работает с IPv4 и IPv6.
  • Доставка контента
    • CDN (сеть поставки контента) предоставляет сеть локаций края для доставки вашего контента геодисперсным образом, хотя кеширование Edge.
    • Для динамического контента CDN извлекает данные с исходного сервера
    • Вы можете использовать CloudFront в качестве глобальной сети вашего статического, динамического и потокового контента.
    • CloudFront оптимизирован для работы с AWS Services (например, S3 и EC2) с методом ценообразования с оплатой.
    • Любое другое решение кэширования края должно хорошо работать в облаке AWS.
  • Управление публичными DNS
    • Маршрут 53-это масштабируемый и высокодоступный AWS-оптимизированный сервис DNS. Это также полностью соответствует IPv6
  • Ведущая безопасность
    • Используйте группы безопасности EC2, которые являются аналогами брандмауэров, чтобы ограничить входящий доступ к вашему экземпляру только определенными подсетями, IP -адресами и ресурсами.
  • Балансировки нагрузки
    • Amazon ELB (балансировщик Elastic Load) используется для распределения входящего трафика по нескольким целям в одном и том же AZ или по нескольким AZ.
    • Он предлагает 4 типа LBS, которые обеспечивают высокодоступность, масштабируемость и безопасность.
  • Поиск хозяев и услуг
    • Большинство IP в AWS динамичны
    • Экземпляры EC2 предоставляются как государственные, так и частные конечные точки DNS, которые доступны через Интернет
    • Вы должны назначить статический IP-адрес (Elastic IP-IP в терминологии AWS) для экземпляров и служб, которые требуют последовательных конечных точек, таких как основные базы данных, центральные файловые серверы и балансировщики нагрузки с EC2.
  • Кэширование
    • Amazon Elasticache-это высокодоступная и автоматическая масштабируемая веб-сервис кэша в памяти, соответствующий протоколу Memcached и Redis.
  • DB (конфигурация, резервное копирование и аварийное переключение)
    • Использование Amazon RDS
      • Предоставьте доступ к популярным двигателям DB в облаке
      • Поддерживает MySQL, PostgreSQL, MS SQL Server и Oracle.
      • Легкая и гибкая масштабируемость как вычислительных ресурсов, так и емкости хранения
      • Резервное копирование с периодами удержания
      • Развертывания с несколькими аз-аз для повышения доступности
      • Читать реплики, чтобы масштабировать для тяжелых рабочих нагрузок
    • Хостинг и RDBMS в экземпляре EC2
      • Установите выбор RDBMS в экземпляр EC2
      • Конечная гибкость архитектуры в соответствии с вашими требованиями
      • Amazon EBS для сдержанного хранилища для данных и журналов.
      • Для требовательных рабочих нагрузок вы можете использовать Amazon EBS, предоставляемые IOPS и указать требуемые IOPS.
    • Нереляционные DBS
      • Amazon DynamoDB: облачное решение со всеми AWS Goodty Offect.
      • Amazon DocumentDB: Готовы к данным JSON в масштабе. Совместим с MongoDB
      • Amazon Keyspace: Полная совместимость с Apache Cassandra
      • Amazon Neptune: надежный и полностью управляемый график DB.
      • Amazon QLDB (Quantum Ledger DB): полностью управляемый книга DB с прозрачным, неизменным и криптографически проверяемым журналом транзакций, принадлежащих центральному органу.
      • Amazon Timestream: Сервер меньше временных рядов БД для IoT и эксплуатационных приложений.
      • Вы можете использовать EC2 для размещения любого другого нереляционного БД, с которым вы работаете
  • Хранение и резервное копирование
    • Используйте Amazon S3 для статического хранилища, таких как файлы и носитель.
    • Используйте Amazon EBS в качестве прикрепленных объемов хранения с экземплярами EC2.
    • EBS работает в другом жизненном цикле от экземпляра, к которому он прикреплен.
    • Вы можете сделать снимок объема EBS и сохранить его на S3. Поскольку только изменения хранятся, более частый снимок снижает время снимка
    • EBS достигает 16 ТБ, а способность снимать объемы для повышения производительности ввода -вывода.
    • Используйте EBS Provisioned IOPS для удовлетворения потребностей ваших iO -интенсивных рабочих нагрузок — 16K (все типы экземпляров) до 64K (Nitro Systems) и IO2 Block Express Tolume для до 256 тыс. Иопс и макс.
  • Автоматическое масштабирование
    • Используйте автоматическое масштабирование в одиночку с помощью CloudWatch и Amazon ELB (балансировщик Elastic Load), чтобы автоматически масштабировать/вниз/вниз/введите/выходить на основе результатов на основе мониторинга.
    • Используйте группы автоматического масштабирования для масштабирования различных слоев приложения независимо.
    • Вы также можете масштабировать экземпляры EC2 вручную, используя API EC2
  • Дополнительные функции безопасности
    • Большой масштаб сети AWS помогает защитить вас от атак DDOS за счет масштабирования вашего приложения в ответ на большой трафик, используя ELB, CloudFront и Route53
    • AWS Shield: Управляемый сервис, который защищает вас от различных форм атак DDOS. Это стандартное предложение бесплатно и активно в вашем аккаунте и защищает от общих атак. Расширенное предложение предоставляет вам видимость почти в реальном времени на атаку, интеграцию с другими услугами и возможность получить доступ к команде реагирования AWS DDOS для крупномасштабных сложных атак.
    • AWS WAF (Framework Web App): Работает с CloudFront of Application Load Balancer для защиты ваших приложений от XSS, инъекции SQL и атак DDOS. Также поставляется с полностью изготовленным API, помогающим вашему в автоматизации.
    • Управляющий брандмауэром AWS: Центрально настроить и управлять правилами брандмауэра в своих учетных записях и приложениях в Организации AWS
  • Отказоустойчивость
    • Зоны доступности являются физически отделенными местоположениями для избыточности приложений и сбои. Рекомендуется развернуть экземпляры EC2 в нескольких AZS. Вы должны убедиться, что распределение положений между AZS гарантирует высокую доступность и согласованность, что уже управляется для вас в большинстве AWS.

Ключевые соображения по использованию AWS для хостинга веб -приложений

Больше нет физических приборов

Больше нет брандмауэров HW, маршрутизаторов, балансировщика нагрузки с вашей облачной архитектурой AWS, только SW Solutions.

Брандмауэры везде

Каждый хост заперт брандмауэром. Вы должны проанализировать трафик между хостами в вашей архитектуре, чтобы определить, какие порты должны быть открыты и создать группы безопасности в соответствии с. Вы можете использовать списки управления доступа сети в Amazon VPC для блокировки уровня подсети.

Рассмотрим доступность нескольких обработчиков обработки данных

Думайте об AZS в области AWS как отдельные обработки данных, логически и физически разделены. Вы можете использовать Amazon VPC, чтобы сохранить свои ресурсы в той же логической сети, используя AZS.

Угроза хозяина как эфемерные и динамичные

Никаких предположений на IP-IP-хосте, местоположение, постоянная доступность хоста. Ключом к неисправности и высокой масштабируемости ваших приложений является динамический дизайн, который соответствует дикой природе облачного мира.

Рассмотрим контейнеры и без серверов

Подумайте о модернизации вашего приложения с помощью контейнеров и технологий Serveless, используя такие услуги, как AWS Fargate и AWS Lambda для более гибких приложений.

Рассмотрим автоматическое развертывание

  • Amazon Lightsail: Простые приложения разработки VPS со всем необходимым для создания веб -приложения или веб -сайта. Идеально подходит для простых рабочих нагрузок и быстрого развертывания.
  • AWS Elastic Beanstalk: простой в использовании услуги для развертывания и масштабирования веб-приложений, разработанных с большинством технологий (Ruby, Nodejs, Docker, ..) на знакомых серверах (Apache, Nginx, ..)
  • AWS App Runner: быстро развернуть ваши веб -приложения для контейнеров в масштабе без особых усилий и без предварительных знаний о инфраструктуре.
  • AWS Amplify: Framework of Tools and Services, чтобы помочь фронтальным веб-разработчикам и разработчикам мобильных устройств создавать масштабируемые продукты с помощью бэкэнд с AWS. Также используется для развертывания статических веб -приложений.

Вывод

Миграция в облачную архитектуру AWS требует некоторого рассмотрения и изменений, но на самом деле окупается.

Оригинал: «https://dev.to/awsmenacommunity/web-application-hosting-in-the-aws-cloud-19j3»