summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-03-21 02:47:52 +0000
committerGerrit Code Review <review@openstack.org>2015-03-21 02:47:52 +0000
commit17eccb0dfd4e39f90f5b0bd5fd608525524422f3 (patch)
tree28b98c36b11e725683383e0fa70f383fe1720535 /docs
parent3f4c45fac55690e62d0ecfa4bdf47ee59912459b (diff)
parent5547b5fe786b7491d2e33f92c4082535f2bb56cf (diff)
downloadkolla-17eccb0dfd4e39f90f5b0bd5fd608525524422f3.tar.gz
kolla-17eccb0dfd4e39f90f5b0bd5fd608525524422f3.zip
Merge "Implements: blueprint Implement a database container set"
Diffstat (limited to 'docs')
-rw-r--r--docs/database-container-set.md50
-rw-r--r--docs/integration-guide.md5
2 files changed, 52 insertions, 3 deletions
diff --git a/docs/database-container-set.md b/docs/database-container-set.md
new file mode 100644
index 000000000..b4a16388a
--- /dev/null
+++ b/docs/database-container-set.md
@@ -0,0 +1,50 @@
+MariaDB Container Set
+=====================
+
+The MariaDB database application has been organized into two containers,
+known as a [container-set][] within the Kolla project. One container runs
+the MariaDB application and the other stores the actual data.
+
+Operational efficiencies and service stability is provided by
+separating the application from the stored data. For example, stored data
+can be backed-up or restored without touching the MariaDB application
+component.
+
+The containers work in a cooperative fashion by using [docker-compose][]
+(aka Fig) to ensure the containers are co-located on the same host.
+With docker-compose, you can manage the containers collectively
+as a single unit.
+
+Here is a sample docker-compose yaml file for using both MariaDB containers:
+
+```
+mariadbdata:
+ image: kollaglue/centos-rdo-mariadb-data
+ volumes:
+ - /var/lib/mysql:/var/lib/mysql
+ - /var/log/mariadb:/var/log/mariadb
+ net: "host"
+ privileged: true
+mariadbapp:
+ image: kollaglue/centos-rdo-mariadb-app
+ env_file:
+ - openstack.env
+ volumes_from:
+ - mariadbdata
+ net: "host"
+ ports:
+ - "3306:3306"
+ privileged: true
+```
+
+In addition to the MariaDB application being organized across two containers, the data
+container follows the [data-only container][] design pattern. In this design pattern,
+a dedicated container is used to perform a host mount and separate application
+container(s) mount volumes from the data-only container instead of performing the host
+mount directly. In the example above, the MariaDbApp container mounts the /var/lib/mysql
+and /var/log/mariadb volumes through the MariaDbData container instead of mounting
+these directly to the Docker host.
+
+[docker-compose]: http://www.fig.sh/
+[container-set]: https://review.openstack.org/#/c/153798/
+[data-only container]: http://www.tech-d.net/2013/12/16/persistent-volumes-with-docker-container-as-volume-pattern/
diff --git a/docs/integration-guide.md b/docs/integration-guide.md
index 3bd6e2af6..0d975f886 100644
--- a/docs/integration-guide.md
+++ b/docs/integration-guide.md
@@ -43,7 +43,6 @@ all containers. This allows a simple method of ensuring every type of node
ADMIN_USER_PASSWORD=<steakfordinner> - The admin user password
ADMIN_TENANT_NAME=<admin> - tenant name
- DB_ROOT_PASSWORD=<mysql root password> - defines the MYSQL root password
FLAT_INTERFACE=<nova or neutron networking flat interface device name>
GLANCE_API_SERVICE_HOST=<IP> - address where glance API is running>
GLANCE_DB_NAME=<glance> - DB name of glance service
@@ -59,8 +58,8 @@ all containers. This allows a simple method of ensuring every type of node
KEYSTONE_AUTH_PROTOCOL=<http> - The keystone authentication protocol
KEYSTONE_DB_PASSWORD=<password> - The password used to access Keystone in the DB
KEYSTONE_PUBLIC_SERVICE_HOST=<IP> - The IP address where Keystone is running
- MARIADB_SERVICE_HOST=<IP> - The IP Address where mariadb is running
- MYSQL_ROOT_PASSWORD=<password> - The MYSQL password
+ MARIADB_ROOT_PASSWORD=<mariadb root password> - defines the MariaDB root password
+ MARIADB_SERVICE_HOST=<IP> - The IP Address where Mariadb is running
NETWORK_MANAGER=<nova|neutron> - Use Nova or Neutron networking
NOVA_API_SERVICE_HOST=<IP> - The IP Address where the Nova API Service is hosted
NOVA_DB_NAME=<nova> - The name of the nova entry in the database