Почему люди используют AWS поверх Docker Containers? - PullRequest
0 голосов
/ 05 июля 2019

AWS предоставляет такие услуги, как Elasticache, Redis, базы данных, и все они оплачиваются ежечасно. Но эти сервисы также доступны в виде Docker-контейнеров в Docker Hub. Все перечисленные выше сервисы AWS используют экземпляр. Смысл, независимый экземпляр для баз данных и все. Но что, если начать использовать экземпляр ec2 и начать загружать все изображения для всех зависимостей от баз данных. Это сэкономит им много денег, верно?

Я использовал докер раньше, и он содержит почти все изображения для сервисов, предоставляемых aws.

1 Ответ

1 голос
/ 05 июля 2019

EC2 не является бесплатным. Вы можете, например, запустить MySQL на экземпляре EC2. Это будет дешевле, чем использование RDS, но вам все равно придется платить за вычислительные ресурсы и ресурсы хранения, которые он потребляет. Даже если вы запускаете базу данных на большем совместно используемом экземпляре EC2, вам необходимо учитывать ее циклы хранения и ЦП, и вам может потребоваться больше или больше экземпляров для выполнения там большего количества задач.

(На данный момент в регионе us-east-1 экземпляр MySQL db.m5.large составляет 0,171 долл. США в час или 895 долл. США в год с предоплатой, плюс 0,115 долл. США за ГБ емкости в месяц; тот же самый экземпляр EC5 m5.large стоит 0,096 долл. США в час или 501 долл. США в год, а объем хранилища составляет 0,10 долл. США за ГБ в месяц. *

Существуют веские причины для запуска баз данных, не входящих в Docker. В частности, в среде микросервиса контейнеры Docker приложений не имеют состояния, реплицируются, регулярно обновляют свои изображения, могут свободно удаляться и могут быть перемещены. через хосты (удаляя и воссоздавая их где-то еще). (В Kubernetes / EKS посмотрите, как работает объект развертывания.) Ни одно из этого не относится к базам данных, которые все о сохранении состояния, не могут быть удалены, не могут быть перемещены (данные должны поставляться), и должно быть резервное копирование.

RDS имеет некоторые полезные функции. Вы можете изменить размер экземпляра базы данных с некоторым временем простоя, но без потери данных. AWS сохранит для вас управляемые снимки, и очень просто (если медленно) создать новую базу данных из снимка вашей существующей базы данных. Обновления базы данных исправлений автоматически применяются для вас. Вы можете фактически заплатить Amazon за эти функции или заплатить своему собственному администратору базы данных за выполнение тех же задач для базы данных, работающей на экземпляре EC2.

Ничто из этого не означает, что у вас есть для использования RDS, вы фактически экономите на AWS, запустив то же программное обеспечение на EC2, и оно может быть или не быть в Docker. Тем не менее, RDS - разумный выбор в остальном мире Docker. Те же основные компромиссы применимы и к другим услугам, таким как Elasticache (для Redis).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...