Presentation is loading. Please wait.

Presentation is loading. Please wait.

Serial Consoles in the age of IPMI

Similar presentations


Presentation on theme: "Serial Consoles in the age of IPMI"— Presentation transcript:

1 Serial Consoles in the age of IPMI
Alex Owen Particle Physics Research Centre Queen Mary University of London

2 Console Access: VT Who How What Power Clipboard VT220 Printer Switch
March 2014

3 Console Access: Conserver
Who How What Power Clipboard VT220 Printer Switch Syslog Conserver March 2014

4 Console Access: Conserver+iPDU
Who How What Power Clipboard VT220 Printer Switch Syslog Conserver iPDU March 2014

5 “Perfect” Serial Setup
DEMO Cyclades console server ssh Ctrl-P for power menu Cyclades iPDU's Logs on syslog server March 2014

6 Cyclades Screen Shot March 2014

7 Serial Console Setup Serial Console IPMI Console - BIOS
Bootloader (Grub) Kernel Getty March 2014

8 Serial Setup Grub Config Grub2 Config Kernel Arguments Getty Config
#/boot/grub/menu.lst timeout=5 serial --unit=1 –speed=115200 terminal --timeout=5 serial console Grub2 Config #/etc/default/grub GRUB_TERMINAL="console serial" GRUB_SERIAL_COMMAND="serial --unit=1 -- speed= –word=8 --parity=no --stop=1" Kernel Arguments console=tty0 console=ttyS1,115200n8 Getty Config #/etc/inittab T1:23:respawn:/sbin/getty -L ttyS vt102 BIOS This varies! March 2014

9 The Age of IPMI Intelligent Platform Management Interface
Baseboard Management Controller (BMC) Out of band systems management and monitoring Network capable Standardised Insecure – need management LAN Setup varies (key point enable LAN interface!) March 2014

10 IPMI Serial Console Setup
IPMI Console - IPMI BIOS Bootloader (Grub) Kernel Getty March 2014

11 The Age of IPMI: Simple Commands!
ipmitool -I lanplus -U $user -P $pass -H $host sol activate ipmitool -I lanplus -U $user -P $pass -H $host power on ipmitool -I lanplus -U $user -P $pass -H $host power soft ipmitool -I lanplus -U $user -P $pass -H $host power off March 2014

12 Console Access: ipmitool
Who How What Power Clipboard VT220 Printer Switch Syslog Conserver iPDU - ipmitool March 2014

13 Buy a Solution Opengear ACM5508-2-I 8 port serial conosle server
Dual power supplies Management LAN port + DHCP Integrate with iPDU's or use IPMI Mentioned IPMI and ipmitool in marketing blurb Details ipmitool in documentation March 2014

14 Buy a Solution Opengear ACM5508-2-I Great bit of kit... BUT...
DOES NOT INTEGRATE IPMI Serial Over LAN March 2014

15 Build a Solution Requirements Permanent ipmi sol connection
Ability to disconnect and reconnect Permanent ipmi sol connection Logging of who and what Power control menu Toolbox GNU Screen / Tmux + ipmitool + glue March 2014

16 Build a Solution March 2014

17 Install Conlog Docs in init script: Prerequisites User/group Git clone
Copy + symlink Config file Init script Coming Soon for SL/CentOS ##### #Howto setup as system service running as conlog user ## Install pre-reqs # $SUDO apt-get install git tmux ## NB: bash 4 required for "declare -A" ## Create conlog user and group # $SUDO adduser --system --group --disabled-login --home /usr/local/share/conlog --gecos "ConLog User" conlog # $SUDO passwd -l conlog ## become conlog user # sudo -sH -u conlog ## as conlog user # cd # mkdir git # cd git # git clone # exit ## back as root install in /usr/local/bin/ # cd /usr/local/bin/ # $SUDO cp ~conlog/git/conlog/conlogd ./ # $SUDO ln -s conlogd conlog ## create config file: # cp ~conlog/git/conlogexample-conlogd.conf /etc/conlogd.conf ## edit /etc/conlogd.conf to local setup ## Add users to conlog group # $SUDO adduser user1 conlog # $SUDO adduser user1 conlog ## copy this init script to /etc/init.d/conlogd # chmod 755 and ## Link into boot process: # update-rc.d conlogd defaults ##### March 2014

