Общие сведения об облачных вычислениях: экземпляр AWS EC2

Инстанс EC2 — Как создаются инстансы EC2 — Инстансы EC2 и регионы AWS
Если вы никогда не слышали об AWS, я рекомендую вам начать с этой статьи , в которой рассматриваются основы клиентов, серверов, баз данных и облачных вычислений. В этой статье рассматриваются некоторые важные концепции, но не предоставляется основная информация о внутренней работе Интернета или серверов.
Вкратце, облачные вычисления — это продажа вычислительных ресурсов — например, баз данных, серверов и программного обеспечения — через Интернет. Отдельные лица, такие как вы, могут арендовать пространство и время в аппаратной инфраструктуре, созданной поставщиками облачных услуг по всему миру. Это упрощает процесс развертывания программного обеспечения.
Забудьте о дорогостоящей настройке инфраструктуры и растрате ресурсов. Малые предприятия и частные лица теперь имеют доступ к ресурсам, которые когда-то были доступны только компаниям из списка Fortune 500. Они могут развертывать приложения по всему миру несколькими щелчками мыши, и они будут платить только за те ресурсы, которые они используют, когда они их используют.
Экземпляр EC2
Экземпляры EC2 — это виртуальные серверы, работающие в инфраструктуре облачных вычислений Amazon. На одном физическом сервере AWS размещается несколько гостевых виртуальных серверов EC2. Давайте разберем это, взглянув на серверы в прошлом, виртуальные машины и то, как виртуальные машины связаны с инстансами EC2.
Серверы в прошлом
В прошлом серверы были просто огромными физическими компьютерами. Чем больше вычислительной мощности и объема памяти требовалось компании, тем большую аппаратную инфраструктуру ей приходилось создавать. С этой парадигмой была огромная проблема: растрата ресурсов. Прекрасным примером является веб-сайт, который имеет высокий трафик только в определенное время года. Допустим, свадебная компания в Сибири построила серверную инфраструктуру и запустила сайт. Они решают запуститься в июне.
Бизнес процветает. Свадьбы происходят направо и налево, а их веб-сайт испытывает большой трафик пользователей. К счастью, они спланировали заранее и построили серверы, чтобы справиться с нагрузкой. Затем наступает зима. Падает пользовательский трафик. Кто планирует свадьбу в Сибири посреди зимы? Надежная серверная инфраструктура, необходимая летом, зимой становится бременем. Компания несет расходы на обслуживание оборудования, которое не используется полностью.
Виртуальные машины снижают потери ресурсов
Бесшумные серверы этой свадебной компании представляют собой проблему растраты ресурсов. В прошлом у компаний не было удобного способа эффективного распределения ресурсов в периоды как высокого, так и низкого пользовательского трафика. Решением стала виртуальная машина (ВМ).

Виртуальные машины — это программные подкомпьютеры, работающие внутри физической машины. На одной физической машине может размещаться несколько виртуальных машин. Физическая машина называется хост-машиной, а виртуальные машины — гостевыми машинами. Каждой ВМ выделяются собственные вычислительные ресурсы (память, ЦП, хранилище), она отличается и изолирована от других ВМ, работающих на той же машине. Это благодаря их отдельному ядру, программному обеспечению, которое обеспечивает все основные функции компьютера. Хост-компьютер использует гипервизор, программный уровень, который создает и запускает виртуальные машины, совместно используя ресурсы хоста.
Виртуальные машины виртуализируют серверы. Они позволяют разделить одну машину на несколько изолированных вычислительных сред. Это позволяет компаниям продавать пространство и время на своем оборудовании и снижать потери ресурсов. Например, предположим, что я президент сибирского магазина лыжной экипировки. Я хочу запустить веб-сайт, но не хочу заниматься построением архитектуры физического сервера. Я знаю, что трафик пользователей будет высоким зимой и низким летом, и я хочу избежать растраты ресурсов.
Я решаю обратиться в свадебную компанию. Я предлагаю им сделку: я заплачу им за развертывание моего веб-сайта на их физическом оборудовании. Мы оба можем запускать наши приложения на виртуальных машинах, полностью вычислительно изолированных друг от друга. Это беспроигрышный вариант. Они обслуживают оборудование, я плачу за их пространство и время, когда мне это нужно, и мы оба снижаем потери ресурсов.
Экземпляры EC2 — это виртуальные серверы
Это то, что предоставляет AWS EC2, но в гораздо большем масштабе. Экземпляры EC2 — это виртуальные машины, работающие на оборудовании Amazon. Точнее, это виртуальные серверы. Как и виртуальная машина, экземпляры EC2 — это гостевые машины, управляемые гипервизорами на хост-машинах. Эти хост-машины представляют собой большие физические серверы в центрах обработки данных AWS.
Любая компания или частное лицо может создать учетную запись AWS со своего компьютера и запустить экземпляр EC2 на оборудовании Amazon. Это форма инфраструктуры как услуги (IaaS), одна из инновационных технологий, предоставляемых облачными вычислениями.
Как создаются экземпляры EC2
Итак, мы знаем, что такое инстансы EC2, но есть несколько других технических компонентов, влияющих на их создание.
Образы машин Amazon (AMI)
Когда компания растет, ей обычно необходимо масштабировать серверы для обработки пользовательского трафика. Это можно сделать вертикально, добавив ресурсы на существующий сервер. Это также можно сделать горизонтально, добавив дополнительные серверы. Один из способов, которым AWS упрощает масштабирование в облаке, — использование Amazon Machine Image (AMI).

