Installing MariaDB database
Most OpenStack projects and their components keep their persistent data and objects' status in a database. MySQL and MariaDB are the most used and tested databases with OpenStack. In our case, and in the most commonly deployed layout, controller-Neutron-compute, the database is installed on the controller node.
Run the following commands on the controller node!
How to do it...
Proceed with the following steps:
- Install MaridaDB packages as follows:
[root@controller ~]# yum install mariadb-galera-server
Yum might deploy additional packages after resolving MariaDB's dependencies. A successful installation should output as follows:
Installed: mariadb-galera-server.x86_64 1:5.5.37-7.el7ost Dependency Installed: mariadb.x86_64 1:5.5.37-1.el7_0 mariadb-galera-common.x86_64 1:5.5.37-7.el7ost mariadb-libs.x86_64 1:5.5.37-1.el7_0 perl-DBD-MySQL.x86_64 0:4.023-5.el7 Complete!
- Start MariaDB database service using
systemctl
command as a root:[root@controller ~]# systemctl start mariadb.service
If no output is returned, this means the command is completed successfully.
- Enable it, so it starts automatically after reboot:
[root@controller ~]# systemctl enable mariadb.service
MariaDB maintains its own user accounts and passwords;
root
is the default administrative user name account that MariaDB uses. We should change the default password for the root account as keeping the default password is a major security treat. - Change the database root password as follows, where
new_password
is the password we want to set:[root@controller ~]# mysqladmin -u root password new_password
Keep this in the passwords' list; we will need to create databases for the services we will deploy in the following parts of the chapter.
There's more...
Almost all components require access to the database; hence, we should keep port 3306 open for new connections on the controller node:
[root@controller ~]# firewall-cmd --add-port=3306/tcp --permanent