De nombreux services OpenStack permettent à une base de données d'assurer le suivi des ressources critiques, leur utilisation et d'autres informations. Par défaut, les bases de données individuelles SQLite sont indiquées dans ce but, et s'avèrent utiles pour la configuration mononoeud. Pour les configurations multinoeuds, une base de données MySQL est recommandée pour stocker ces informations.
Utilisez l'adresse IP principale du noeud de contrôleur pour déterminer le nom principal associé à ce noeud.
controller# getent hosts controller-IP controller-IP controller-name
controller# pkg install mysql-55
controller# pkg install mysql-55/client
controller# svcadm enable mysql:version_55
controller# mysqladmin -u root password MySQL-root-password
Créez les tables qui seront utilisées par OpenStack. Accordez les privilèges aux services sur le noeud de contrôleur afin de fournir un accès exclusif à ces bases de données. Utilisez le controller-name généré par la commande getent hosts précédente.
controller# mysql -u root -p Enter password: MySQL-root-password mysql> create database cinder; mysql> grant all privileges on cinder.* \ -> to 'cinder'@'controller-name' \ -> identified by 'cinder'; mysql> create database glance; mysql> grant all privileges on glance.* \ -> to 'glance'@’controller-name’ \ -> identified by 'glance'; mysql> create database keystone; mysql> grant all privileges on keystone.* \ -> to 'keystone'@’controller-name’ \ -> identified by 'keystone'; mysql> create database nova; mysql> grant all privileges on nova.* \ -> to 'nova'@’controller-name’ \ -> identified by 'nova'; mysql> flush privileges; mysql> quit
controller# pkg install python-mysql