In my lab, I loaded OpenStack Mitaka on my CentOS 7 box. Everything was pretty much loaded in the root partition because I did not have enough drives and space at the time. Eventually the root partition got 100% full and was throwing all sorts of errors in OpenStack and other places in CentOS. Since I have additional space now so I have to tell OpenStack to start using it.
The folders using most of the space was the images directory in the glance folder. I wanted to keep things easy without changing the current path of the folders inside the glance-api.conf file which is /var/lib/glance
First I had make the physical volumes then volume group, then I created the logical volumes with the following command.
lvcreate -L 200G -n glance cinder-volumes
Then formatted it
mkfs.xfs /dev/cinder-volumes/glance
I zipped up the current images folder and then temporarily moved the files into my home directory and removed the files from their original location
tar -cvf images.tar images
mv images.tar /home/
rm -drf /var/lib/glance/images/
Backup and edit the /etc/fstab file to mount the new file system by adding the following line
/dev/cinder-volumes/glance /var/lib/glance/images xfs defaults 0 0
Extrat the files you zipped up earlier then move into the new mounted liv/var/glance/images directory and update the permissions and ownership
tar -xvf images.tar
chown -R glance:glance /var/lib/glance
SElinux will need to update the following to allow us to connect to our newly created path, a shell file was created and can be reused if you need to perform the following on any other directories.
#!/bin/bash
set -eu
[ -x /usr/sbin/semanage ] || exit 0
semanage fcontext -a -t glance_var_lib_t "/var/lib/glance(/.*)?"
restorecon -Rv /var/lib/glance
semanage fcontext -a -t glance_log_t "/var/log/glance(/.*)?"
restorecon -Rv /var/log/glance
Restart the appropriate services and reboot to make sure you can update and add images and it is populating the appropriate directories.