Obsah

Remote management

IPMI/SOL

Doporučené nastavení

Serial over Lan se detekuje v systemu jako dalsi seriova rozhrani za standardnim portem. Pokud tedy máte na desce zapojené dva COM porty, bude SOL v systému vystupovat jako ttyS2 a v grubu tedy jako --unit 2

Následující nastavení je potřeba provést v systému - tj. nastavujeme GRUB, Kernel a Getty a postupujeme stejně jako v případě Console Redirection

Pro připojení k SOL můžeme použít v linuxu příkaz ipmtool nebo využít java apletu, dodávaného výrobcem. Ja preferuju ipmtool:

USER
gandalf@sirius:~$ ipmitool -I lanplus -H adresa -U user -P heslo sol activate [SOL Session operational. Use ~? for help]

CentOS release 6.5 (Final) Kernel 2.6.32-042stab084.20 on an x86_64

aquila login:

-I lanplus definuje IPMI 2.0 sol. u jinych verzi je potreba použít jiného interfacu - viz. man ipmtool

U Supermicro serverů lze použít rovnou vestavěný ssh server. Po přihlašení na ssh spustíme SOL zadáním následujícího příkazu:

ATEN SMASH-CLP System Management Shell, version 1.04
Copyright (c) 2008-2009 by ATEN International CO., Ltd.
All Rights Reserved 
 
 
-> cd system1/sol1
/system1/sol1
 
-> start

SuperMicro iKVM

V současnosti používáme iKVM na serverech od Supermicra. Java konzole se spousti pres webove rozhrani

Je tam ovsem chyba a v 64bitovem systemu konzole nefunguje spravne. U 32bitoveho systemu tento problem neni. Pokud pouzivate 64bitovy system (problem jsem zjistil na mem Debian x64 systemu), je nutne po stisknuti tlacitka "launch" stahnout soubor launch.jnlp a tento oeditovat. Naleznete níže uvedenou sekci a přidejte tam řádky, zařinajicí property

launch.jnlp
  <resources os="Linux" arch="amd64">
    <nativelib href="liblinux_x86_64.jar" download="eager" version="1.0.3"/>
        <property name="jnlp.packEnabled" value="true"/>
        <property name="jnlp.versionEnabled" value="true"/>
  </resources>

Pokud problém najdete i v jiné verzi systému, stačí uvedené řádky překopírovat do uvedené sekce. Při každém novém přihlášení ale budete muset soubor stáhnout a editovat znova. Casem to snad bude upraveno v nove verzi FW.

Takto vypadá zobrazeni biosu přes IKVM v java apletu. Na obrazku je rovnou zobrazene potrebnme nastaveni pro funkcni Serial Over Lan - viz. dale.

smcipmitool

Zajimave taky vypada tenhle program… Je sice taky v jave, ale vypada zajimavejc a umi ovladat supermicro ipmi i pres prikazovy radek…

Přídavné PCI karty

ATEN IP8000

Tahle PCI karta za 5-6k kč dokaze pridat do pocitace IPMI… ATEN IP8000 user manual

aten_ip8000_2.jpg

IBM Remote Supervisor Adapter

Neco podobnyho od IBM, nevim jak je to s kompatibilitou a cenou: IBM_Remote_Supervisor_Adapter

HP ILO

Do linuxu je potreba nainstalovat driver pro IPMI/HP ILO. Driver je ke stazeni na adrese http://downloads.linux.hp.com/SDR/downloads/ProLiantSupportPack/Debian/pool/non-free Budeme potřebovat baličky

Před instalací je nutné nainstalovat knihovnu libc6-i386 32bitové sdílené knihovny pro AMD64.

apt-get install libc6-i386
dpkg -i hponcfg_3.1.0.0.18-11_amd64.deb hp-health_8.5.0.1.2-2_amd64.deb 

Následně pridame tyto moduly

/etc/modules
ipmi_devintf
ipmi_si

A ted jiz muzeme pouzivat prikaz ipmitool pro spravu ILO

