Установил Devstack Stain (?) из ветки Master на Centos 7 (3.10.0-957.21.3.el7.x86_64)
git clone https://opendev.org/openstack/devstack
С вот таким local.rc:
[[local|localrc]]
ADMIN_PASSWORD=123
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
HOST_IP=192.168.1.50
PIP_UPGRADE=True
И всё вроде бы работало пока не перезагрузил сервер. После перезагрузки две службы не поднялись: «httpd» и «devstack@q-agt.service». «httpd» просто запустил, а «devstack@q-agt.service» запустилась только после отключения SElinux. Однако! При попытке залогиниться в Openstack Dashboard после ввода пароля выпадает ошибка.
RuntimeError at /auth/login/
Unable to create a new session key. It is likely that the cache is unavailable.
Request Method: POST
Request URL: http://192.168.1.50/dashboard/auth/login/
Django Version: 1.11.22
Exception Type: RuntimeError
Exception Value: Unable to create a new session key. It is likely that the cache is unavailable.
Exception Location: /usr/lib/python2.7/site-packages/django/contrib/sessions/backends/cache.py in create, line 52
Python Executable: /usr/bin/python
Python Version: 2.7.5
Python Path: ['/opt/stack/horizon',
'/opt/stack/keystone',
'/opt/stack/glance',
'/opt/stack/cinder',
'/opt/stack/neutron',
'/opt/stack/nova',
'/opt/stack/placement',
'/opt/stack/horizon',
'/opt/stack/tempest',
'/usr/lib64/python27.zip',
'/usr/lib64/python2.7',
'/usr/lib64/python2.7/plat-linux2',
'/usr/lib64/python2.7/lib-tk',
'/usr/lib64/python2.7/lib-old',
'/usr/lib64/python2.7/lib-dynload',
'/usr/lib64/python2.7/site-packages',
'/usr/lib/python2.7/site-packages',
'/opt/stack/horizon/openstack_dashboard']
Server time: Mon, 29 Jul 2019 14:19:31 +0000
Функция на которой наворачивается
cat /usr/lib/python2.7/site-packages/django/contrib/sessions/backends/cache.py
def load(self):
try:
session_data = self._cache.get(self.cache_key)
except Exception:
# Some backends (e.g. memcache) raise an exception on invalid
# cache keys. If this happens, reset the session. See #17810.
session_data = None
if session_data is not None:
return session_data
self._session_key = None
return {}
Пытался очистить memcache, но не нашел его порта
[root@stack ~]# echo 'flush_all' | nc 127.0.0.1 11211
Ncat: Connection refused.
[root@stack ~]# nmap localhost
Starting Nmap 6.40 ( http://nmap.org ) at 2019-07-29 17:56 MSK
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000010s latency).
Other addresses for localhost (not scanned): 127.0.0.1
Not shown: 994 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
111/tcp open rpcbind
443/tcp open https
3306/tcp open mysql
Nmap done: 1 IP address (1 host up) scanned in 0.07 seconds
Потом пошел в /etc/sysconfig/memcached и открыл memcached миру
OPTIONS="-l 127.0.0.1,::1" --> OPTIONS="-l 0.0.0.0,::1"
systemctl restart httpd ; systemctl restart memcached
И оно заработало. Неизвестно почему. Что это было вообще?! Devstack нельзя перезагружать?