[lxc-users] Migrated to 2.9 - Catch 22 with Containers w/o Storage Pools

Neil Bowers neil_bowers at glasken.com
Sun Feb 19 06:40:19 UTC 2017


Since migrating to 2.9 I've found myself in a catch-22 situation where
somehow I ended up with a couple of containers that were not assigned to a
storage pool upon creation.

As a side note, there should be an option to set a default storage pool
value to be used with the 'lxc launch' when the -s parameter isn't
specified - would've saved me a lot of time.

Consider the following:

+------------------+---------+----------------------+----------------------+----------------------+--------------+-------------+
|       NAME       |  STATE  |         IPV4         |      CREATED AT
 |     LAST USED AT     | STORAGE POOL |  PROFILES   |
+------------------+---------+----------------------+----------------------+----------------------+--------------+-------------+
| free-ray         | ERROR   |                      |
 |                      |              |             |
+------------------+---------+----------------------+----------------------+----------------------+--------------+-------------+
| intimate-civet   | RUNNING | 192.168.1.245 (eth0) | 2017/02/19 05:24 UTC
| 2017/02/19 05:24 UTC | lxc-vg       | default     |
+------------------+---------+----------------------+----------------------+----------------------+--------------+-------------+
| minecraft-msm    | STOPPED |                      | 2017/02/19 00:33 UTC
|                      | vmpool       | default-msm |
+------------------+---------+----------------------+----------------------+----------------------+--------------+-------------+
| topical-antelope | ERROR   |                      |
 |                      |              |             |
+------------------+---------+----------------------+----------------------+----------------------+--------------+-------------+
| warm-bluejay     | ERROR   |                      |
 |                      |              |             |
+------------------+---------+----------------------+----------------------+----------------------+--------------+-------------+

The containers free-ray, tropical-antelope and warm-bluejay were created
without the use of the -s parameter, so therefore no storage pool was
assigned.

Upon trying to delete these containers:

└─▪ lxc delete free-ray
error: No storage pool specified.

Not even the --force option works:

lxc delete free-ray --force
error: No storage pool specified.

After a lot of digging with the one successful container, it appears that,
starting with 2.9, every container must have a storage volume of the type
'container' with the same name as the container itself.  So I thought,
maybe I could create the storage volume and then attach it to the
container, and then be able to delete it - wrong:

 lxc storage volume create lxc-vg container/free-ray
error: Currently not allowed to create storage volumes of type container.

Currently the only volume type that we're allowed to create is 'custom' -
so I gave that a try:

lxc storage volume create lxc-vg free-ray
Storage volume free-ray created

But then when I attempt to attach this new volume to 'free-ray', I once
again encounter:

lxc storage volume attach lxc-vg free-ray free-ray root /
error: No storage pool specified.

And now I'm stuck - I have three containers that can't be deleted because
they're not tied to a storage pool and no way to tie them to one, and a
fourth container that is tied to a now-deleted storage pool that can't be
deleted either.

Short of blowing away the LXD/LXC install and starting over, is there any
way to fix this?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxcontainers.org/pipermail/lxc-users/attachments/20170219/d2fb85ad/attachment.html>


More information about the lxc-users mailing list