Allow mongod service to launch on Fedora
Fixes bug 1144907
Previously, the mongod service may fail to launch, if the eager
filesystem freespace check trips over an SELinux AVC or finds
a lack of freespace (depending on the up-to-datedness of the
selinux-policy-targeted package and the disk size/usage in the
hosting instance).
We work around these issues by ensuring the selinux-policy-targeted
package is up-to-date when ceilometer is enabled on Fedora, and
also setting the --smallfiles option.
Change-Id: I74f21662aedf9cc07b9a335d22b833a8a80dfce2
diff --git a/lib/ceilometer b/lib/ceilometer
index 8772867..c04371d 100644
--- a/lib/ceilometer
+++ b/lib/ceilometer
@@ -88,9 +88,20 @@
iniset $CEILOMETER_CONF keystone_authtoken admin_tenant_name $SERVICE_TENANT_NAME
iniset $CEILOMETER_CONF keystone_authtoken signing_dir $CEILOMETER_AUTH_CACHE_DIR
+ configure_mongodb
+
cleanup_ceilometer
}
+function configure_mongodb() {
+ if is_fedora ; then
+ # ensure smallfiles selected to minimize freespace requirements
+ sudo sed -i '/--smallfiles/!s/OPTIONS=\"/OPTIONS=\"--smallfiles /' /etc/sysconfig/mongod
+
+ restart_service mongod
+ fi
+}
+
# init_ceilometer() - Initialize etc.
function init_ceilometer() {
# Create cache dir