Почему консоль xterm.js неактивна, и какая консоль вам нужна на самом деле
Proxmox предлагает не одну дверь к работающему гостю, и именно та, к которой тянутся, часто оказывается недоступной без всяких объяснений. Серый пункт не сломан: он ждёт двух подготовок, одной на узле и одной внутри гостя.
AtlasPVE ·
Эта статья отвечает на
- proxmox xterm js неактивен
- proxmox xterm js недоступен
- proxmox novnc или spice
- proxmox последовательная консоль
- proxmox xterm js greyed out
Вы открываете меню консоли у виртуальной машины, и один из пунктов серый. Причину никто не объясняет. У соседней машины тот же пункт работает.
Это не поломка. Proxmox VE предлагает несколько разных дверей к работающему гостю, они не взаимозаменяемы, и у одной из них есть предварительные условия, которые легко упустить, потому что о них никто не сообщает.
Двери и что каждая собой представляет
Графическая консоль. У виртуальной машины она работает всегда. Она рисует в браузере эмулируемый экран гостя, ровно так, как показал бы монитор, подключённый к физической машине. Настройки ей не нужны, потому что эмулируемая видеокарта есть всегда.
SPICE. Более богатый протокол удалённого отображения, полезный для лучшей производительности настольного гостя, для звука или для проброса локальных устройств. Он требует клиентского приложения на вашем компьютере и подходящего типа дисплея у гостя, то есть это осознанный выбор, а не значение по умолчанию.
Последовательный терминал. Чисто текстовая консоль, без графики. Именно она становится серой.
Консоль контейнера. Контейнеры вообще не эмулируют оборудование, поэтому их консоль устроена совершенно иначе. Вот почему "консоль не работает" у контейнера и у виртуальной машины это две разные задачи с двумя разными ответами.
Почему текстовая консоль недоступна
Ей нужен последовательный порт, а у виртуальных машин его нет, пока кто-нибудь не добавит. Нет порта, нет и консоли, а пункт меню просто остаётся бледным.
На узле, где это проверялось, у четырёх из восьми виртуальных машин последовательного порта не было вовсе. У этих четырёх пункт неактивен постоянно, и нигде на экране не встречается слово "последовательный".
Половина, которую добавляют и всё равно получают чёрный экран
Добавить порт виртуальной машине это сторона узла. Есть вторая сторона, и пропуск её даёт самый сбивающий с толку результат: консоль открывается, подключается и не показывает ничего.
Гость тоже должен говорить по этому проводу. На современном госте с Linux это означает службу входа, привязанную к последовательному устройству; на старых системах инициализации настраивается иначе. При желании загрузчику можно велеть отправлять туда и сообщения загрузки, и в случаях ниже именно в этом весь смысл.
Пустая последовательная консоль обычно означает не поломку. Она означает, что внутри никто не говорит по этому порту.
Зачем вообще возиться
Графическая консоль проще, поэтому честный вопрос звучит так: зачем кому-то возиться. Причины конкретные, и каждая представляет собой момент, когда графическая консоль вас подводит.
Паника ядра и сообщения загрузки. Когда гость падает, не закончив загрузку, нужный текст проносится по экрану, который нельзя прокрутить назад. Последовательная консоль отдаёт этот текст именно как текст.
Копирование и вставка, ведущие себя как в терминале. Потому что это текст, а не картинка с текстом.
Сломанная раскладка клавиатуры. Когда графическая консоль сопоставляет клавиши неверно, текстовая обычно всё ещё работает.
Потерянный сетевой доступ. Обе консоли это переживают, но текстовая остаётся пригодной, когда гостю уже слишком плохо, чтобы рисовать экран.
За какой тянуться
Для обычного взгляда на работающую машину берите графическую консоль: она есть всегда и ничего не просит.
Для гостя, который вы предполагаете однажды спасать, настройте последовательную консоль до того, как она понадобится. Делать это посреди инцидента означает править настройку, до которой не дотянуться, на машине, куда не войти. В этом порядке и заключается весь урок.
Для настольной нагрузки, где важны ощущения, SPICE стоит установки клиента.
Для контейнера пользуйтесь его собственной консолью и считайте её диагностику отдельной темой.
Что делает Atlas
Atlas не строит пятую консоль. Когда вы открываете консоль гостя из Atlas, он передаёт вас графической консоли самого Proxmox VE, и делает это намеренно: переписывать её значило бы завести вторую вещь, которой надо доверять, и вторую вещь, которая может сломаться.
Atlas помогает раньше: в тех задачах, которые вообще отправляют вас в консоль. Большая часть визитов в консоль это не сеансы отладки, а одно изменение настройки, у которого не было экрана. Такие живут в интерфейсе.
Консоль нужна в день, когда действительно что-то не так. Цель в том, чтобы обычные вторники её не требовали.
Источники
Собственная документация Proxmox. На английском, и последнее слово в этом вопросе за ней.