Как запустить скрипт Python в проекте Google Cloud или экземплярах AWS, не запуская их вручную? - PullRequest
0 голосов
/ 13 декабря 2018

У меня есть несколько скриптов на python, которые требуют хорошего компьютера.Вместо того, чтобы запускать экземпляры вручную в GCP или AWS, а затем убедиться, что все библиотеки Python установлены, могу ли я сделать это, например, через python, чтобы экземпляр был включен только на время, необходимое для запуска сценария?

Ответы [ 3 ]

0 голосов
/ 13 декабря 2018

У вас может быть сценарий, который вызывает интерфейс командной строки AWS для запуска экземпляра, подключения к нему и запуска сценария через SSH, а затем завершения экземпляра.См. Документацию по CLI AWS здесь - https://docs.aws.amazon.com/cli/latest/userguide/cli-ec2-launch.html.

Альтернативой предложению @ bspeagle для AWS Lambda являются облачные функции GCP.

0 голосов
/ 14 декабря 2018

Как в AWS, так и в Google Cloud вы можете делать что угодно с помощью языка программирования, включая Python.

В прошлом году AWS объявил о приостановке и возобновлении EC2.Эта функция позволяет вам настроить и настроить экземпляр EC2, а когда вы закончите обработку данных, переведите экземпляр в спящий режим.Затем вы просто оплачиваете стоимость хранения и IP-адреса.

Новое - Hibernate для ваших экземпляров EC2

Google также анонсировал alpha функций для приостановки экземпляров Compute Engine, носегодня эта функция обычно недоступна - вы должны подать заявку на ее использование.

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

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

Если вам достаточно повезло иметь работающий кластер Kubernetes, вы можете делать все с контейнером и запускать контейнер через CLI.Контейнер автоматически остановится, как только контейнер завершит свою задачу.

0 голосов
/ 13 декабря 2018

Если вы работаете в AWS, вы можете просто создать функции Lambda для своих сценариев и настроить их на таймер через Lambda или использовать Cloudwatch для их запуска.

...