Запуск / остановка пользовательских экземпляров среды выполнения движка приложений Google

Я создал небольшую веб-службу, используя Node.js и PhantomJS, и развернул ее на движке приложений Google, используя ее гибкие среды ... Проблема в том, что служба используется только полчаса каждый день, но экземпляры виртуальных машин запускают все время, и я плачу за это ... Итак, мне нужно иметь возможность автоматически запускать экземпляры до запланированного времени выполнения моего приложения, а затем автоматически останавливать их. Я пробовал использовать задания Cron для вызова start / stop через API, как в здесь, но это не удалось ..

Спасибо за аванс


person ahmadelmorshedy    schedule 10.07.2016    source источник
comment
всегда есть хотя бы один запущенный экземпляр для движка приложения, да, его невозможно остановить   -  person Igor Artamonov    schedule 10.07.2016
comment
У меня два случая, и я не могу остановить ни один из них   -  person ahmadelmorshedy    schedule 13.07.2016


Ответы (1)


Похоже, что в настоящее время мы не предоставляем метод остановки версии в остальном API: https://cloud.google.com/appengine/docs/admin-api/

Однако вы можете остановить версию, выполнив эту команду:

gcloud app versions list
gcloud app versions stop <version>

Это обеспечит отключение виртуальных машин. Когда вы будете готовы снова их включить ...

gcloud app versions start <version>

Надеюсь это поможет!

person Justin Beckwith    schedule 28.07.2016
comment
Привет, Джастин, спасибо за ответ, я автоматически остановил экземпляр, используя другое приложение python для движка приложений, используя пакет googleapiclient, к сожалению, экземпляр запускается автоматически примерно через 5 минут, вы знаете причину ?? .. Спасибо опять таки - person ahmadelmorshedy; 31.07.2016
comment
Вы не можете использовать такие команды экземпляра :). Экземпляры всегда запускаются и останавливаются в течение жизненного цикла приложения ядра приложения. Если вы хотите остановить приложение, вам нужно остановить версии. Я выясню, почему версия API не является общедоступной в понедельник, но на данный момент команда gcloud, вероятно, является лучшим выбором. - person Justin Beckwith; 31.07.2016
comment
Хорошие новости! Я поговорил с другим инженером в команде, и выяснилось, что вы / можете / сделать это с помощью API. Обновите serveStatus с помощью этого API: cloud.google.com/appengine/docs/admin-api/reference/rest/ - person Justin Beckwith; 02.08.2016
comment
Спасибо, Джастин, сейчас я работаю над другой задачей, но еще вернусь к этому вопросу, большое спасибо :) - person ahmadelmorshedy; 04.08.2016