AMI — это настраиваемые шаблоны для инстансов EC2. Они определяют конфигурацию: операционную систему (Linux, Ubuntu, Windows и т. д.), сервер приложений и все необходимые установки программного обеспечения. Говоря нетехническим языком, AMI — это план, а экземпляр EC2 — это машина, построенная на основе этого плана. Если вы программировали на объектно-ориентированном языке, подумайте об AMI как о классе, а об экземплярах EC2 — как о созданном из него объекте.
Вместо создания и настройки каждого экземпляра EC2 вы можете создать несколько экземпляров EC2 с одинаковой конфигурацией из одного и того же шаблона AMI. Это эквивалентно горизонтальному масштабированию вашей архитектуры всего за несколько кликов.
Типы экземпляров
Когда вы создаете экземпляр EC2 из шаблона AMI, вам также необходимо выбрать тип экземпляра. Помните, что экземпляр EC2 — это виртуальная машина. Виртуальным машинам выделяются ресурсы с хост-компьютера через гипервизор.
Тип экземпляра описывает, сколько ресурсов будет выделено вашей виртуальной машине EC2. Более крупный уровень будет выделять инстансу EC2 больше ресурсов с хост-компьютера. Это также повлечет за собой дополнительные расходы.
Типы сгруппированы в семейства в зависимости от потребностей их целевых приложений. Например, если приложению требуется большая вычислительная мощность для моделирования больших данных, его следует развернуть с типом экземпляра из семейства оптимизированных для вычислений. Более простые примеры семейств включают в себя семейства общего назначения, оптимизированные для памяти и оптимизированные для хранения.

AWS предоставляет пользователям бесплатный пробный период. Это уровень t2.micro. В зонах (описанных в следующем разделе), где уровень t2.micro недоступен, уровень бесплатного пользования называется t3.micro. В следующей статье я предоставлю пошаговое руководство по развертыванию приложений в AWS. Эти приложения должны быть развернуты только на уровне t2.micro или t3.micro и должны быть удалены после обучения, чтобы избежать каких-либо расходов.
С одного AMI вы можете запускать несколько разных типов экземпляров для своего сервера. Все они будут содержать ту же конфигурацию, которую вы изначально указали в своем AMI, но они будут отличаться объемом ресурсов, которые им выделяются на основе уровней, указанных вами для типа экземпляра.
Хранение, безопасность и многое другое
Важно отметить, что в создание инстансов EC2 интегрировано несколько других функций. Например, вы можете создать тома Elastic Block Storage (EBS) в качестве хранилища для базы данных. Вы также можете указать конфигурации для параметров безопасности, мониторинга, сетей и многого другого. Я подробно рассмотрю эти темы в следующих статьях.
Инстансы EC2 и регионы AWS
При создании инстансов EC2 возникает нетривиальный вопрос, где их создавать. Одним из самых больших препятствий для скорости сети является расстояние. То есть расстояние от клиента, запрашивающего информацию, до сервера, выдающего ответ. Наличие сети доступных ресурсов на разных континентах ограничивает расстояние от приложения до его конечного пользователя. Это коррелирует с более быстрым временем загрузки для конечных пользователей. К счастью, у AWS есть центры обработки данных по всему миру.

Регионы и зоны доступности
AWS разделяет большие географические области на изолированные регионы, в которых доступны сервисы. Эти регионы подразделяются на изолированные зоны доступности. Эти зоны позволяют компаниям размещать серверы и другие ресурсы как можно ближе к своим конечным пользователям, чтобы минимизировать время загрузки.
Регионы и зоны доступности изолированы друг от друга
Регионы изолированы от других регионов, а зоны доступности изолированы от других зон доступности. Это технический способ сказать, что экземпляр EC2, развернутый в одной зоне доступности, не развернут в другой. Экземпляры EC2, реплицированные из AMI в нескольких зонах доступности, представляют собой отдельные виртуальные машины. Сбои в одном экземпляре не повлияют на экземпляры в другой зоне.
Это может быть использовано для устранения единых точек отказа для вашего приложения. Еще лучше, если экземпляр в одной зоне выходит из строя, вы можете перенаправить трафик из этой зоны на экземпляр EC2, работающий в другой зоне. Это ограничивает время простоя в случае сбоев.

При создании AMI компании могут указать регион, в котором они хотели бы его создать. Позже они могут скопировать этот AMI в другие регионы, если это необходимо. При создании экземпляра EC2 из AMI этот AMI должен существовать в том же регионе, в котором вы пытаетесь развернуть свой экземпляр. Экземпляр EC2 относится к зоне доступности, которая указывается при создании или автоматически выбирается Amazon.
Давайте свяжем это вместе
Экземпляры EC2 — это виртуальные машины. Компании могут использовать инстансы EC2 для аренды места и времени в глобальной аппаратной инфраструктуре Amazon. Они создаются из образов машин Amazon. Образы AMI похожи на шаблоны, из которых можно создать несколько экземпляров с одинаковыми параметрами конфигурации. Каждый из этих экземпляров имеет определенный тип, определяющий объем ресурсов, разделенных на этот экземпляр. Экземпляры можно дополнительно настроить с помощью параметров хранилища, безопасности и сети.
AMI привязаны к региону AWS. Экземпляры EC2 создаются из AMI, существующих в том же регионе AWS, в котором они будут развернуты. Инстансы EC2 привязаны к зонам доступности внутри более крупных регионов AWS. Эти регионы и зоны изолированы и предоставляют компаниям возможность устранить единые точки отказа.
Подпишитесь на меня, если хотите прочитать больше статей, которые делают веб-технологии на уровне производства простыми в использовании и понимании!
Дальнейшее чтение
- https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html
- https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html
- https://www.edureka.co/blog/ec2-instances-in-aws/
- https://www.techtarget.com/searchaws/definition/Amazon-EC2-instances#:~:text=An%20Amazon%20EC2%20instance%20is,Web%20Services%20(AWS)%20infrastructure.