У меня есть сервер VNC, работающий на облачной виртуальной машине Google. Возникла странная ошибка «Не удается открыть Chrome, недостаточно памяти». Итак, я перезапустил.
Сервер VNC - это контейнер докеров, настроенный на автоматический перезапуск.
Теперь, независимо от того, сколько раз я «сбрасываю» или «останавливаю» экземпляр, вход по SSH зацикливается навсегда и истекает время ожидания. И сервер VNC 404s.
Как мне отладить это, если я не могу использовать ssh?
Самый простой способ проверить, что происходит на вашей виртуальной машине, перейти на Compute Engine
-> VM instances
-> щелкните NAME_OF_YOUR_VM -> на VM instance details
найти раздел Журналы и нажмите на Serial port 1 (console)
и там вы найдете множество сообщений журнала, в которых следует искать в основном ошибки «Нет места». Как вы можете найти в документации Обработка ошибки "Не удалось подключиться, повторная попытка ...":
На загрузочном диске экземпляра закончилось свободное место. Когда соединение установлено, гостевая среда обновляет файл ~ / .ssh / authorized_keys с открытым ключом SSH, используемым для текущего сеанса. Если на диске заканчивается свободное место, обновление не выполняется. Чтобы определить проблемы с дисковым пространством, проверьте вывод последовательной консоли экземпляра и найдите ошибки "Нет места".
Если вы обнаружили сообщение об ошибке «Нет места», следуйте этим инструкциям:
- Изменить размер загрузочный постоянный диск экземпляра, чтобы увеличить его размер. Если образ операционной системы, используемый экземпляром поддерживает автоматическое изменение размера, это самый простой вариант, поскольку операционная система автоматически изменяет размер корневого раздела в соответствии с новым размером после перезапуска экземпляра.
- Если вы знаете, какие файлы используют дисковое пространство, создать сценарий запуска который удаляет ненужные файлы и освобождает место для
экземпляр для запуска. Перезапустите экземпляр, чтобы скрипт выполнил
и очищает файлы. Будьте осторожны, используйте правильную команду и
удалите правильные файлы. После того, как ваш экземпляр запустится и вы сможете подключиться к нему через SSH, установите сценарий запуска
элемент метаданных, чтобы он не продолжал удалять файлы.- Для получения информации о том, как получить доступ к диску экземпляра, см. Общие советы по использованию Compute Engine.
а в некоторых случаях следует следовать руководству по восстановлению недоступного экземпляра или полной загрузке диска:
Если экземпляру полностью не хватает места на диске или если он не работает в гостевой среде Linux, тогда автоматическое изменение размера вашей корневой файловой системы невозможно, даже после того, как вы увеличили размер постоянного диска, который его поддерживает. Если вы не можете подключиться к своему экземпляру или ваш загрузочный диск заполнен и вы не можете изменить его размер, вы должны создать новый экземпляр и воссоздать загрузочный диск из снимка, чтобы изменить его размер.
пошаговые инструкции вы можете найти Вот.
Если ваша проблема не связана с дисковым пространством ты можешь попробуйте отладить его с помощью сценарий устранения неполадок для Compute Engine для выявления проблем с входом в систему по SSH и доступностью вашего экземпляра на базе Linux, который предоставляет Google.
Кроме того, вы можете попробуйте подключиться к вашей виртуальной машине через последовательную консоль следуя этому руководство, но имейте в виду, что:
Интерактивная последовательная консоль не поддерживает ограничения доступа на основе IP, такие как белые списки IP. Если вы включите интерактивную последовательную консоль на экземпляре, клиенты могут попытаться подключиться к этому экземпляру с любого IP-адреса.
более подробную информацию вы можете найти в документация.
Не стесняйтесь предоставить более подробную информацию в своем вопросе, и я обновлю свой ответ.