Назад | Перейти на главную страницу

Как я могу быть уверен, что виртуальная машина на GCP не была отключена из-за возможности вытеснения? (постфактум, используя stackdriver)

Я ищу запрос для stackdriver, который будет выдавать события вытеснения на виртуальных машинах GCP.

Зачем? Потому что у меня стручки исчезают из узлов. По всей видимости, эти узлы позже закрываются из-за отсутствия рабочих нагрузок и включения автомасштабирования. Таким образом, все выглядит так, как будто капсулы умирают первыми, а автомасштабирование действует должным образом и отключает узлы. Тем не менее, этого не происходит, когда я избегаю вытесняемых виртуальных машин / узлов.

Журналы вытеснения в этом экземпляре можно найти с помощью следующего расширенного фильтра Stackdriver [1] в Предварительные запросы журналов.

Вы можете изменить последнюю строку этого фильтра на [2], чтобы проверить, когда он был запущен в последний раз. В качестве альтернативы вы можете запустить на виртуальной машине такие команды, как «время безотказной работы», чтобы узнать, сколько времени она существует.

[1]

resource.type="gce_instance"
resource.labels.instance_id="[INSTANCE ID]"
jsonPayload.event_subtype="compute.instances.preempted"

[2] jsonPayload.event_subtype="compute.instances.start"

Коротышка, задав этот вопрос, я нашел https://cloud.google.com/logging/docs/audit/#system_event

Итак, фильтрация для logName="projects/<my-project-name>/logs/cloudaudit.googleapis.com%2Fsystem_event" показал, что происходит пара упреждений. Я не знал, что вытесненные ресурсы автоматически воссоздаются. Это объясняет, почему у меня создалось впечатление, что поды исчезают, а узлы остаются пустыми. (смотрите также Почему модули на узле, который был воссоздан после вытеснения, застревают в ContainerCreating?)