root@ametyst:~# ipmitool bmc info
Device ID                 : 18
Device Revision           : 1
Firmware Revision         : 4.4
IPMI Version              : 2.0
Manufacturer ID           : 11
Manufacturer Name         : Hewlett-Packard
Product ID                : 0 (0x0000)
Product Name              : Unknown (0x0)
Device Available          : yes
Provides Device SDRs      : no
Additional Device Support :
    Sensor Device
    SDR Repository Device
    SEL Device
    FRU Inventory Device
    IPMB Event Receiver
    Bridge
    Chassis Device
Aux Firmware Rev Info     : 
    0x03
    0x01
    0x00
    0x00
root@ametyst:~# ipmitool lan print
Set in Progress         : Set Complete
Auth Type Support       : NONE MD5 PASSWORD 
Auth Type Enable        : Callback : NONE MD5 PASSWORD 
                        : User     : NONE MD5 PASSWORD 
                        : Operator : NONE MD5 PASSWORD 
                        : Admin    : NONE MD5 PASSWORD 
                        : OEM      : NONE MD5 PASSWORD 
IP Address Source       : Static Address
IP Address              : 10.11.23.23
Subnet Mask             : 255.255.255.192
MAC Address             : 18:a9:05:75:ae:3b
SNMP Community String   : public
IP Header               : TTL=0x40 Flags=0x40 Precedence=0x00 TOS=0x10
Default Gateway IP      : 10.11.23.1
802.1q VLAN ID          : 1234
802.1q VLAN Priority    : 0
RMCP+ Cipher Suites     : 0,1,2,3
Cipher Suite Priv Max   : OOOOXXXXXXXXXXX
                        :     X=Cipher Suite Unused
                        :     c=CALLBACK
                        :     u=USER
                        :     o=OPERATOR
                        :     a=ADMIN
                        :     O=OEM

ILO na sdilenych sitovkach

Pokud nemam na serveru dedikovany sitovy port pro ILO, nastavim v BIOSu volbu BMC NIC allocation na shared a nasledne provedu nastaveni dalsich parametru napr. pres impitool z linuxu po nabootovani: Na mem serveru bylo sdilene IPMI dle biosu na channel 02, takze nastaveni je nutne provadet takto:

ipmitool lan set 2 ipsrc static
ipmitool lan set 2 ipaddr 10.11.12.13
ipmitool lan set 2 netmask 255.255.255.0
ipmitool lan set 2 defgw ipaddr 10.11.12.1
ipmitool lan set 2 vlan id 1234
ipmitool user enable 3 #povolime uzivatele admin
ipmitool user set password 3 <PUT THE PASSWORD FOR USER#3 HERE>  #uzivateli admin nastavime heslo
ipmitool mc reset cold

a nasledne jeste provedeme pro jistotu restart restart, at vime jestli vse funguje jak ma.

POZOR: pokud u sdilenych sitovek bude ILO/IPMI fungovat jen pri nastaveni VLAN ID. Proto doporucuji pouzivat nejakou management vlanu.

ILO na dedikovane sitovce

FIXME

Intel AMT

FIXME

Nektery desky mají v setupu funkci "Enter AMTBx setup", která při dalším bootu zobrazí i setup AMTčka. Starší verze BIOSu AMT obsahovat nemusí, takže všechno může začít fungovat až po upgradu BIOSu… Stejne tak je možné, že AMT nebude v neoficiálních rebranded BIOSech, v takovém případě je vhodné přeflashovat takový BIOS oficiálním BIOSem z webu intelu.

Používané porty

Dle /etc/services používá AMT následující porty (jak TCP, tak UDP)

služba port
amt-esd-prot 1082
amt 2268
amt-blc-port 2848
amt-cnf-prot 3054
amt-soap-http 16992
amt-soap-https 16993
amt-redir-tcp 16994
amt-redir-tls 16995

Web UI

SOL a Klientský SW

