规范的 openstack horizo​​n 仪表板登录不起作用

规范的 openstack horizo​​n 仪表板登录不起作用

我已经使用 option2 自助服务网络在 ubuntu 22.04 上设置了 openstack yoga

创建网络和风格后,我安装了 Horizo​​n 仪表板。当我使用管理员登录时,我在日志中收到以下错误

[Mon Dec 05 21:00:31.682242 2022] [wsgi:error] [pid 908283:tid 140658269378112] /usr/lib/python3/dist-packages/scss/namespace.py:172: DeprecationWarning: inspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()
[Mon Dec 05 21:00:31.682316 2022] [wsgi:error] [pid 908283:tid 140658269378112]   argspec = inspect.getargspec(function)
[Mon Dec 05 21:00:31.685894 2022] [wsgi:error] [pid 908283:tid 140658269378112] /usr/lib/python3/dist-packages/scss/selector.py:26: FutureWarning: Possible nested set at position 329
[Mon Dec 05 21:00:31.685921 2022] [wsgi:error] [pid 908283:tid 140658269378112]   SELECTOR_TOKENIZER = re.compile(r'''
[Mon Dec 05 21:00:32.942861 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000] INFO openstack_auth.plugin.base Attempted scope to domain Default failed, will attempt to scope to another domain.
[Mon Dec 05 21:00:33.291764 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000] INFO openstack_auth.forms Login successful for user "admin" using domain "Default", remote address 192.168.122.1.
[Mon Dec 05 21:00:33.308574 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000] /usr/lib/python3/dist-packages/compressor/signals.py:4: RemovedInDjango40Warning: The providing_args argument is deprecated. As it is purely documentational, it has no replacement. If you rely on this argument as documentation, you can move the text to a code comment or docstring.
[Mon Dec 05 21:00:33.308749 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]   post_compress = django.dispatch.Signal(providing_args=['type', 'mode', 'context'])
[Mon Dec 05 21:00:35.792612 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000] ERROR django.request Internal Server Error: /horizon/auth/login/
[Mon Dec 05 21:00:35.792746 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000] Traceback (most recent call last):
[Mon Dec 05 21:00:35.792769 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]   File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 47, in inner
[Mon Dec 05 21:00:35.792773 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]     response = get_response(request)
[Mon Dec 05 21:00:35.792777 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]   File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 119, in __call__
[Mon Dec 05 21:00:35.792782 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]     response = self.process_response(request, response)
[Mon Dec 05 21:00:35.792828 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]   File "/usr/lib/python3/dist-packages/django/contrib/sessions/middleware.py", line 61, in process_response
[Mon Dec 05 21:00:35.792833 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]     request.session.save()
[Mon Dec 05 21:00:35.792836 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]   File "/usr/lib/python3/dist-packages/django/contrib/sessions/backends/cache.py", line 56, in save
[Mon Dec 05 21:00:35.792856 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]     return self.create()
[Mon Dec 05 21:00:35.792860 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]   File "/usr/lib/python3/dist-packages/django/contrib/sessions/backends/cache.py", line 50, in create
[Mon Dec 05 21:00:35.792864 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000]     raise RuntimeError(
[Mon Dec 05 21:00:35.792867 2022] [wsgi:error] [pid 908283:tid 140658269378112] [remote 192.168.122.1:58000] RuntimeError: Unable to create a new session key. It is likely that the cache is unavailable.

我更新了 memcached ip 并重新启动了 apache。这次我遇到了新的错误

==> /var/log/apache2/error.log <==
[Mon Dec 05 21:59:38.837327 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] /usr/lib/python3/dist-packages/compressor/signals.py:4: RemovedInDjango40Warning: The providing_args argument is deprecated. As it is purely documentational, it has no replacement. If you rely on this argument as documentation, you can move the text to a code comment or docstring.
[Mon Dec 05 21:59:38.837745 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   post_compress = django.dispatch.Signal(providing_args=['type', 'mode', 'context'])
[Mon Dec 05 21:59:38.857426 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] ERROR django.request Internal Server Error: /horizon/project/
[Mon Dec 05 21:59:38.857583 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] Traceback (most recent call last):
[Mon Dec 05 21:59:38.857642 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/utils/memoized.py", line 107, in wrapped
[Mon Dec 05 21:59:38.857721 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     value = cache[key] = cache.pop(key)
[Mon Dec 05 21:59:38.857769 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] KeyError: ((<weakref at 0x7fed8093b830; to 'WSGIRequest' at 0x7fed80a56da0>,), ())
[Mon Dec 05 21:59:38.857826 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] 
[Mon Dec 05 21:59:38.857964 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] During handling of the above exception, another exception occurred:
[Mon Dec 05 21:59:38.858310 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] 
[Mon Dec 05 21:59:38.858394 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] Traceback (most recent call last):
[Mon Dec 05 21:59:38.858661 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/utils/memoized.py", line 107, in wrapped
[Mon Dec 05 21:59:38.858974 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     value = cache[key] = cache.pop(key)
[Mon Dec 05 21:59:38.859040 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] KeyError: ((<weakref at 0x7fed809a7fb0; to 'WSGIRequest' at 0x7fed80a56da0>,), ())
[Mon Dec 05 21:59:38.859256 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] 
[Mon Dec 05 21:59:38.859424 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] During handling of the above exception, another exception occurred:
[Mon Dec 05 21:59:38.859662 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] 
[Mon Dec 05 21:59:38.859953 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] Traceback (most recent call last):
[Mon Dec 05 21:59:38.860069 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/utils/memoized.py", line 107, in wrapped
[Mon Dec 05 21:59:38.860136 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     value = cache[key] = cache.pop(key)
[Mon Dec 05 21:59:38.860418 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] KeyError: ((<weakref at 0x7fed807c1260; to 'WSGIRequest' at 0x7fed80a56da0>,), ())
[Mon Dec 05 21:59:38.860695 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] 
[Mon Dec 05 21:59:38.860806 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] During handling of the above exception, another exception occurred:
[Mon Dec 05 21:59:38.861108 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] 
[Mon Dec 05 21:59:38.861235 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] Traceback (most recent call last):
[Mon Dec 05 21:59:38.861495 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 47, in inner
[Mon Dec 05 21:59:38.861600 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     response = get_response(request)
[Mon Dec 05 21:59:38.861668 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 181, in _get_response
[Mon Dec 05 21:59:38.861720 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     response = wrapped_callback(request, *callback_args, **callback_kwargs)
[Mon Dec 05 21:59:38.862025 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/decorators.py", line 51, in dec
[Mon Dec 05 21:59:38.862092 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     return view_func(request, *args, **kwargs)
[Mon Dec 05 21:59:38.862333 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/decorators.py", line 35, in dec
[Mon Dec 05 21:59:38.862435 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     return view_func(request, *args, **kwargs)
[Mon Dec 05 21:59:38.862500 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/decorators.py", line 35, in dec
[Mon Dec 05 21:59:38.862746 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     return view_func(request, *args, **kwargs)
[Mon Dec 05 21:59:38.862850 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/decorators.py", line 111, in dec
[Mon Dec 05 21:59:38.862920 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     return view_func(request, *args, **kwargs)
[Mon Dec 05 21:59:38.862971 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/decorators.py", line 83, in dec
[Mon Dec 05 21:59:38.863262 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     return view_func(request, *args, **kwargs)
[Mon Dec 05 21:59:38.863617 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/django/views/generic/base.py", line 70, in view
[Mon Dec 05 21:59:38.863729 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     return self.dispatch(request, *args, **kwargs)
[Mon Dec 05 21:59:38.863778 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/django/views/generic/base.py", line 98, in dispatch
[Mon Dec 05 21:59:38.863864 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     return handler(request, *args, **kwargs)
[Mon Dec 05 21:59:38.863931 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/tables/views.py", line 225, in get
[Mon Dec 05 21:59:38.864238 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     context = self.get_context_data(**kwargs)
[Mon Dec 05 21:59:38.864348 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/usage/views.py", line 213, in get_context_data
[Mon Dec 05 21:59:38.864597 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     context['charts'] = self._get_charts_data()
[Mon Dec 05 21:59:38.864702 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/usage/views.py", line 161, in _get_charts_data
[Mon Dec 05 21:59:38.864769 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     if self._check_chart_allowed(section):
[Mon Dec 05 21:59:38.864816 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/usage/views.py", line 173, in _check_chart_allowed
[Mon Dec 05 21:59:38.865131 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     result = allowed(self.request) if callable(allowed) else allowed
[Mon Dec 05 21:59:38.865248 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/usage/views.py", line 93, in _check_network_allowed
[Mon Dec 05 21:59:38.865618 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     return api.neutron.is_quotas_extension_supported(request)
[Mon Dec 05 21:59:38.865732 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/utils/memoized.py", line 109, in wrapped
[Mon Dec 05 21:59:38.865987 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     value = cache[key] = func(*args, **kwargs)
[Mon Dec 05 21:59:38.866104 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/api/neutron.py", line 2207, in is_quotas_extension_supported
[Mon Dec 05 21:59:38.866498 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     is_extension_supported(request, 'quotas'))
[Mon Dec 05 21:59:38.866617 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/api/neutron.py", line 2175, in is_extension_supported
[Mon Dec 05 21:59:38.866908 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     extensions = list_extensions(request)
[Mon Dec 05 21:59:38.867017 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/utils/memoized.py", line 109, in wrapped
[Mon Dec 05 21:59:38.867272 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     value = cache[key] = func(*args, **kwargs)
[Mon Dec 05 21:59:38.867379 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/api/neutron.py", line 2158, in list_extensions
[Mon Dec 05 21:59:38.867659 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     neutron_api = neutronclient(request)
[Mon Dec 05 21:59:38.867768 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/horizon/utils/memoized.py", line 109, in wrapped
[Mon Dec 05 21:59:38.868047 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     value = cache[key] = func(*args, **kwargs)
[Mon Dec 05 21:59:38.868167 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/api/neutron.py", line 829, in neutronclient
[Mon Dec 05 21:59:38.868448 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     token_id, neutron_url, auth_url = get_auth_params_from_request(request)
[Mon Dec 05 21:59:38.868566 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/api/neutron.py", line 822, in get_auth_params_from_request
[Mon Dec 05 21:59:38.868633 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     base.url_for(request, 'network'),
[Mon Dec 05 21:59:38.868696 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]   File "/usr/lib/python3/dist-packages/openstack_dashboard/api/base.py", line 349, in url_for
[Mon Dec 05 21:59:38.868930 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602]     raise exceptions.ServiceCatalogException(service_type)
[Mon Dec 05 21:59:38.869165 2022] [wsgi:error] [pid 976026:tid 140658252592704] [remote 192.168.122.1:51602] horizon.exceptions.ServiceCatalogException: Invalid service catalogue: network

这是我现在的配置

$ sudo egrep -v '^#|^$' /etc/openstack-dashboard/local_settings.py
import os
from django.utils.translation import gettext_lazy as _
from horizon.utils import secret_key
from openstack_dashboard.settings import HORIZON_CONFIG
DEBUG = False
ALLOWED_HOSTS = ['*']
LOCAL_PATH = os.path.dirname(os.path.abspath(__file__))
SECRET_KEY = secret_key.generate_or_read_from_file('/var/lib/openstack-dashboard/secret_key')
CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
        'LOCATION': '10.0.0.154:11211',
    }
}
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
OPENSTACK_HOST = "controller1"
OPENSTACK_KEYSTONE_URL = "http://%s:5000/identity/v3" % OPENSTACK_HOST
TIME_ZONE = "UTC"
LOGGING = {
    'version': 1,
    # When set to True this will disable all logging except
    # for loggers specified in this configuration dictionary. Note that
    # if nothing is specified here and disable_existing_loggers is True,
    # django.db.backends will still log unless it is disabled explicitly.
    'disable_existing_loggers': False,
    # If apache2 mod_wsgi is used to deploy OpenStack dashboard
    # timestamp is output by mod_wsgi. If WSGI framework you use does not
    # output timestamp for logging, add %(asctime)s in the following
    # format definitions.
    'formatters': {
        'console': {
            'format': '%(levelname)s %(name)s %(message)s'
        },
        'operation': {
            # The format of "%(message)s" is defined by
            # OPERATION_LOG_OPTIONS['format']
            'format': '%(message)s'
        },
    },
    'handlers': {
        'null': {
            'level': 'DEBUG',
            'class': 'logging.NullHandler',
        },
        'console': {
            # Set the level to "DEBUG" for verbose output logging.
            'level': 'DEBUG' if DEBUG else 'INFO',
            'class': 'logging.StreamHandler',
            'formatter': 'console',
        },
        'operation': {
            'level': 'INFO',
            'class': 'logging.StreamHandler',
            'formatter': 'operation',
        },
    },
    'loggers': {
        'horizon': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'horizon.operation_log': {
            'handlers': ['operation'],
            'level': 'INFO',
            'propagate': False,
        },
        'openstack_dashboard': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'novaclient': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'cinderclient': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'keystoneauth': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'keystoneclient': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'glanceclient': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'neutronclient': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'swiftclient': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'oslo_policy': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'openstack_auth': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'django': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        # Logging from django.db.backends is VERY verbose, send to null
        # by default.
        'django.db.backends': {
            'handlers': ['null'],
            'propagate': False,
        },
        'requests': {
            'handlers': ['null'],
            'propagate': False,
        },
        'urllib3': {
            'handlers': ['null'],
            'propagate': False,
        },
        'chardet.charsetprober': {
            'handlers': ['null'],
            'propagate': False,
        },
        'iso8601': {
            'handlers': ['null'],
            'propagate': False,
        },
        'scss': {
            'handlers': ['null'],
            'propagate': False,
        },
    },
}
SECURITY_GROUP_RULES = {
    'all_tcp': {
        'name': _('All TCP'),
        'ip_protocol': 'tcp',
        'from_port': '1',
        'to_port': '65535',
    },
    'all_udp': {
        'name': _('All UDP'),
        'ip_protocol': 'udp',
        'from_port': '1',
        'to_port': '65535',
    },
    'all_icmp': {
        'name': _('All ICMP'),
        'ip_protocol': 'icmp',
        'from_port': '-1',
        'to_port': '-1',
    },
    'ssh': {
        'name': 'SSH',
        'ip_protocol': 'tcp',
        'from_port': '22',
        'to_port': '22',
    },
    'smtp': {
        'name': 'SMTP',
        'ip_protocol': 'tcp',
        'from_port': '25',
        'to_port': '25',
    },
    'dns': {
        'name': 'DNS',
        'ip_protocol': 'tcp',
        'from_port': '53',
        'to_port': '53',
    },
    'http': {
        'name': 'HTTP',
        'ip_protocol': 'tcp',
        'from_port': '80',
        'to_port': '80',
    },
    'pop3': {
        'name': 'POP3',
        'ip_protocol': 'tcp',
        'from_port': '110',
        'to_port': '110',
    },
    'imap': {
        'name': 'IMAP',
        'ip_protocol': 'tcp',
        'from_port': '143',
        'to_port': '143',
    },
    'ldap': {
        'name': 'LDAP',
        'ip_protocol': 'tcp',
        'from_port': '389',
        'to_port': '389',
    },
    'https': {
        'name': 'HTTPS',
        'ip_protocol': 'tcp',
        'from_port': '443',
        'to_port': '443',
    },
    'smtps': {
        'name': 'SMTPS',
        'ip_protocol': 'tcp',
        'from_port': '465',
        'to_port': '465',
    },
    'imaps': {
        'name': 'IMAPS',
        'ip_protocol': 'tcp',
        'from_port': '993',
        'to_port': '993',
    },
    'pop3s': {
        'name': 'POP3S',
        'ip_protocol': 'tcp',
        'from_port': '995',
        'to_port': '995',
    },
    'ms_sql': {
        'name': 'MS SQL',
        'ip_protocol': 'tcp',
        'from_port': '1433',
        'to_port': '1433',
    },
    'mysql': {
        'name': 'MYSQL',
        'ip_protocol': 'tcp',
        'from_port': '3306',
        'to_port': '3306',
    },
    'rdp': {
        'name': 'RDP',
        'ip_protocol': 'tcp',
        'from_port': '3389',
        'to_port': '3389',
    },
}
DEFAULT_THEME = 'ubuntu'
WEBROOT='/horizon/'
ALLOWED_HOSTS = '*'
COMPRESS_OFFLINE = True
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
OPENSTACK_API_VERSIONS = {
    "identity": 3,
    "image": 2,
    "volume": 3,
}
OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = "Default"
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user"
OPENSTACK_NEUTRON_NETWORK = {
    'enable_router': True,
    'enable_quotas': True,
    'enable_ipv6': True,
    'enable_distributed_router': True,
    'enable_ha_router': True,
    'enable_fip_topology_check': True,
}
TIME_ZONE = 'Europe/London'

我已经设置了selfservice网络。这是正确的吗?

$ openstack service list
+----------------------------------+-----------+-----------+
| ID                               | Name      | Type      |
+----------------------------------+-----------+-----------+
| 045e461aae9a4c44a8977ee8137c828d | glance    | image     |
| 14c9fafa19d34c72a2170724cc2ffff2 | placement | placement |
| 5fd5ead5de9146da8ec0e1223117fe3b | nova      | compute   |
| a3ea4ce3be8d4a24a8ac92a0280e6c26 | neutron   | network   |
| d4c50bb4b1dd4b798bdca7ec0fa83393 | neutron   | network   |
| de635d4008ce431b89d9413a71944e12 | neutron   | network   |
| fc49cbcaa0c148aa94d368127863d46e | keystone  | identity  |
+----------------------------------+-----------+-----------+

相关内容