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

Как включить и использовать последовательный терминал HP Microserver Gen9?

У меня HP ProLiant Microserver Gen9. У него есть HP ILO версии 4, но удаленная консоль на основе Java не работает надежно, и я не могу использовать ее после экрана POST в бесплатной версии ILO (просит меня купить расширенную лицензию ILO). Поэтому я хочу вместо этого использовать последовательную консоль для входа на сервер.

Что мне нужно сделать в системе Ubuntu, чтобы получить все этапы (POST, конфигурация BIOS, вывод GRUB, возможное приглашение входа) процесса загрузки в последовательную консоль через сетевой порт ILO сервера? Как к нему подключиться?

Порт ILO на сервере HP по умолчанию запрашивает IP-адрес через DHCP. Поэтому вам просто нужно подключить его к сети, в которой работает DHCP-сервер. Он объявит о себе с именем хоста, например ILOCZ12345678 что должно упростить поиск в таблице аренды DHCP вашего маршрутизатора или, например, в journalctl/syslog если вы запускаете DHCP-сервер (например, isc-dhcp-server) в такой системе, как Ubuntu.

После того, как вы нашли IP (скажем, 1.2.3.4), вы можете подключиться к графическому интерфейсу МОТ через https://1.2.3.4. Но это не то, что мы ищем, нам нужна последовательная консоль. Поэтому вместо этого используйте интерфейс SSH МОТ: ssh Administrator@1.2.3.4. Пароль по умолчанию указан на маленькой бумажной бирке, поставляемой с микросервером.

Обратите внимание, что это также работает, когда сервер выключен, если в него воткнут кабель питания (это точка зрения МОТ).

Там введите ? чтобы увидеть все варианты. Отрывок:

POWER    : Control server power.
UID      : Control Unit-ID light.
ONETIMEBOOT: Access One-Time Boot setting.
NMI      : Generate an NMI.
VM       : Virtual media commands.
LANGUAGE : Command to set or get default language
VSP      : Invoke virtual serial port.
TEXTCONS : Invoke Remote Text Console.
TESTTRAP : Sends a test SNMP trap to the configured alert destinations.

Мы выбираем VSP получить последовательный порт; TEXTCONS вероятно, тоже было бы неплохо, но вам придется купить расширенную лицензию МОТ, чтобы использовать ее.

Теперь, как только мы это сделаем, с работающей системой она просто зависнет на

</>hpiLO-> VSP

Virtual Serial Port Active: COM2

Starting virtual serial port.
Press 'ESC (' to return to the CLI Session.

Это потому, что по умолчанию Ubuntu (я использую здесь 16.04) не делает запрос на вход через последовательный порт. Мы изменим это позже. Сначала мы перезагружаемся, чтобы убедиться, что конфигурация BIOS уже работает.

Увидеть его загрузку через последовательный порт

В другом сеансе ssh МОТ перезагрузитесь, используя:

</>hpiLO-> power reset

status=0
status_tag=COMMAND COMPLETED
Sun Feb  5 20:05:59 2017

Server resetting .......

Через некоторое время вы заметите, что сеанс, в котором VSP работает, очистил экран.

Затем появляется:

                            4096 MB Installed                                   

ProLiant System BIOS - J06 (11/02/2015)                                         
Copyright 1982, 2015 Hewlett-Packard Development Company, L.P.                  



1 Processor(s) detected, 2 total cores enabled, Hyperthreading is not supported
Proc 1:  Intel(R) Celeron(R) CPU G1610T @ 2.30GHz      
HP Power Profile Mode: Custom
Power Regulator Mode: Dynamic Power Savings

Redundant ROM Detected - This system contains a valid backup System ROM.
Inlet Ambient Temperature: 18C/64F

HP SmartMemory authenticated in all populated DIMM slots.

HP AHCI SATA Controller (v0.90)            
Copyright (c) 2011, Hewlett-Packard Development Company, L.P.
HP AHCI SATA Controller (v0.84)             WD30EFRX-68EUZN0
   Port3: S.M.A.R.T Capable Hard Disk - WDC WD30EFRX-68EUZN0
Copyright (c) 2011, Hewlett-Packard Development Company, L.P.
                                                                  <F9 = Setup>
iLO 4 Standard                           
iLO 4 v2.50 Sep 23 2016 192.168.178.106

Broadcom NetXtreme Ethernet Boot Agent
Copyright (C) 2000-2015 Broadcom Corporation
All rights reserved.
Press Ctrl-S to enter Configuration Menu

Это экран POST. Подождите немного и посмотрите:

 Press "F9" key for ROM-Based Setup Utility
 Press "F10" key for Intelligent Provisioning
 Press "F11" key for Default Boot Override Options
 Press "F12" key for Network Boot
 For access via BIOS Serial Console
 Press "ESC+9" for ROM-Based Setup Utility
 Press "ESC+0" for Intelligent Provisioning
 Press "ESC+!" for Default Boot Override Options
 Press "ESC+@" for Network Boot