amtterm
root@charon:~/# #export AMT_PASSWORD='NaseHeslo'
root@charon:~/# amtterm 10.11.1.1
AMT password for host 10.11.1.1: 
amtterm: NONE -> CONNECT (connection to host)
ipv4 10.11.1.1 [10.11.1.1] 16994 open
amtterm: CONNECT -> INIT (redirection initialization)
amtterm: INIT -> AUTH (session authentication)
amtterm: AUTH -> INIT_SOL (serial-over-lan initialization)
amtterm: INIT_SOL -> RUN_SOL (serial-over-lan active)
serial-over-lan redirection ok
connected now, use ^] to escape

Console redirection

BIOS

Použití Mikrotiku se sériovkou nebo USB portem ke správě redirectnutýho serveru:

Nastaveni BIOSu

GRUB Legacy

FIXME - tohle momentalne nejak zlobi, chtelo by to znovu otestovat (ale v zasade doporucuju GRUB2…)

/boot/grub/menu.lst
serial --unit=0 ---speed=115200 --word=8 --parity=no --stop=1
terminal --timeout=0 serial console

GRUB2

Existují 2 způsoby, jak zapnout sériovku. Jeden horší Debianí:

/etc/default/grub
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1"

Ten má však zásadní nevýhodu v tom, že zároveň deaktivuje VGA výstup, což je poměrně nepraktické. Proto použijeme tuto lepší metodu:

/etc/grub.d/40_custom
serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1
terminal_input --append  serial
terminal_output --append serial
#set timeout=5
#play 480 440 1

Timeout jsem zakomentoval pac uz je v /etc/default/grub a play jsem zakomentoval, protoze podle dokumentace mam pocit, ze to jenom piska reprackem, tudiz to asi nebude mit zadnej vyznam. Dokumentace je pomerne obsahla: http://www.gnu.org/software/grub/manual/grub.html

Kernel

/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="sysrq_always_enabled=1 fsck.repair=yes systemd.crash_shell=1 systemd.crash_reboot=1 console=ttyS0,115200 console=tty0"

(naopak parametr quiet jsem dal pryc…) polozek console muze byt v cmdline vic, ale ta posledni bude hlavni (tj. krome vypisu kernelu tam prijdou i hlasky initu, spousteni sluzeb atd, ale to neni problem upravit v grubu pokud se teda podari ho zprovoznit pres seriovku)

GETTY

Getty umí login screen zobrazit nejen na obrazovce, ale také na sériovce:

Debian

V inittabu jsem odkomentoval tohle (upravil jsem jen baudrate):

/etc/inittab
T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100
T1:23:respawn:/sbin/getty -L ttyS1 115200 vt100

Muze se to lisit distro od distra… Ale bez rebootu jsem to aktivoval prikazy init 3; init 2.

Taky overime, ze pozadovany porty jsou v securetty, jinak by nam pam mohl odmitnout root login… nevim jak jinde, ale na Debianu tam uz byly:

/etc/securetty
...
ttyS0
ttyS1
...
ttyUSB0

CentOS

/etc/init/ttyS0.conf
stop on runlevel [S016]
start on runlevel [23]
 
respawn
exec agetty -L /dev/ttyS0 115200 vt100

Systemd

Systemd si automaticky nacte konfiguraci z GRUBu. Pokud ovsem mate potrebu povolit konzoli manualne, muzete pouzit tohle:

systemctl start getty@ttyS0.service
systemctl enable getty@ttyS0.service

na bugovitejch systemech muze bejt potreba misto prikazu enable pouzit:

ln -s /usr/lib/systemd/system/serial-getty@.service /etc/systemd/system/getty.target.wants/serial-getty@ttyS0.service

ScreenDump

Pokud si i tak pripadate dost odriznuty, tak doporucuju prikaz screendump, kterej dokaze odkudkoliv (vcetne SSH) zobrazit presne obsah libovolny virtualni konzole (defaultne VT 1).

Jak se ke konzoli pripojit

Konzolový server

Na konzolový server postačí slabší/menší HW s Linuxem nebo MikroTikem. Tohle je ALIX.2 s Debianem a 12ti portovým hubem, částečně osazeným levnými čínskými USB↔RS232 převodníky.

console_server.jpg