Search code examples
dockeropenstack

install openstack magnum on docker


I installed openstack magnum (ocata release) on docker in my controller node because I have installed newton on my host machines and newton binaries did not install correctly but now when I try to run magnum-service list command the output is:

ERROR: Unable to establish connection to http://controller:9511/v1/mservices

then I checked both magnum-api and magnum-conductor logs and there was an error:

ERROR magnum ImportError: No module named profiler

then I tried:

su -s /bin/sh -c "/var/lib/magnum/env/bin/pip install profiler" magnum

but even after installing profiler the error was the same. Can anyone help?
Tnx to @eandersson now both services are running successfully but I faced another problem and that is when I try to run:

magnum service-list

The result is:

ERROR: 'errors'

So I tried:

magnum --debug service-list

And the result was:

ERROR: 'NoneType' object has no attribute 'replace' (HTTP 500) (Request-ID: req-cbe3a389-1cea-49f6-8472-3275696a67e3)

Solution

  • You are probably missing osprofiler, not profiler

    profiler = importutils.try_import("osprofiler.profiler")
    profiler_initializer = importutils.try_import("osprofiler.initializer")
    profiler_web = importutils.try_import("osprofiler.web")
    

    Try installing it instead.

    su -s /bin/sh -c "/var/lib/magnum/env/bin/pip install osprofiler" magnum

    By the way, when pip installing something for OpenStack you should be applying the requirements constrains.

    -c https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/ocata

    So ideally your command would look like this.

    su -s /bin/sh -c "/var/lib/magnum/env/bin/pip install -c https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/ocata osprofiler" magnum