Bug 587276
Summary: | [LXC] can't connect to a OS container via console, and print any key expect "CTRL + ]" will make the container shutoff | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Osier Yang <jyang> |
Component: | libvirt | Assignee: | Jiri Denemark <jdenemar> |
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> |
Severity: | medium | Docs Contact: | |
Priority: | low | ||
Version: | 6.0 | CC: | ajia, berrange, bsarathy, dallan, dyuan, hbrock, llim, mzhan, yoyzhang |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | libvirt-0.9.1-1.el6 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2011-12-06 10:43:22 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 621776, 693512 |
Description
Osier Yang
2010-04-29 14:05:40 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux major release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Major release. This request is not yet committed for inclusion. sry, the xml should be: <domain type='lxc'> <name>fedora-rawhide</name> <uuid>6222c8db-8764-9c54-8fed-2646b8c4ef78</uuid> <memory>32768</memory> <currentMemory>32768</currentMemory> <vcpu>1</vcpu> <os> <type arch='x86_64'>exe</type> <init>/sbin/init</init> </os> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/libexec/libvirt_lxc</emulator> <filesystem type='mount'> <source dir='/root/tmp/rawhide'/> <target dir='/'/> </filesystem> <interface type='network'> <mac address='52:54:00:73:6b:43'/> <source network='default'/> <target dev='veth1'/> </interface> <console type='pty'> <target port='0'/> </console> </devices> </domain> with the upper xml, the guest could be connected. so the main problem of this bug doesn't exist. close it. Have modified the xml as Comment 3 and define the guest again, but the result is the same as original description。 Version-Release number of selected component (if applicable): libvirt-0.8.1-1 Test with libvirt-0.8.1-21.el6.i686 domain will not be shutoff when print any key except "CTRL + ]", but still cann't connect to the OS container via console. After reboot os, cannot reproduce the issue in comment 6, can connect to the OS container via console successfully. Maybe there were some problems with the container at that time. This is likely to be a configuration issue. The default febootstrap install likely does not configure mingetty to listen on the correct devices. Need to investigate & document the proper bootstrap technique There's several issues at play here. - Your Fedora container install needs to be manually configured to run a mingetty on the right device - /dev/console is incorrectly setup in the container. - A bug in libvirt_lxc means that it often quits prematurely resulting in error : vshRunConsole:77 : unable to open tty /dev/pts/10: No such file or 2 & 3 are easily fixed in libvirt. 1 is a documentation problem, and/or a reason to provide a 'virt-bootstrap' tool for LXC with common distros The console handling is fixed in this upstream patch http://www.redhat.com/archives/libvir-list/2011-February/msg01006.html Fixed upstream by v0.8.8-179-g4e3117a: commit 4e3117ae50efc0fcbd5ce485cd610dfab7f5c625 Author: Daniel P. Berrange <berrange> Date: Tue Feb 22 17:35:06 2011 +0000 Make LXC container startup/shutdown/I/O more robust The current LXC I/O controller looks for HUP to detect when a guest has quit. This isn't reliable as during initial bootup it is possible that 'init' will close the console and let mingetty re-open it. The shutdown of containers was also flakey because it only killed the libvirt I/O controller and expected container processes to gracefully follow. Change the I/O controller such that when it see HUP or an I/O error, it uses kill($PID, 0) to see if the process has really quit. Change the container shutdown sequence to use the virCgroupKillPainfully function to ensure every really goes away This change makes the use of the 'cpu', 'devices' and 'memory' cgroups controllers compulsory with LXC Verified this bug pass with libvirt-0.9.1-1.el6.x86_64 1. # febootstrap --group-install="base" rawhide /tmp/rawhide 2. # cat vm2.xml <domain type='lxc'> <name>fedora-rawhide-2</name> <memory>32768</memory> <currentMemory>32768</currentMemory> <vcpu>1</vcpu> <os> <type arch='x86_64'>exe</type> <init>/sbin/init</init> </os> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/libexec/libvirt_lxc</emulator> <filesystem type='mount'> <source dir='/tmp/rawhide'/> <target dir='/'/> </filesystem> <interface type='network'> <source network='default'/> <target dev='veth1'/> </interface> <console type='pty'> <target port='0'/> </console> </devices> </domain> 3. virsh # define vm2.xml Domain fedora-rawhide-2 defined from vm2.xml virsh # start fedora-rawhide-2 Domain fedora-rawhide-2 started virsh # list --all Id Name State ---------------------------------- 679 vm1 running 28627 fedora-rawhide-2 running 4. virsh # console fedora-rawhide-2 Connected to domain fedora-rawhide-2 Escape character is ^] SELinux: Could not open policy file <= /etc/selinux/targeted/policy/policy.26: No such file or directory Failed to load SELinux policy. Failed to mount /sys/fs/cgroup: No such file or directory Failed to mount /sys/fs/cgroup/systemd: No such file or directory Failed to mount /sys/fs/cgroup/cpuset: No such file or directory Failed to mount /sys/fs/cgroup/ns: No such file or directory Failed to mount /sys/fs/cgroup/cpu: No such file or directory Failed to mount /sys/fs/cgroup/cpuacct: No such file or directory Failed to mount /sys/fs/cgroup/memory: No such file or directory Failed to mount /sys/fs/cgroup/devices: No such file or directory Failed to mount /sys/fs/cgroup/freezer: No such file or directory Failed to mount /sys/fs/cgroup/net_cls: No such file or directory Failed to mount /sys/fs/cgroup/blkio: No such file or directory systemd 26 running in system mode. (+PAM +LIBWRAP +AUDIT +SELINUX +SYSVINIT +LIBCRYPTSETUP; fedora) No hostname configured. Failed to enable ctrl-alt-del handling: Operation not permitted Failed to open /dev/tty0: No such file or directory No control group support available, not creating root group. Failed to fully start up daemon: No such file or directory Failed to open /dev/autofs: No such file or directory Failed to initialize automounter: No such file or directory Unit dev-hugepages.automount entered failed state. Failed to open /dev/autofs: No such file or directory Failed to initialize automounter: No such file or directory Unit proc-sys-fs-binfmt_misc.automount entered failed state. Failed to open /dev/autofs: No such file or directory Failed to initialize automounter: No such file or directory Unit dev-mqueue.automount entered failed state. Failed to open /dev/autofs: No such file or directory Failed to initialize automounter: No such file or directory Unit sys-kernel-security.automount entered failed state. Failed to open /dev/autofs: No such file or directory Failed to initialize automounter: No such file or directory Unit sys-kernel-debug.automount entered failed state. systemd-kmsg-syslogd.service: main process exited, code=exited, status=218 Unit systemd-kmsg-syslogd.service entered failed state. systemd-readahead-collect.service: main process exited, code=exited, status=1 systemd-logger.service: main process exited, code=exited, status=218 Unit systemd-logger.service entered failed state. fd fdfd virsh # list --all Id Name State ---------------------------------- 679 vm1 running 28627 fedora-rawhide-2 running virsh # Could connect to console successfully, and when press key like 'fd' 'enter' 'fdfd', it doesn't quit console or causes guest shutdown, so the fix patch works well. Move to Verified according to Comment #14 Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2011-1513.html |