Установка Openstack на Ubuntu 16.04 в настоящий момент доработана не докнца и имеет нюянсы http://docs.openstack.org/mitaka/install-guide-ubuntu/
Репозиторий
если видите
cloud-archive for Mitaka only supported on trusty
это значит, что вместо репозитория mitaka нужно использовать newton:
sudo add-apt-repository cloud-archive:newton
Specified key was too long; max key length is 767 bytes
https://bugs.launchpad.net/openstack-manuals/+bug/1575688 Вместо utf8mb4 нужно во всех файлах /etc/mysql/mariadb.conf.d/* везде использовать utf8:
sudo grep -rl utf8mb4 /etc/mysql/mariadb.conf.d/ | sudo xargs sed -i 's/utf8mb4/utf8/g'
В файле /etc/mysql/conf.d/mysqld_openstack.cnf должно быть:
[client] default-character-set = utf8 [mysqld] bind-address = 172.16.3.32 default-storage-engine = innodb innodb_file_per_table collation-server = utf8_general_ci init-connect = 'SET NAMES utf8' character-set-server = utf8 [mysql] default-character-set = utf8
В файле /etc/mysql/my.cnf комментируем строки
#!includedir /etc/mysql/conf.d/ #!includedir /etc/mysql/mariadb.conf.d/
иначе при заполнении базы keystone будут сообщения типа:
WARNING oslo_db.sqlalchemy.engines [-] SQL connection failed. 10 attempts left.
После этого дропаем базу keystone, перезапускаем mysql, а потом создаем и заполняем базу keystone:
sudo mysql -u root -p
и выполняем:
DROP DATABASE keystone; CREATE DATABASE keystone; GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY '1q2w3e4r'; GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY '1q2w3e4r'; quit
А потом:
sudo su su -s /bin/sh -c "keystone-manage db_sync" keystone
Apache: Name duplicates previous WSGI daemon definition.
status apache2.service ..... AH00526: Syntax error on line 5 of /etc/apache2/sites-enabled/wsgi-keystone.conf: Name duplicates previous WSGI daemon definition.
В этом случае, скорее всего, есть два файла в /etc/apache2/sites-enabled/ в котором присутствует строка:
WSGIDaemonProcess keystone-public
Различия между liberty и mitaka
В файлике /etc/keystone/keystone.conf:
Liberty:
[token] ... provider = uuid
Mitaka:
[token] ... provider = fernet
Discussion