18 Conlog Config File March 2014
####################### ## example config file ## /etc/conlogd.conf for system ## or ~/.conlogd.conf for user ####################### # NB: This is a bash script fragment which is sourced. # Take care when using what bash thinks are special characters! ##Override default variables if needed #ALT_CLIENT_NAME=ipmiconsole #CONLOGDSOCKET=/tmp/conlogd-socket #GROUP=staff ##Default vars restartsol #NORMALRESTARTPAUSE=4 #MINELAPSED=20 #GOODRUNTIME=$(( 12 * 60 * 60 )) # 12 hours # If you don't have DNS for ipmi clients but a formular/mapping from regular DNS # then implememt a getip function for example if the host IP is in DNS # as aaa.bbb.ccc.ddd and the bmc has IP ccc.ddd then: genip(){ #$1=hostname local output1 local output2 if output1="$(getent hosts $1)" >/dev/null 2>&1 ; then output2="${output1%% *}" echo " ${output2#*.*.}" else return 1 fi } # Now define hosts # IPMI host with generated/mapped IP conlog batman batman)" # IPMI host with dns entry for bmc conlog robin ### NOT YET IMPLEMENTED # Local KVM host #conlog zoro "qemu:///system" # Remote KVM host - conlog user needs ssh keys in place #conlog test # Serial console via a cyclade console server #conlog cyclades ####################### March 2014

19 Conlog Demo Lets hope this works! March 2014

20 Conlog Screenshots March 2014

21 Console Access: conlog
Who How What Power Clipboard VT220 Printer Switch Syslog Conserver iPDU - ipmitool Conlog March 2014

22 Build conlog appliance
MiraBox or DreamPlug MiraBox more Capable Dream Plug has more Debian support (right now) Chose DreamPlug March 2014

23 Demo Dreamplug USB Serial console Uboot
Flash Uboot (with debian version) Netboot debian installer JTAG (use openocd from debian testing) March 2014

24 Conclusions Serial Consoles are not dead
They have also evolved into IPMI consoles “ipmitool” is not “ipmisolution” Conlog aims towards being “ipmisolution” Dreamplug is a great platform for building your own conlog (or other) appliance Thanks for listening and patches welcome! March 2014

25 Resources https://github.com/raowen/conlog
March 2014

26 Extra Slides March 2014

27 In The Rack March 2014

28 Serial/RJ45 Adapters Opengear Cyclades March 2014

29 .Xresources *XTerm*VT100.translations: #override \n\ Shift<Key>F1: string(0x1b) string("1") \n\ Shift<Key>F2: string(0x1b) string("2") \n\ Shift<Key>F3: string(0x1b) string("3") \n\ Shift<Key>F4: string(0x1b) string("4") \n\ Shift<Key>F5: string(0x1b) string("5") \n\ Shift<Key>F6: string(0x1b) string("6") \n\ Shift<Key>F7: string(0x1b) string("7") \n\ Shift<Key>F8: string(0x1b) string("8") \n\ Shift<Key>F9: string(0x1b) string("9") \n\ Shift<Key>F10: string(0x1b) string("0") \n\ Shift<Key>F11: string(0x1b) string("!") \n\ Shift<Key>F12: string(0x1b) \n\ Ctrl<Key>F1: string(0x1b) string("OP") \n\ Ctrl<Key>F2: string(0x1b) string("OQ") \n\ Ctrl<Key>F3: string(0x1b) string("OR") \n\ Ctrl<Key>F4: string(0x1b) string("OS") \n\ Ctrl<Key>F5: string(0x1b) string("OT") \n\ Ctrl<Key>F6: string(0x1b) string("OU") \n\ Ctrl<Key>F7: string(0x1b) string("OV") \n\ Ctrl<Key>F8: string(0x1b) string("OW") \n\ Ctrl<Key>F9: string(0x1b) string("OX") \n\ Ctrl<Key>F10: string(0x1b) string("OY") \n\ Ctrl<Key>F11: string(0x1b) string("OZ") \n\ Ctrl<Key>F12: string("[BH") \n\ March 2014


Download ppt "Serial Consoles in the age of IPMI"

Similar presentations


Ads by Google