Base de données SQL sur Ubuntu

La plupart des services OpenStack utilisent une base de données SQL pour stocker des informations. La base de données tourne généralement sur le contrôleur. Les procédures dans ce guide utilisent MariaDB ou MySQL en fonction de la distribution. Les services OpenStack supportent également d’autres bases de données SQL dont PostgreSQL.

Note

A partir d’Ubuntu 16.04, MariaDB a changé pour utiliser le « plugin d’authentification unix_socket ». L’authentification locale est maintenant effectuée en utilisant les informations d’identification de l’utilisateur (UID). Le mot de passe d’authentification n’est plus utilisé par défaut. Ce qui veut dire que l’utilisateur root n’utilise plus de mot de passe pour l’accès local au serveur.

Note

As of Ubuntu 18.04, the mariadb-server package is no longer available from the default repository. To install successfully, enable the Universe repository on Ubuntu.

Installer et configurer les composants

  1. Installez les paquets :

    • As of Ubuntu 20.04, install the packages:

      # apt install mariadb-server python3-pymysql
      
    • As of Ubuntu 18.04 or 16.04, install the packages:

      # apt install mariadb-server python-pymysql
      
  2. Créer et éditer le fichier `/etc/mysql/mariadb.conf.d/99-openstack.cnf et effectuer les modifications suivantes :

    • Créer une section [mysqld], et définir la clé bind-address avec l’adresse IP de management du contrôleur pour permettre l’accès par les autres nœuds via le réseau de management. Définir des clés supplémentaires pour activer des options utiles et le jeu de caractères UTF-8:

      [mysqld]
      bind-address = 10.0.0.11
      
      default-storage-engine = innodb
      innodb_file_per_table = on
      max_connections = 4096
      collation-server = utf8_general_ci
      character-set-server = utf8
      

Finaliser l’installation

  1. Redémarrer le service de base de données :

    # service mysql restart
    
  1. Sécuriser le service de base de données en exécutant le script mysql_secure_installation. En particulier, choisir un mot de passe approprié pour le compte root de la base de données:

    # mysql_secure_installation