Launchpad Entry: web-based-serial-console
Created: 2010-09-01
Contributors: JesseAndrews
Summary
Users need a method to interact with Virtual Machines that works even when the VM's network is dead. Adding web console will allow users to interact with instances that would otherwise be rendered impossible to fix without assistance from cloud providers staff.
Alternative
Instead of using ajaxterm.py, we could provide SSH access to the serial console as outlined in http://www.nostarch.com/download/xen_ch7.pdf
Release Note
A method has been added to OpenStack compute to initiate a ajaxterm.py console session. Initial supported hypervisor is Xen & KVM.
Rationale
Rackspace/Slicehost parity
User stories
A user was updating their virtual machine's network configuration and made a mistake rendering the machine unreachable via TCP/IP. Rather than scraping the instance the user connects to the instance in console mode and is able to fix the mis-configuration and restore the machine to proper working state without requiring help from the cloud provider.
Assumptions
We assume user's have username/password credentials to their instances.
API server has ssh credentials to Host machines.
The method for accessing the serial console for instances is different for each virtualization mechanism.
- Xen: xm console
- UML: ?
VirtualBox: ?
Design
A user exposed OpenStack API that uses ajaxterm.py to create a HTTP accessible "xm console".
Implementation
From the API server, launch http://antony.lesuisse.org/software/ajaxterm/ against "xm console", which would be ran on the host node (via SSH).