Если вы хотите настроить BIOS, сейчас ваше время: этот экран появляется только на 1 секунду или около того. Клавиши F * обычно не работают, их нужно экранировать: вам буквально нужно нажать ESC клавишу, а затем цифру / символ, как указано выше. Например. ESC а потом 5 для F5.

Теперь, без дополнительных настроек, мы получаем тишину на последовательном порту, потому что, как упоминалось выше, ни GRUB2, ни терминалы входа в систему Ubuntu по умолчанию не выводят на последовательный порт в 16.04.

Итак, мы настраиваем сервер (теперь через SSH) на использование последовательного порта.

Заставляем GRUB2 использовать последовательный порт

Я выполнил инструкции на https://www.hiroom2.com/2016/06/06/ubuntu-16-04-grub2-and-linux-with-serial-console/ изменение /etc/default/grub как описано (- означает закомментировать строку #, + означает добавить строку):

DEFAULT=0
-GRUB_HIDDEN_TIMEOUT=0
-GRUB_HIDDEN_TIMEOUT_QUIET=true
-GRUB_TIMEOUT=10
+GRUB_TIMEOUT=1
 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
-GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
-GRUB_CMDLINE_LINUX=""
+GRUB_CMDLINE_LINUX_DEFAULT=""
+GRUB_CMDLINE_LINUX="console=tty1 console=ttyS0,115200"

-#GRUB_TERMINAL=console
+GRUB_TERMINAL="console serial"
+GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"

Установлен тайм-аут 10 секунд, потому что последовательное соединение перерисовывает экран очень медленно, и нам нужно достаточно времени, чтобы иметь возможность отменить тайм-аут, нажав, например, в GRUB.

После изменения файла, как описано, запустите sudo update-grub, и перезагрузитесь.

Теперь вы должны увидеть в своем VSP следующий сеанс после экрана POST:

error: serial port `com2' isn't found
error: terminal `serial' isn't found
error: terminal `serial' isn't found
error: no video mode activated

Мы игнорируем это (если вы знаете, как от этого избавиться, прокомментируйте). Спустя короткое время появляется:

 GNU GRUB  version 2.02~beta2-36ubuntu3.6

 +----------------------------------------------------------------------------+
 |*Ubuntu                                                                     |
 | Advanced options for Ubuntu                                                |
 | Memory test (memtest86+)                                                   |
 | Memory test (memtest86+, serial console 115200)                            |
 |                                                                            |
 |                                                                            | 
 +----------------------------------------------------------------------------+

      Use the  and  keys to select which entry is highlighted.          
      Press enter to boot the selected OS, `e' to edit the commands       
      before booting or `c' for a command-line.                           

Это обычный экран GRUB, и вы можете переместить * указатель с помощью клавиш вверх и вниз.

Использование для входа в Ubuntu последовательного порта

Следующие фрагменты вдохновлены http://0pointer.de/blog/projects/serial-console.html

sudo cp /lib/systemd/system/serial-getty@.service /etc/systemd/system/serial-getty@ttyS1.service

Теперь редактировать /etc/systemd/system/serial-getty@ttyS1.service:

Измените строку

ExecStart=-/sbin/agetty --keep-baud 115200,38400,9600 %I $TERM

к

ExecStart=-/sbin/agetty %I 115200 vt100-nav

Мы особенно заботимся о том, чтобы установить режим vt100-nav - Я обнаружил, что логин не отображается без этого изменения.

Я не уверен, почему мы должны использовать ttyS1 здесь пока в GRUB мы настроили ttyS0 - но у меня не получается использовать S0 Вот. Если кто знает почему, прокомментируйте.

Запустите tty через:

sudo systemctl start serial-getty@ttyS1.service

Теперь вы должны увидеть приглашение для входа в VSP сеанс. Сделайте это автоматически при загрузке, используя:

sudo systemctl enable serial-getty@ttyS1.service

И перезагружаемся. Теперь вы должны увидеть весь вывод в VSP, от POST к GRUB2 до приглашения входа в систему.

Использовать textcons из интерфейса ssh МОТ. Для этого может потребоваться продвинутая лицензия МОТ, но в то же время существует очень низкий барьер для ее получения.

Большинство организаций не заинтересованы в том, чтобы виртуальный последовательный порт работал, потому что это требует времени.

Google на лицензию МОТ
или получить демонстрационная лицензия от HP
или просто заплатите 25 долларов за Ключ МОТ от Amazon

В RHEL7 «ошибка: терминал` serial 'не найден »происходит из-за того, что Anaconda не помещает« последовательный »драйвер устройства в образ RAM. Можно восстановить RAM-диск с отсутствующим драйвером, но Grub, похоже, достаточно работает без него.