OpenStack Cloud Computing Cookbook
http://www.openstackcookbook.com/
Tag Archives: mariadb
Pre-Order OpenStack Cloud Computing Cookbook and get 30% Off Before 25th July!
July 19, 2015
Posted by on The OpenStack Cloud Computing Cookbook, 3rd Edition is due for publication in August 2015. You can reserve a copy and get a whopping 30% Off with the code OCCC30 if used before July 25th 2015 from the Packt website.
We cover Juno and Kilo installations – and always maintain an updated multi-node learning environment with the latest releases at https://github.com/OpenStackCookbook/OpenStackCookbook
This is what we cover in the book to help you install and configure OpenStack for your environment, whether you’re setting up a lab or ready to move to production:
Chapter 1: Keystone – Installation, Setting up SSL, using with LDAP and more!
Chapter 2: Glance – Installation, using with Object Storage, migrating from disk versions and more!
Chapter 3: Neutron – Installation, configuration of OVS, creating networks, using distributed virtual routers and more!
Chapter 4: Nova – Installation, configuration, launching instances, host aggregates and much more!
Chapter 5: Swift – Installation, configuration, rings and more!
Chapter 6: Using Swift – Uploading objects, large objects, containers, container replication and more!
Chapter 7: Administering Swift – monitoring, collecting stats, dealing with failures and more!
Chapter 8: Cinder – Installation, using and configuring 3rd party backends and more!
Chapter 9: More OpenStack – Cloud-init, LBaaS, FWaaS, Ceilometer and Heat!
Chapter 10: Horizon – Installation and configuration and using the dashboard!
Chapter 11: Production OpenStack – configuring HA, clusters, using Galera and other techniques and automation using Ansible!
Get your copy today at bit.ly/1MtAJov with 30% Off Code OCCC30
Pre-Requisites for the OpenStack Cloud Computing Cookbook lab
June 9, 2015
Posted by on The OpenStack Cloud Computing Cookbook has been written in such a way so that our readers can follow each section to understand, install and configure each component of the OpenStack environment. We cover Compute (Nova), Identity (Keystone), Image (Glance), Networking (Neutron), Storage (Cinder and Swift) as well as many other services such as how to install these components using Ansible. As such, there are elements of the OpenStack environment that don’t fit in any particular chapter. These supporting services are:
- Messaging (RabbitMQ)
- Database (MariaDB)
- NTP
- NTP is required on each host in the environment. For details of configuring NTP, visit https://help.ubuntu.com/lts/serverguide/NTP.html
Installing MariaDB for OpenStack Cloud Computing Cookbook
March 28, 2015
Posted by on The examples in the OpenStack Cloud Computing Cookbook assumes you have a suitable database backend configured to run the OpenStack services. This didn’t fit with any single chapter or service as they all rely on something like MariaDB or MySQL. If you don’t have this installed, follow these steps which you should be able to copy and paste to run in your environment.
Getting ready
We will be performing an installation and configuration of MariaDB on the Controller node that is shown in the diagram. MariaDB and MySQL are interchangeable in terms of providing the necessary MySQL database connections required for OpenStack. More information can be found at the MariaDB website. In the examples through the book, the IP address of the Controller that this will be on, and will be used by the services in the book, will be 172.16.0.200.

OpenStack Cloud Computing Cookbook Lab Environment
How to do it…
To install MariaDB, carry out the following steps as root
Tip: A script is provided here for you to run the commands below
- We first set some variables that will be used in the subsequent steps. This allows you to edit to suit your own environment.
export MYSQL_HOST=172.16.0.200 export MYSQL_ROOT_PASS=openstack export MYSQL_DB_PASS=openstack
- We then set some defaults in debconf to avoid any interactive prompts
echo "mysql-server-5.5 mysql-server/root_password password $MYSQL_ROOT_PASS" | sudo debconf-set-selections echo "mysql-server-5.5 mysql-server/root_password_again password $MYSQL_ROOT_PASS" | sudo debconf-set-selections echo "mysql-server-5.5 mysql-server/root_password seen true" | sudo debconf-set-selections echo "mysql-server-5.5 mysql-server/root_password_again seen true" | sudo debconf-set-selections
- We then install the required packages with the following command
sudo apt-get -y install mariadb-server python-mysqldb
- We now tell MariaDB to listen on all interfaces as well as set a max connection limit. Note, edit to suit the security and requirements in your environment.
sudo sed -i "s/^bind\-address.*/bind-address = 0.0.0.0/g" /etc/mysql/my.cnf sudo sed -i "s/^#max_connections.*/max_connections = 512/g" /etc/mysql/my.cnf
- To speed up MariaDB as well as help with permissions, add the following line to /etc/mysql/conf.d/skip-name-resolve.cnf
echo "[mysqld] skip-name-resolve" > /etc/mysql/conf.d/skip-name-resolve.cnf
- We configure UTF-8 with the following
echo "[mysqld] collation-server = utf8_general_ci init-connect='SET NAMES utf8' character-set-server = utf8" > /etc/mysql/conf.d/01-utf8.cnf
- We pick up the changes made by restarting MariaDB with the following command
sudo service mysql restart
- We now ensure the root user has the correct permissions to allow us to create further databases and users
mysql -u root -p${MYSQL_ROOT_PASS} -h localhost -e "GRANT ALL ON *.* to root@\"localhost\" IDENTIFIED BY \"${MYSQL_ROOT_PASS}\" WITH GRANT OPTION;" mysql -u root -p${MYSQL_ROOT_PASS} -h localhost -e "GRANT ALL ON *.* to root@\"${MYSQL_HOST}\" IDENTIFIED BY \"${MYSQL_ROOT_PASS}\" WITH GRANT OPTION;" mysql -u root -p${MYSQL_ROOT_PASS} -h localhost -e "GRANT ALL ON *.* to root@\"%\" IDENTIFIED BY \"${MYSQL_ROOT_PASS}\" WITH GRANT OPTION;"
- We run the following command to pick up the permission changes
mysqladmin -uroot -p${MYSQL_ROOT_PASS} flush-privileges
How it works…
What we have done here is install and configure MariaDB on our Controller node that is hosted with address 172.16.0.200. When we configure our OpenStack services that required a database connection, they will use the address format mysql://user:password@172.16.0.200/service.
See Also
The 3rd Edition of the OpenStack Cloud Computing Cookbook covers installation of highly available MariaDB with Galera