[lxc-users] Nova-lxd plugin installation
Martin Bobák
martin.bobak at savba.sk
Wed Sep 19 13:48:54 UTC 2018
Hi Alex,
first off, thank you for your kind reply. I followed your advices.
However, I still have a problem which looks like an incorrect setting up
of a storage pool for lxd. I configured the /etc/nova-compute.conf as
you suggested, but it didn't help.
In my case those lines look like:
[DEFAULT]
compute_driver = nova_lxd.nova.virt.lxd.LXDDriver
[lxd]
allow_live_migration = True
pool = lxd
But the error is following (relevant parts from syslog --> it looks like
lxd variables from the /etc/nova-compute.conf aren't delivered to the
driver, or recognized by it, I tried to use different names for
compute_driver e.g. lxd.LXDDriver,
nova-lxd.nova.virt.lxd.(driver).LXDDriver -> however, it didn't help):
Sep 19 09:15:08 localhost nova-conductor[1956]: #033[00;32mDEBUG
oslo_service.service [#033[01;36mNone
req-5cda2246-8087-4f49-b9b3-463d29fd7bf8 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mcompute_driver =
nova_lxd.nova.virt.lxd.LXDDriver#033[00m #033[00;33m{{(pid=1956)
log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2890}}#033[00m
Sep 19 09:15:08 localhost nova-consoleauth[1984]: #033[00;32mDEBUG
oslo_service.service [#033[01;36mNone
req-2a9399e1-996d-42f4-899b-62db8d8e5afd #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mcompute_driver =
nova_lxd.nova.virt.lxd.LXDDriver#033[00m #033[00;33m{{(pid=1984)
log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2890}}#033[00m
Sep 19 09:15:10 localhost nova-scheduler[2000]: #033[00;32mDEBUG
oslo_service.service [#033[01;36mNone
req-3d23848b-270b-4718-91dd-3b0417d27d21 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mcompute_driver =
nova_lxd.nova.virt.lxd.LXDDriver#033[00m #033[00;33m{{(pid=2000)
log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2890}}#033[00m
Sep 19 09:15:11 localhost devstack at placement-api.service[2030]:
#033[00;32mDEBUG nova.api.openstack.placement.wsgi
[#033[00;36m-#033[00;32m]
#033[01;35m#033[00;32mcompute_driver =
nova_lxd.nova.virt.lxd.LXDDriver#033[00m #033[00;33m{{(pid=2294)
log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2890}}#033[00m
Sep 19 09:15:12 localhost devstack at n-api.service[1999]: #033[00;32mDEBUG
nova.api.openstack.wsgi_app [#033[01;36mNone
req-1e20e359-2bcc-44e6-9c75-7422c5837c03 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mcompute_driver =
nova_lxd.nova.virt.lxd.LXDDriver#033[00m #033[00;33m{{(pid=2181)
log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2890}}#033[00m
Sep 19 09:15:14 localhost devstack at placement-api.service[2030]:
#033[00;32mDEBUG nova.api.openstack.placement.wsgi
[#033[00;36m-#033[00;32m]
#033[01;35m#033[00;32mcompute_driver =
nova_lxd.nova.virt.lxd.LXDDriver#033[00m #033[00;33m{{(pid=2292)
log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2890}}#033[00m
Sep 19 09:15:15 localhost devstack at n-api.service[1999]: #033[00;32mDEBUG
nova.api.openstack.wsgi_app [#033[01;36mNone
req-6d5745e7-3784-4b8e-8210-e7bf74fd9655 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mcompute_driver =
nova_lxd.nova.virt.lxd.LXDDriver#033[00m #033[00;33m{{(pid=2182)
log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2890}}#033[00m
Sep 19 09:15:20 localhost nova-compute[1968]: #033[00;32mDEBUG
oslo_service.service [#033[01;36mNone
req-1bc67100-ffbe-4d22-be1f-42133eb60611 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mcompute_driver =
lxd.LXDDriver#033[00m #033[00;33m{{(pid=1968) log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2890}}#033[00m
ep 19 09:15:20 localhost nova-compute[1968]: #033[00;32mDEBUG
oslo_service.service [#033[01;36mNone
req-1bc67100-ffbe-4d22-be1f-42133eb60611 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mlxd.allow_live_migration =
False#033[00m #033[00;33m{{(pid=1968) log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2898}}#033[00m
Sep 19 09:15:20 localhost nova-compute[1968]: #033[00;32mDEBUG
oslo_service.service [#033[01;36mNone
req-1bc67100-ffbe-4d22-be1f-42133eb60611 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mlxd.pool =
None#033[00m #033[00;33m{{(pid=1968) log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2898}}#033[00m
Sep 19 09:15:20 localhost nova-compute[1968]: #033[00;32mDEBUG
oslo_service.service [#033[01;36mNone
req-1bc67100-ffbe-4d22-be1f-42133eb60611 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mlxd.root_dir =
/var/lib/lxd/#033[00m #033[00;33m{{(pid=1968) log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2898}}#033[00m
Sep 19 09:15:20 localhost nova-compute[1968]: #033[00;32mDEBUG
oslo_service.service [#033[01;36mNone
req-1bc67100-ffbe-4d22-be1f-42133eb60611 #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mlxd.timeout =
-1#033[00m #033[00;33m{{(pid=1968) log_opt_values
/usr/local/lib/python2.7/dist-packages/oslo_config/cfg.py:2898}}#033[00m
.........
.........
Sep 19 09:15:21 localhost nova-compute[1968]: #033[00;32mDEBUG
oslo_concurrency.processutils [#033[01;36mNone
req-87a543da-84db-4fe1-a743-75ca6525ac2a #033[00;36mNone
None#033[00;32m] #033[01;35m#033[00;32mu'sudo nova-rootwrap
/etc/nova/rootwrap.conf zpool list -o size -H None' failed. Not
Retrying.#033[00m #033[00;33m{{(pid=1968) execute
/usr/local/lib/python2.7/dist-packages/oslo_concurrency/processutils.py:457}}#033[00m
Sep 19 09:15:21 localhost nova-compute[1968]: #033[01;31mERROR
nova.compute.manager [#033[01;36mNone
req-87a543da-84db-4fe1-a743-75ca6525ac2a #033[00;36mNone
None#033[01;31m] #033[01;35m#033[01;31mError updating resources for node
ubuntu.#033[00m: ProcessExecutionError: Unexpected error while running
command.
Sep 19 09:15:21 localhost nova-compute[1968]: Command: sudo
nova-rootwrap /etc/nova/rootwrap.conf zpool list -o size -H None
Sep 19 09:15:21 localhost nova-compute[1968]: Exit code: 1
Sep 19 09:15:21 localhost nova-compute[1968]: Stdout: u''
Sep 19 09:15:21 localhost nova-compute[1968]: Stderr: u"cannot open
'None': no such pool\n"
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00mTraceback (most recent call last):
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m File "/opt/stack/nova/nova/compute/manager.py",
line 7344, in update_available_resource_for_node
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m rt.update_available_resource(context, nodename)
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m File
"/opt/stack/nova/nova/compute/resource_tracker.py", line 673, in
update_available_resource
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m resources =
self.driver.get_available_resource(nodename)
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m File "/opt/stack/nova-lxd/nova/virt/lxd/driver.py",
line 1031, in get_available_resource
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m local_disk_info = _get_zpool_info(pool_name)
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m File "/opt/stack/nova-lxd/nova/virt/lxd/driver.py",
line 209, in _get_zpool_info
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m total = _get_zpool_attribute('size')
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m File "/opt/stack/nova-lxd/nova/virt/lxd/driver.py",
line 201, in _get_zpool_attribute
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m run_as_root=True)
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m File "/opt/stack/nova/nova/utils.py", line 230, in
execute
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m return RootwrapProcessHelper().execute(*cmd,
**kwargs)
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m File "/opt/stack/nova/nova/utils.py", line 113, in
execute
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m return processutils.execute(*cmd, **kwargs)
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m File
"/usr/local/lib/python2.7/dist-packages/oslo_concurrency/processutils.py",
line 424, in execute
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m cmd=sanitized_cmd)
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00mProcessExecutionError: Unexpected error while running
command.
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00mCommand: sudo nova-rootwrap /etc/nova/rootwrap.conf
zpool list -o size -H None
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00mExit code: 1
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00mStdout: u''
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00mStderr: u"cannot open 'None': no such pool\n"
Sep 19 09:15:21 localhost nova-compute[1968]: ERROR nova.compute.manager
#033[01;35m#033[00m
The local.conf used by devstack is looks like:
[[local|localrc]]
############################################################
# Customize the following HOST_IP based on your installation
############################################################
HOST_IP=127.0.0.1
ADMIN_PASSWORD=devstack
MYSQL_PASSWORD=devstack
RABBIT_PASSWORD=devstack
SERVICE_PASSWORD=$ADMIN_PASSWORD
SERVICE_TOKEN=devstack
# run the services you want to use
ENABLED_SERVICES=rabbit,mysql,key
ENABLED_SERVICES+=,g-api,g-reg
ENABLED_SERVICES+=,n-cpu,n-api,n-crt,n-obj,n-cond,n-sch,n-novnc,n-cauth,placement-api,placement-client
ENABLED_SERVICES+=,neutron,q-svc,q-agt,q-dhcp,q-meta,q-l3
ENABLED_SERVICES+=,cinder,c-sch,c-api,c-vol
ENABLED_SERVICES+=,horizon
# disabled services
disable_service n-net
# enable nova-lxd
enable_plugin nova-lxd https://git.openstack.org/openstack/nova-lxd
stable/queens
Best regards,
Martin.
On 17.09.2018 15:29, Alex Kavanagh wrote:
> Hi Martin
>
> On Sun, Sep 16, 2018 at 8:46 PM, Martin Bobák <martin.bobak at savba.sk
> <mailto:martin.bobak at savba.sk>> wrote:
>
> Hi all,
>
> what is the recommended way of nova-lxd plugin installation on a
> fresh xenial host running a pure OpenStack devstack (Queens)
> installation? I have tried to install the nova-lxd plugin by pip
> install, or allowing it during OpenStack devstack installation,
> but each attempt lead to the same result. The plugin is either not
> recognized or the installation doesn't finish successfully. I went
> through the nova-lxd homepage as well as its github repo, but I
> wasn't able to solve the whole installation problem (e.g. I found
> out that the installation of the newest version of pylxd helps
> with installation of the plugin, however, the plugin isn't still
> recognized. So additional configuration is needed...).
>
> Do you have any thoughts about it?
>
>
> I'm one of the maintainers for nova-lxd, so hopefully can get you up
> and running.
>
> In order for nova-lxd to be configured in nova, the
> /etc/nova-compute.conf needs to contain the lines:
>
> [DEFAULT]
> compute_driver = nova_lxd.nova.virt.lxd.LXDDriver
>
> This little 'fact' is hidden away in the "nova-compute-lxd" debian
> package, unfortunately.
>
> You'll also need to configure an [lxd] section in nova.conf to control
> the storage pool in LXD for containers to use when launching instances.
>
> [lxd]
> allow_live_migration = True
> pool = {{ storage_pool }}
>
> The storage pool will need to be set up separately in lxd.
> --
>
> However, an 'easy' way to test OpenStack with nova-lxd, is to use
> charms. We have a number of bundles that work with Juju. For example
> we have a deployable bundle for xenial and queens at
> https://github.com/openstack-charmers/openstack-bundles/tree/master/development/openstack-lxd-xenial-queens
> <https://github.com/openstack-charmers/openstack-bundles/tree/master/development/openstack-lxd-xenial-queens>
> which also has some (hopefully) useful instructions on how to get it
> going.
>
> Note the instructions say you have to use MaaS, but you should be able
> to adjust using it to the hardware you are using.
>
> As an alternative, the openstack-ansible project also supports
> nova-lxd, but I don't have any experience with that.
>
> Do come back if you have any further questions; do let me know how you
> get on.
>
> Best regards
> Alex.
>
>
> Best,
> Martin.
>
> --
> Martin Bobák, PhD.
> Researcher
> Institute of Informatics
> Slovak Academy of Sciences
> Dubravska cesta 9
> <https://maps.google.com/?q=Dubravska+cesta+9&entry=gmail&source=g>,
> SK-845 07 Bratislava, Slovakia
> Room: 311, Phone: +421 (0)2 5941-1278
> E-mail: martin.bobak at savba.sk <mailto:martin.bobak at savba.sk>
> URL: http://www.ui.sav.sk/w/odd/pdip/
> <http://www.ui.sav.sk/w/odd/pdip/>
> LinkedIn: https://www.linkedin.com/in/martin-bobak/
> <https://www.linkedin.com/in/martin-bobak/>
>
> _______________________________________________
> lxc-users mailing list
> lxc-users at lists.linuxcontainers.org
> <mailto:lxc-users at lists.linuxcontainers.org>
> http://lists.linuxcontainers.org/listinfo/lxc-users
> <http://lists.linuxcontainers.org/listinfo/lxc-users>
>
>
>
>
> --
> Alex Kavanagh - Software Engineer
> Cloud Dev Ops - Solutions & Product Engineering - Canonical Ltd
>
>
> _______________________________________________
> lxc-users mailing list
> lxc-users at lists.linuxcontainers.org
> http://lists.linuxcontainers.org/listinfo/lxc-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxcontainers.org/pipermail/lxc-users/attachments/20180919/06b04a41/attachment.html>
More information about the lxc-users
mailing list