Product SiteDocumentation Site

25.2. Настройка MySQL (MariaDB) для хранения конфигурации

По умолчанию OpenNebula использует встроенную базу SQLite. Для среды промышленной эксплуатации рекомендуется использовать MariaDB или MySQL. Настройку следует выполнить до первого запуска OpenNebula, чтобы избежать проблем с учётными данными oneadmin и serveradmin.

Примечание

Безопасность MySQL можно настроить с помощью:
# mysql_secure_installation
Создайте пользователя базы данных, предоставьте ему права доступа к базе данных opennebula (эта база данных будет создана при первом запуске OpenNebula) и настройте уровень изоляции:
$ mysql -u root -p
Enter password:

MariaDB > CREATE USER 'oneadmin'@'localhost' IDENTIFIED BY '<пароль>';
Query OK, 0 rows affected (0,007 sec)

MariaDB > GRANT ALL PRIVILEGES ON opennebula.* TO 'oneadmin'@'localhost';
Query OK, 0 rows affected (0,004 sec)

MariaDB > SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;
Query OK, 0 rows affected (0.001 sec)

MariaDB > FLUSH PRIVILEGES;
Query OK, 0 rows affected (0,001 sec)

MariaDB > exit
В конфигурационном файле /etc/one/oned.conf закомментируйте секцию sqlite, раскомментируйте и настройте секцию MySQL:
#DB = [ BACKEND = "sqlite",
#       TIMEOUT = 2500 ]

# Sample configuration for MySQL
DB = [ BACKEND = "mysql",
       SERVER  = "localhost",
       PORT    = 0,
       USER    = "oneadmin",
       PASSWD  = "<пароль>",
       DB_NAME = "opennebula",
       CONNECTIONS = 25,
       COMPARE_BINARY = "no" ]
где:
  • SERVER — IP-адрес/имя машины, на которой запущен сервер MySQL;
  • PORT — порт для подключения к СУБД. Значение 0 означает использование порта по умолчанию (3306 для MySQL/MariaDB);
  • USER — имя пользователя MySQL;
  • PASSWD — пароль MySQL;
  • DB_NAME — имя базы данных MySQL, которую будет использовать OpenNebula;
  • CONNECTIONS — максимальное количество подключений;
  • COMPARE_BINARY — включает учёт регистра при сравнении имён (используется оператор BINARY в SQL-запросах).