仪表板上的 openstack sahara 错误

openstack sahara error on dashboard

我正在尝试将 Sahara 引入我的云中以利用 Hadoop,但进展并不顺利。我试图遵循 Openstack 文档,但它并没有真正帮助我。现在我正在尝试通过命令 "pip install sahara-dashboard" 将撒哈拉沙漠添加到我的仪表板。

撒哈拉控制面板位于:/usr/local/lib/python2.7/dist-packages/saharadashboard

原始仪表板位于:/usr/share/openstack-dashboard/openstack-dashboard,我添加了

INSTALLED_APPS = [
    'openstack_dashboard',
    'saharadashboard',
    'django.contrib.contenttypes',
    'django.contrib.auth',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.humanize',
    'django_pyscss',
    'openstack_dashboard.django_pyscss_fix',
    'compressor',
    'horizon',
    'openstack_auth',
]

这个到 /usr/share/openstack-dashboard/openstack-dashboard/setting.py。

并在: /usr/share/openstack-dashboard/openstack-dashboard/local/local_settings.py 中,我添加了

    SAHARA_URL='http://localhost:8386/v1.1' 

        OPENSTACK_API_VERSIONS = {
            "data-processing": 1.1,
            "identity": 3,
            "volume": 2,
                "image": 2,
        }

     "data-processing": 1.1

   SAHARA_USE_NEUTRON=True

我可以在 Dashboard 上看到 Sahara 管理界面,但是当我尝试在 Dashboard 的 Image Registry 选项卡中注册图像时出现此错误。希望你不介意图片中的韩语。我应该告诉你其他事情在我的云中运行良好。我搜索了所有与撒哈拉沙漠相关的日志,没有任何结果。

image description

我怀疑这些代码部分向我展示了错误,但不知道如何解决这个问题。请帮忙!

/usr/local/lib/python2.7/dist-packages/saharadashboard/image_registry/forms.py

 glance = importutils.import_any('openstack_dashboard.api.glance',
                                    'horizon.api.glance')

def _get_images(self, request, filter):
        try:
            images, _more = glance.image_list_detailed(request, filters=filter)
        except Exception:
            images = []
            exceptions.handle(request,
                              _("Unable to retrieve images with filter %s.") %
                              filter)
        return images

    def _get_public_images(self, request):
        filter = {"is_public": True,
                  "status": "active"}
        return self._get_images(request, filter)

    def _get_tenant_images(self, request):
        filter = {"owner": request.user.tenant_id,
                  "status": "active"}
        return self._get_images(request, filter)

更新

在控制器上扫一眼 image-list

 +--------------------------------------+------------------------------+
    | ID                                   | Name                         |
    +--------------------------------------+------------------------------+
    | 28747d2b-c113-4dd3-ad44-908141461e6d | cirros                       |
    | ecb9ac84-7459-4b3b-a832-59329ae1e0ea | github-enterprise-2.6.5      |
    | 39ce8087-f95b-4204-bcee-0f084735cba9 | manila-service-image         |
    | f9a678a8-492f-481e-8c82-5d0c84f69675 | mysqlTest                    |
    | 5ae10b0d-c732-481a-944f-ca3a5a5f4915 | sahara-vanilla-latest-ubuntu |
    | f9ea4193-1a92-434d-b247-27b748feb4a1 | Ubuntu Server 14.04 LTS      |
    +--------------------------------------+------------------------------+

您可能有问题 keystone.Did 您尝试重新启动 keystone ?