virsh failure to start lxc container - internal error: Unable to find 'cpuacct' cgroups controller mount
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu Cloud Archive |
Expired
|
Low
|
Unassigned | ||
libvirt (Ubuntu) |
Expired
|
High
|
Unassigned |
Bug Description
Seeing libvirt error while trying to deploy instances in OpenStack deployment:
"error: internal error: Unable to find 'cpuacct' cgroups controller mount".
This is recreatable for kilo and liberty.
The cloud version for kilo is root@lambert:~# dpkg -l|grep virt
ii libvirt-bin 1.2.12-
or the libvirt library
ii libvirt0 1.2.12-
r interfacing with different virtualization systems
And I was also able to recreate with liberty version:
root@lambert:
libvirt-bin:
Installed: 1.2.16-
Candidate: 1.2.16-
Version table:
*** 1.2.16-
500 http://
100 /var/lib/
1.
500 http://
1.
500 http://
1.
500 http://
When I tried on a system with 1.2.2-0ubuntu13
If this is an issue with the version in the cloud archives, when was it fixed and when does the fix makes it to the kilo and liberty cloud archives?
Below is the error on the nova-compute node with actual instance xml and I also recreated with a basic container:
root@lambert:~# virsh -c lxc:/// dumpxml instance-00000001
<domain type='lxc'>
<name>
<uuid>
<metadata>
<nova:instance xmlns:nova="http://
<nova:package version=
<
<
<nova:flavor name="m1.small">
<
<nova:owner>
<nova:user uuid="2abcabaf5
</nova:owner>
<nova:root type="image" uuid="6950412f-
</nova:
</metadata>
<memory unit='KiB'
<vcpu placement=
<cputune>
<shares>
</cputune>
<os>
<type arch='x86_
<init>
<cmdline>
</os>
<clock offset='utc'/>
<on_poweroff>
<on_reboot>
<on_crash>
<devices>
<emulator>
<filesystem type='mount' accessmode=
<source dir='/var/
<target dir='/'/>
</filesystem>
<interface type='bridge'>
<mac address=
<source bridge=
<target dev='tap1962ef4
</interface>
<console type='pty'> [583/1825]
<target type='lxc' port='0'/>
</console>
</devices>
</domain>
root@lambert:~# virsh -c lxc:/// start instance-00000001
error: Failed to start domain instance-00000001
error: internal error: Unable to find 'cpuacct' cgroups controller mount
root@lambert:~# virsh -c lxc:/// dumpxml myinstance
<domain type='lxc'>
<name>
<uuid>
<memory unit='KiB'
<currentMemory unit='KiB'
<vcpu placement=
<os>
<type arch='x86_
<init>
</os>
<clock offset='utc'/>
<on_poweroff>
<on_reboot>
<on_crash>
<devices>
<emulator>
<console type='pty'>
<target type='lxc' port='0'/>
</console>
</devices>
</domain>
root@lambert:~# virsh -c lxc:/// start myinstance
error: Failed to start domain myinstance
error: internal error: Unable to find 'cpuacct' cgroups controller mount
summary: |
- Failure to start lxc container - internal error: Unable to find + virsh failure to start lxc container - internal error: Unable to find 'cpuacct' cgroups controller mount |
Changed in libvirt (Ubuntu): | |
importance: | Undecided → High |
status: | New → Triaged |
Changed in libvirt (Ubuntu): | |
status: | Triaged → Incomplete |
lxc driver is not that well maintained upstream; I'd suspect some sort of kernel/libvirt mismatch here so maybe we could try reproducing with the hwe-w kernel which matches the libvirt release?
That would allow us to bisect the root cause a little further.