Как проще всего автоматизировать клонирование VPS (или VPS + docker)?
Если коротко, то нужна прям полная автоматизация - нажал кнопку, запустился скрипт, через 5 минут выдал данные новой VPS или контейнера, не важно. Важно, чтобы у него было свой уникальный внешний IP. Как это сделать проще всего? Пока я смотрю в сторону амазоновских сервисов, но возможна ли там 100% автоматизация непонятно...
Василий Банников, ну да, это масштабирование и есть. пришел клиент, оплатил услугу, мы ему раз, и развернули сервис в автоматическом режиме, внесли пару изменений в конфиг (id его прописали, например) и все само заработало.
Вот примеры бы работы с этим API где-то посмотреть в данном направлении, чтобы велосипеды не делать...
Александр, в документации на Амазоне есть описание всех методов.
Всё что можно сделать руками через браузер - можно повторить программно через aws cli или aws sdk
ну да, это масштабирование и есть. пришел клиент, оплатил услугу, мы ему раз, и развернули сервис в автоматическом режиме, внесли пару изменений в конфиг (id его прописали, например) и все само заработало.
Значит я неправильно понял ожидаемую механику.
Я предположил, что вы хотите масштабироваться автоматически от нагрузки. Типа если ваш сервис начал жрать в 2 раза больше ресурсов - вы его оп и перекатили на более мощную тачку или создали вторую с распределением нагрузки пополам.
А у вас получается есть N клиентов и для каждого клиента нужно разворачивать новый экземпляр.
В случае Docker кажется, что вам нужно просто параметры какие-то в докерфайле или в самом образе предусмотреть, которые можно было бы указать при развёртывании очередного экземпляра.
В случае с сырыми виртуалками - вы можете заранее подготовить образ, а при развёртывании запускать какой-нибудь ansible скрипт, который всё настроит как нужно.
Василий Банников, Спасибо. один только докер не подойдет, скорее всего, так как ему никто свой IP не выдаст. Т.е. это все равно поднять VPS и потом накатить докер тем же ansible скриптом, да.
На амазоне конечно все это возможно, создаете виртуалку со всем чем нужно, можно руками, можно скриптами и ансиблами. Потом сохраняете образ с помощью самого Amazon API или в консоли амазон... сохраняете и регистрируете его в аккаунте амазон, как AMI. И из него уже регистрируете новые машины, а IP адрес дать автоматом не проблема - запускаете ее в публичной подсети и public IP вам выделят, можете его стибрить для передачи клиенту или для создания поддомена длу рутинка через балансировщик нагрузки/target group.
Мы вот кстати используем Packer для создания образа и периодически его авто обновляем в пайплайнах.
Во всех нормальных облаках есть возможность декларативного описания шаблонов нужных ресурсов в json\xml и их автоматического развертывания через cli\powershell\api\web interface и т.п.
А еще есть terraform\ansible\puppet и т.п.