web-dev-qa-db-fra.com

Échec de l'installation d'OpenStack Dashboard

J'essaie d'installer un cloud en suivant le document officiel d'OpenStack. Lorsque j'essaie d'installer le tableau de bord sur le contrôleur cloud: http://docs.openstack.org/diablo/openstack-compute/install/content/configure-dashboard.html J'ai eu une erreur lors de la tentative de synchronisation base de données:

$ /usr/share/openstack-dashboard/dashboard/manage.py syncdb

ERROR:root:No module named local.local_settings
Traceback (most recent call last):
  File "/usr/share/openstack-dashboard/dashboard/settings.py", line 117, in <module>
    from local.local_settings import *
ImportError: No module named local.local_settings
ERROR:root:No module named local.local_settings
Traceback (most recent call last):
  File "/usr/share/openstack-dashboard/dashboard/../dashboard/settings.py", line 117, in <module>
    from local.local_settings import *
ImportError: No module named local.local_settings
Traceback (most recent call last):
  File "./dashboard/manage.py", line 31, in <module>
    execute_manager(settings)
  File "/usr/lib/pymodules/python2.7/Django/core/management/__init__.py", line 438, in execute_manager
    utility.execute()
  File "/usr/lib/pymodules/python2.7/Django/core/management/__init__.py", line 379, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/lib/pymodules/python2.7/Django/core/management/base.py", line 191, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/usr/lib/pymodules/python2.7/Django/core/management/base.py", line 220, in execute
    output = self.handle(*args, **options)
  File "/usr/lib/pymodules/python2.7/Django/core/management/base.py", line 351, in handle
    return self.handle_noargs(**options)
  File "/usr/lib/pymodules/python2.7/Django/core/management/commands/syncdb.py", line 56, in handle_noargs
    cursor = connection.cursor()
  File "/usr/lib/pymodules/python2.7/Django/db/backends/dummy/base.py", line 15, in complain
    raise ImproperlyConfigured("You haven't set the database ENGINE setting yet.")
Django.core.exceptions.ImproperlyConfigured: You haven't set the database ENGINE setting yet.

Mon /usr/share/openstack-dashboard/local/local_settings.py est le même dans le guide. J'ai installé python-mysqldb, mais je ne change pas.

Ensuite, j'essaie d'installer Dashboard à partir de git comme dans wiki: http://wiki.openstack.org/OpenStackDashboard Mais j'ai eu la même erreur.

J'utilise VirtualBox pour installer 2 serveurs, chacun exécute le serveur Ubuntu 11.10 AMD64. Tout va bien, sauf Dashboard!

Comment puis-je le réparer? Je vous remercie!

1
neo0

Il ressemble à python ne peut pas trouver local.local_settings.py, et cela me semble normal.

Vous êtes dans:

/usr/share/openstack-dashboard/dashboard/

Et votre local_settings.py est dans:

/usr/share/openstack-dashboard/local/local_settings.py

import local.local_settings.py va le chercher dans /usr/share/openstack-dashboard/dashboard/local/local_settings.py

Dans le git il y a un petit wrapper dans openstack-dashboard qui pourrait aider avec ce problème. Créez simplement un nouveau fichier dans openstack-dashboard, appelez-le manage.py, copiez ce code:

#!/usr/bin/env python
import os, sys

if __== "__main__":
    os.environ.setdefault("Django_SETTINGS_MODULE", "dashboard.settings")

    from Django.core.management import execute_from_command_line

    execute_from_command_line(sys.argv)

Et maintenant, exécutez-le.

Ce que ce code fait, c'est de changer un global de sorte que le fichier settings.py par défaut pour Django est maintenant dashboard/settings.py (au lieu de ./settings.py), et appelle le défaut Django manage.py.

Cela devrait résoudre l'erreur d'importation car il existe maintenant local/local_settings.py. Bien sûr, cela pourrait créer d'autres problèmes d'importation, mais cela vaut la peine d'essayer.

1
Javier Rivera