[libvirt-users] libvirt 5.0.0 - LXC container still in "virsh list" output after shutdown

mxs kolo kolomaxes at gmail.com
Mon Jan 21 10:41:02 UTC 2019


 Hello.

Centos 7.6 with libvirt build from base "virt" repository:
libvirt-daemon-driver-lxc-5.0.0-1.el7.x86_64
libvirt-client-5.0.0-1.el7.x86_64
libvirt-daemon-5.0.0-1.el7.x86_64
libvirt-daemon-driver-network-5.0.0-1.el7.x86_64
libvirt-libs-5.0.0-1.el7.x86_64
+
systemd-219-62.el7_6.2.x86_64

Now lxc containers with  type='direct' can be started,  but can't be stopped :)
Before shutdown.
# virsh  list --all
 Id      Name                   State
------------------------------------------
 16312   test.lxc               running

# machinectl | grep test
lxc-16312-test.lxc            container libvirt-lxc

# pstree -apA  16312
libvirt_lxc,16312 --name test.lxc --console 42 --security=none
--handshake 45 --veth macvlan0
  |-systemd,16315
  |   |-agetty,16690 --noclear --keep-baud console 115200 38400 9600 vt220
  |   |-dbus-daemon,16659 --system --address=systemd: --nofork
--nopidfile --systemd-activation
  |   |-rsyslogd,17614 -n
  |   |   |-{rsyslogd},17616
  |   |   `-{rsyslogd},17626
  |   |-sshd,17613 -D
  |   |-systemd-journal,16613
  |   `-systemd-logind,16657
  `-{libvirt_lxc},16319


Shutdown.
# virsh  shutdown 16312
Domain 16312 is being shutdown
# echo $?
0

After.
In list output still present:
# virsh  list --all
 Id      Name                   State
------------------------------------------
 16312   test.lxc               running
# machinectl | grep test | wc -l
0

No main process:
# ps axuwwf | grep libvirt_lxc | grep test | wc -l
0

LXC realy stopped, but only virsh still show it in list
Cgroups "blkio, cpuacct, memory, cpu, cpu,cpuacct, devices, hugetlb,
pids" deleted.
But another cgroups still present in fs:
drwxr-xr-x 2 root root 0 Jan 21 13:07
/sys/fs/cgroup/cpuset/machine.slice/machine-lxc\x2d16312\x2dtest.lxc.scope
drwxr-xr-x 2 root root 0 Jan 21 13:07
/sys/fs/cgroup/freezer/machine.slice/machine-lxc\x2d16312\x2dtest.lxc.scope
drwxr-xr-x 2 root root 0 Jan 21 13:07
/sys/fs/cgroup/net_cls/machine.slice/machine-lxc\x2d16312\x2dtest.lxc.scope
drwxr-xr-x 2 root root 0 Jan 21 13:07
/sys/fs/cgroup/net_cls,net_prio/machine.slice/machine-lxc\x2d16312\x2dtest.lxc.scope
drwxr-xr-x 2 root root 0 Jan 21 13:07
/sys/fs/cgroup/net_prio/machine.slice/machine-lxc\x2d16312\x2dtest.lxc.scope
drwxr-xr-x 2 root root 0 Jan 21 13:07
/sys/fs/cgroup/perf_event/machine.slice/machine-lxc\x2d16312\x2dtest.lxc.scope

Restarted libvirtd temporary place container in correct state:
# systemctl restart libvirtd
# virsh list --all | grep test
 -       test.lxc            shut off

libvirt 4.5.0 and 4.10.0 perform correct LXC shutdown.

b.r.
  Maxim Kozin




More information about the libvirt-users mailing list