From 8c5c86654976baa2bfc1a43650e816a9ec3bddcd Mon Sep 17 00:00:00 2001 From: Martin Loschwitz Date: Wed, 29 Aug 2012 13:01:07 +0000 Subject: [PATCH] Deleted the RAs for nova-objectstore, nova-network and nova-volume due to QA problems --- ocf/nova-network | 305 ------------------------------------------- ocf/nova-objectstore | 305 ------------------------------------------- ocf/nova-volume | 305 ------------------------------------------- 3 files changed, 915 deletions(-) delete mode 100644 ocf/nova-network delete mode 100644 ocf/nova-objectstore delete mode 100644 ocf/nova-volume diff --git a/ocf/nova-network b/ocf/nova-network deleted file mode 100644 index ac6c622..0000000 --- a/ocf/nova-network +++ /dev/null @@ -1,305 +0,0 @@ -#!/bin/sh -# -# -# OpenStack NovaNetwork (nova-network) -# -# Description: Manages an OpenStack NovaNetwork (nova-network) process as an HA resource -# -# Authors: Alessandro Tagliapietra -# Mainly inspired by the Glance API resource agent written by Martin Gerhard Loschwitz from Hastexo: http://goo.gl/whLp -# and the other resource agents by Sebastien Han http://sebastien-han.fr -# -# Website: http://www.alexnetwork.it/ -# -# Support: openstack@lists.launchpad.net -# License: Apache Software License (ASL) 2.0 -# -# -# See usage() function below for more details ... -# -# OCF instance parameters: -# OCF_RESKEY_binary -# OCF_RESKEY_config -# OCF_RESKEY_user -# OCF_RESKEY_pid -# OCF_RESKEY_additional_parameters -####################################################################### -# Initialization: - -: ${OCF_FUNCTIONS_DIR=${OCF_ROOT}/lib/heartbeat} -. ${OCF_FUNCTIONS_DIR}/ocf-shellfuncs - -####################################################################### - -# Fill in some defaults if no values are specified - -OCF_RESKEY_binary_default="nova-network" -OCF_RESKEY_config_default="/etc/nova/nova.conf" -OCF_RESKEY_user_default="nova" -OCF_RESKEY_pid_default="$HA_RSCTMP/$OCF_RESOURCE_INSTANCE.pid" - -: ${OCF_RESKEY_binary=${OCF_RESKEY_binary_default}} -: ${OCF_RESKEY_config=${OCF_RESKEY_config_default}} -: ${OCF_RESKEY_user=${OCF_RESKEY_user_default}} -: ${OCF_RESKEY_pid=${OCF_RESKEY_pid_default}} - -####################################################################### - -usage() { - cat < - - -1.0 - - -Resource agent for the OpenStack NovaNetwork (nova-network) -May manage a nova-network instance or a clone set that -creates a distributed nova-network cluster. - -Manages the OpenStack NovaNetwork (nova-network) - - - - -Location of the OpenStack NovaNetwork server binary (nova-network) - -OpenStack NovaNetwork server binary (nova-network) - - - - - -Location of the OpenStack NovaNetwork (nova-network) configuration file - -OpenStack NovaNetwork (nova-network) config file - - - - - -User running OpenStack NovaNetwork (nova-network) - -OpenStack NovaNetwork (nova-network) user - - - - - -The pid file to use for this OpenStack NovaNetwork (nova-network) instance - -OpenStack NovaNetwork (nova-network) pid file - - - - - -Additional parameters to pass on to the OpenStack NovaNetwork (nova-network) - -Additional parameters for nova-network - - - - - - - - - - - - - - -END -} - -####################################################################### -# Functions invoked by resource manager actions - -nova_network_validate() { - local rc - - check_binary $OCF_RESKEY_binary - - # A config file on shared storage that is not available - # during probes is OK. - if [ ! -f $OCF_RESKEY_config ]; then - if ! ocf_is_probe; then - ocf_log err "Config $OCF_RESKEY_config doesn't exist" - return $OCF_ERR_INSTALLED - fi - ocf_log_warn "Config $OCF_RESKEY_config not available during a probe" - fi - - getent passwd $OCF_RESKEY_user >/dev/null 2>&1 - rc=$? - if [ $rc -ne 0 ]; then - ocf_log err "User $OCF_RESKEY_user doesn't exist" - return $OCF_ERR_INSTALLED - fi - - true -} - -nova_network_status() { - local pid - local rc - - if [ ! -f $OCF_RESKEY_pid ]; then - ocf_log info "OpenStack NovaNetwork (nova-network) is not running" - return $OCF_NOT_RUNNING - else - pid=`cat $OCF_RESKEY_pid` - fi - - ocf_run -warn kill -s 0 $pid - rc=$? - if [ $rc -eq 0 ]; then - return $OCF_SUCCESS - else - ocf_log info "Old PID file found, but OpenStack NovaNetwork (nova-network) is not running" - return $OCF_NOT_RUNNING - fi -} - -nova_network_monitor() { - local rc - local token - - nova_network_status - rc=$? - - # If status returned anything but success, return that immediately - if [ $rc -ne $OCF_SUCCESS ]; then - return $rc - fi - - ocf_log debug "OpenStack NovaNetwork (nova-network) monitor succeeded" - return $OCF_SUCCESS -} - -nova_network_start() { - local rc - - nova_network_status - rc=$? - if [ $rc -eq $OCF_SUCCESS ]; then - ocf_log info "OpenStack NovaNetwork (nova-network) already running" - return $OCF_SUCCESS - fi - - # run the actual nova-network daemon. Don't use ocf_run as we're sending the tool's output - # straight to /dev/null anyway and using ocf_run would break stdout-redirection here. - su ${OCF_RESKEY_user} -s /bin/sh -c "${OCF_RESKEY_binary} --flagfile=$OCF_RESKEY_config \ - $OCF_RESKEY_additional_parameters"' >> /dev/null 2>&1 & echo $!' > $OCF_RESKEY_pid - - # Spin waiting for the server to come up. - # Let the CRM/LRM time us out if required - sleep 1 - while true; do - nova_network_monitor - rc=$? - [ $rc -eq $OCF_SUCCESS ] && break - if [ $rc -ne $OCF_NOT_RUNNING ]; then - ocf_log err "OpenStack NovaNetwork (nova-network) start failed" - exit $OCF_ERR_GENERIC - fi - sleep 1 - done - - ocf_log info "OpenStack NovaNetwork (nova-network) started" - return $OCF_SUCCESS -} - -nova_network_stop() { - local rc - local pid - - nova_network_status - rc=$? - if [ $rc -eq $OCF_NOT_RUNNING ]; then - ocf_log info "OpenStack NovaNetwork (nova-network) already stopped" - return $OCF_SUCCESS - fi - - # Try SIGTERM - pid=`cat $OCF_RESKEY_pid` - ocf_run kill -s TERM $pid - rc=$? - if [ $rc -ne 0 ]; then - ocf_log err "OpenStack NovaNetwork (nova-network) couldn't be stopped" - exit $OCF_ERR_GENERIC - fi - - # stop waiting - shutdown_timeout=15 - if [ -n "$OCF_RESKEY_CRM_meta_timeout" ]; then - shutdown_timeout=$((($OCF_RESKEY_CRM_meta_timeout/1000)-5)) - fi - count=0 - while [ $count -lt $shutdown_timeout ]; do - nova_network_status - rc=$? - if [ $rc -eq $OCF_NOT_RUNNING ]; then - break - fi - count=`expr $count + 1` - sleep 1 - ocf_log debug "OpenStack NovaNetwork (nova-network) still hasn't stopped yet. Waiting ..." - done - - nova_network_status - rc=$? - if [ $rc -ne $OCF_NOT_RUNNING ]; then - # SIGTERM didn't help either, try SIGKILL - ocf_log info "OpenStack NovaNetwork (nova-network) failed to stop after ${shutdown_timeout}s \ - using SIGTERM. Trying SIGKILL ..." - ocf_run kill -s KILL $pid - fi - - ocf_log info "OpenStack NovaNetwork (nova-network) stopped" - - rm -f $OCF_RESKEY_pid - - return $OCF_SUCCESS -} - -####################################################################### - -case "$1" in - meta-data) meta_data - exit $OCF_SUCCESS;; - usage|help) usage - exit $OCF_SUCCESS;; -esac - -# Anything except meta-data and help must pass validation -nova_network_validate || exit $? - -# What kind of method was invoked? -case "$1" in - start) nova_network_start;; - stop) nova_network_stop;; - status) nova_network_status;; - monitor) nova_network_monitor;; - validate-all) ;; - *) usage - exit $OCF_ERR_UNIMPLEMENTED;; -esac diff --git a/ocf/nova-objectstore b/ocf/nova-objectstore deleted file mode 100644 index 3e2b674..0000000 --- a/ocf/nova-objectstore +++ /dev/null @@ -1,305 +0,0 @@ -#!/bin/sh -# -# -# OpenStack NovaObjectstore (nova-objectstore) -# -# Description: Manages an OpenStack NovaObjectstore (nova-objectstore) process as an HA resource -# -# Authors: Alessandro Tagliapietra -# Mainly inspired by the Glance API resource agent written by Martin Gerhard Loschwitz from Hastexo: http://goo.gl/whLp -# and the other resource agents by Sebastien Han http://sebastien-han.fr -# -# Website: http://www.alexnetwork.it/ -# -# Support: openstack@lists.launchpad.net -# License: Apache Software License (ASL) 2.0 -# -# -# See usage() function below for more details ... -# -# OCF instance parameters: -# OCF_RESKEY_binary -# OCF_RESKEY_config -# OCF_RESKEY_user -# OCF_RESKEY_pid -# OCF_RESKEY_additional_parameters -####################################################################### -# Initialization: - -: ${OCF_FUNCTIONS_DIR=${OCF_ROOT}/lib/heartbeat} -. ${OCF_FUNCTIONS_DIR}/ocf-shellfuncs - -####################################################################### - -# Fill in some defaults if no values are specified - -OCF_RESKEY_binary_default="nova-objectstore" -OCF_RESKEY_config_default="/etc/nova/nova.conf" -OCF_RESKEY_user_default="nova" -OCF_RESKEY_pid_default="$HA_RSCTMP/$OCF_RESOURCE_INSTANCE.pid" - -: ${OCF_RESKEY_binary=${OCF_RESKEY_binary_default}} -: ${OCF_RESKEY_config=${OCF_RESKEY_config_default}} -: ${OCF_RESKEY_user=${OCF_RESKEY_user_default}} -: ${OCF_RESKEY_pid=${OCF_RESKEY_pid_default}} - -####################################################################### - -usage() { - cat < - - -1.0 - - -Resource agent for the OpenStack NovaObjectstore (nova-objectstore) -May manage a nova-objectstore instance or a clone set that -creates a distributed nova-objectstore cluster. - -Manages the OpenStack NovaObjectstore (nova-objectstore) - - - - -Location of the OpenStack NovaObjectstore server binary (nova-objectstore) - -OpenStack NovaObjectstore server binary (nova-objectstore) - - - - - -Location of the OpenStack NovaObjectstore (nova-objectstore) configuration file - -OpenStack NovaObjectstore (nova-objectstore) config file - - - - - -User running OpenStack NovaObjectstore (nova-objectstore) - -OpenStack NovaObjectstore (nova-objectstore) user - - - - - -The pid file to use for this OpenStack NovaObjectstore (nova-objectstore) instance - -OpenStack NovaObjectstore (nova-objectstore) pid file - - - - - -Additional parameters to pass on to the OpenStack NovaObjectstore (nova-objectstore) - -Additional parameters for nova-objectstore - - - - - - - - - - - - - - -END -} - -####################################################################### -# Functions invoked by resource manager actions - -nova_objectstore_validate() { - local rc - - check_binary $OCF_RESKEY_binary - - # A config file on shared storage that is not available - # during probes is OK. - if [ ! -f $OCF_RESKEY_config ]; then - if ! ocf_is_probe; then - ocf_log err "Config $OCF_RESKEY_config doesn't exist" - return $OCF_ERR_INSTALLED - fi - ocf_log_warn "Config $OCF_RESKEY_config not available during a probe" - fi - - getent passwd $OCF_RESKEY_user >/dev/null 2>&1 - rc=$? - if [ $rc -ne 0 ]; then - ocf_log err "User $OCF_RESKEY_user doesn't exist" - return $OCF_ERR_INSTALLED - fi - - true -} - -nova_objectstore_status() { - local pid - local rc - - if [ ! -f $OCF_RESKEY_pid ]; then - ocf_log info "OpenStack NovaObjectstore (nova-objectstore) is not running" - return $OCF_NOT_RUNNING - else - pid=`cat $OCF_RESKEY_pid` - fi - - ocf_run -warn kill -s 0 $pid - rc=$? - if [ $rc -eq 0 ]; then - return $OCF_SUCCESS - else - ocf_log info "Old PID file found, but OpenStack NovaObjectstore (nova-objectstore) is not running" - return $OCF_NOT_RUNNING - fi -} - -nova_objectstore_monitor() { - local rc - local token - - nova_objectstore_status - rc=$? - - # If status returned anything but success, return that immediately - if [ $rc -ne $OCF_SUCCESS ]; then - return $rc - fi - - ocf_log debug "OpenStack NovaObjectstore (nova-objectstore) monitor succeeded" - return $OCF_SUCCESS -} - -nova_objectstore_start() { - local rc - - nova_objectstore_status - rc=$? - if [ $rc -eq $OCF_SUCCESS ]; then - ocf_log info "OpenStack NovaObjectstore (nova-objectstore) already running" - return $OCF_SUCCESS - fi - - # run the actual nova-objectstore daemon. Don't use ocf_run as we're sending the tool's output - # straight to /dev/null anyway and using ocf_run would break stdout-redirection here. - su ${OCF_RESKEY_user} -s /bin/sh -c "${OCF_RESKEY_binary} --flagfile=$OCF_RESKEY_config \ - $OCF_RESKEY_additional_parameters"' >> /dev/null 2>&1 & echo $!' > $OCF_RESKEY_pid - - # Spin waiting for the server to come up. - # Let the CRM/LRM time us out if required - sleep 1 - while true; do - nova_objectstore_monitor - rc=$? - [ $rc -eq $OCF_SUCCESS ] && break - if [ $rc -ne $OCF_NOT_RUNNING ]; then - ocf_log err "OpenStack NovaObjectstore (nova-objectstore) start failed" - exit $OCF_ERR_GENERIC - fi - sleep 1 - done - - ocf_log info "OpenStack NovaObjectstore (nova-objectstore) started" - return $OCF_SUCCESS -} - -nova_objectstore_stop() { - local rc - local pid - - nova_objectstore_status - rc=$? - if [ $rc -eq $OCF_NOT_RUNNING ]; then - ocf_log info "OpenStack NovaObjectstore (nova-objectstore) already stopped" - return $OCF_SUCCESS - fi - - # Try SIGTERM - pid=`cat $OCF_RESKEY_pid` - ocf_run kill -s TERM $pid - rc=$? - if [ $rc -ne 0 ]; then - ocf_log err "OpenStack NovaObjectstore (nova-objectstore) couldn't be stopped" - exit $OCF_ERR_GENERIC - fi - - # stop waiting - shutdown_timeout=15 - if [ -n "$OCF_RESKEY_CRM_meta_timeout" ]; then - shutdown_timeout=$((($OCF_RESKEY_CRM_meta_timeout/1000)-5)) - fi - count=0 - while [ $count -lt $shutdown_timeout ]; do - nova_objectstore_status - rc=$? - if [ $rc -eq $OCF_NOT_RUNNING ]; then - break - fi - count=`expr $count + 1` - sleep 1 - ocf_log debug "OpenStack NovaObjectstore (nova-objectstore) still hasn't stopped yet. Waiting ..." - done - - nova_objectstore_status - rc=$? - if [ $rc -ne $OCF_NOT_RUNNING ]; then - # SIGTERM didn't help either, try SIGKILL - ocf_log info "OpenStack NovaObjectstore (nova-objectstore) failed to stop after ${shutdown_timeout}s \ - using SIGTERM. Trying SIGKILL ..." - ocf_run kill -s KILL $pid - fi - - ocf_log info "OpenStack NovaObjectstore (nova-objectstore) stopped" - - rm -f $OCF_RESKEY_pid - - return $OCF_SUCCESS -} - -####################################################################### - -case "$1" in - meta-data) meta_data - exit $OCF_SUCCESS;; - usage|help) usage - exit $OCF_SUCCESS;; -esac - -# Anything except meta-data and help must pass validation -nova_objectstore_validate || exit $? - -# What kind of method was invoked? -case "$1" in - start) nova_objectstore_start;; - stop) nova_objectstore_stop;; - status) nova_objectstore_status;; - monitor) nova_objectstore_monitor;; - validate-all) ;; - *) usage - exit $OCF_ERR_UNIMPLEMENTED;; -esac \ No newline at end of file diff --git a/ocf/nova-volume b/ocf/nova-volume deleted file mode 100644 index 97fa824..0000000 --- a/ocf/nova-volume +++ /dev/null @@ -1,305 +0,0 @@ -#!/bin/sh -# -# -# OpenStack NovaVolume (nova-volume) -# -# Description: Manages an OpenStack NovaVolume (nova-volume) process as an HA resource -# -# Authors: Alessandro Tagliapietra -# Mainly inspired by the Glance API resource agent written by Martin Gerhard Loschwitz from Hastexo: http://goo.gl/whLp -# and the other resource agents by Sebastien Han http://sebastien-han.fr -# -# Website: http://www.alexnetwork.it/ -# -# Support: openstack@lists.launchpad.net -# License: Apache Software License (ASL) 2.0 -# -# -# See usage() function below for more details ... -# -# OCF instance parameters: -# OCF_RESKEY_binary -# OCF_RESKEY_config -# OCF_RESKEY_user -# OCF_RESKEY_pid -# OCF_RESKEY_additional_parameters -####################################################################### -# Initialization: - -: ${OCF_FUNCTIONS_DIR=${OCF_ROOT}/lib/heartbeat} -. ${OCF_FUNCTIONS_DIR}/ocf-shellfuncs - -####################################################################### - -# Fill in some defaults if no values are specified - -OCF_RESKEY_binary_default="nova-volume" -OCF_RESKEY_config_default="/etc/nova/nova.conf" -OCF_RESKEY_user_default="nova" -OCF_RESKEY_pid_default="$HA_RSCTMP/$OCF_RESOURCE_INSTANCE.pid" - -: ${OCF_RESKEY_binary=${OCF_RESKEY_binary_default}} -: ${OCF_RESKEY_config=${OCF_RESKEY_config_default}} -: ${OCF_RESKEY_user=${OCF_RESKEY_user_default}} -: ${OCF_RESKEY_pid=${OCF_RESKEY_pid_default}} - -####################################################################### - -usage() { - cat < - - -1.0 - - -Resource agent for the OpenStack NovaVolume (nova-volume) -May manage a nova-volume instance or a clone set that -creates a distributed nova-volume cluster. - -Manages the OpenStack NovaVolume (nova-volume) - - - - -Location of the OpenStack NovaVolume server binary (nova-volume) - -OpenStack NovaVolume server binary (nova-volume) - - - - - -Location of the OpenStack NovaVolume (nova-volume) configuration file - -OpenStack NovaVolume (nova-volume) config file - - - - - -User running OpenStack NovaVolume (nova-volume) - -OpenStack NovaVolume (nova-volume) user - - - - - -The pid file to use for this OpenStack NovaVolume (nova-volume) instance - -OpenStack NovaVolume (nova-volume) pid file - - - - - -Additional parameters to pass on to the OpenStack NovaVolume (nova-volume) - -Additional parameters for nova-volume - - - - - - - - - - - - - - -END -} - -####################################################################### -# Functions invoked by resource manager actions - -nova_volume_validate() { - local rc - - check_binary $OCF_RESKEY_binary - - # A config file on shared storage that is not available - # during probes is OK. - if [ ! -f $OCF_RESKEY_config ]; then - if ! ocf_is_probe; then - ocf_log err "Config $OCF_RESKEY_config doesn't exist" - return $OCF_ERR_INSTALLED - fi - ocf_log_warn "Config $OCF_RESKEY_config not available during a probe" - fi - - getent passwd $OCF_RESKEY_user >/dev/null 2>&1 - rc=$? - if [ $rc -ne 0 ]; then - ocf_log err "User $OCF_RESKEY_user doesn't exist" - return $OCF_ERR_INSTALLED - fi - - true -} - -nova_volume_status() { - local pid - local rc - - if [ ! -f $OCF_RESKEY_pid ]; then - ocf_log info "OpenStack NovaVolume (nova-volume) is not running" - return $OCF_NOT_RUNNING - else - pid=`cat $OCF_RESKEY_pid` - fi - - ocf_run -warn kill -s 0 $pid - rc=$? - if [ $rc -eq 0 ]; then - return $OCF_SUCCESS - else - ocf_log info "Old PID file found, but OpenStack NovaVolume (nova-volume) is not running" - return $OCF_NOT_RUNNING - fi -} - -nova_volume_monitor() { - local rc - local token - - nova_volume_status - rc=$? - - # If status returned anything but success, return that immediately - if [ $rc -ne $OCF_SUCCESS ]; then - return $rc - fi - - ocf_log debug "OpenStack NovaVolume (nova-volume) monitor succeeded" - return $OCF_SUCCESS -} - -nova_volume_start() { - local rc - - nova_volume_status - rc=$? - if [ $rc -eq $OCF_SUCCESS ]; then - ocf_log info "OpenStack NovaVolume (nova-volume) already running" - return $OCF_SUCCESS - fi - - # run the actual nova-volume daemon. Don't use ocf_run as we're sending the tool's output - # straight to /dev/null anyway and using ocf_run would break stdout-redirection here. - su ${OCF_RESKEY_user} -s /bin/sh -c "${OCF_RESKEY_binary} --flagfile=$OCF_RESKEY_config \ - $OCF_RESKEY_additional_parameters"' >> /dev/null 2>&1 & echo $!' > $OCF_RESKEY_pid - - # Spin waiting for the server to come up. - # Let the CRM/LRM time us out if required - sleep 1 - while true; do - nova_volume_monitor - rc=$? - [ $rc -eq $OCF_SUCCESS ] && break - if [ $rc -ne $OCF_NOT_RUNNING ]; then - ocf_log err "OpenStack NovaVolume (nova-volume) start failed" - exit $OCF_ERR_GENERIC - fi - sleep 1 - done - - ocf_log info "OpenStack NovaVolume (nova-volume) started" - return $OCF_SUCCESS -} - -nova_volume_stop() { - local rc - local pid - - nova_volume_status - rc=$? - if [ $rc -eq $OCF_NOT_RUNNING ]; then - ocf_log info "OpenStack NovaVolume (nova-volume) already stopped" - return $OCF_SUCCESS - fi - - # Try SIGTERM - pid=`cat $OCF_RESKEY_pid` - ocf_run kill -s TERM $pid - rc=$? - if [ $rc -ne 0 ]; then - ocf_log err "OpenStack NovaVolume (nova-volume) couldn't be stopped" - exit $OCF_ERR_GENERIC - fi - - # stop waiting - shutdown_timeout=15 - if [ -n "$OCF_RESKEY_CRM_meta_timeout" ]; then - shutdown_timeout=$((($OCF_RESKEY_CRM_meta_timeout/1000)-5)) - fi - count=0 - while [ $count -lt $shutdown_timeout ]; do - nova_volume_status - rc=$? - if [ $rc -eq $OCF_NOT_RUNNING ]; then - break - fi - count=`expr $count + 1` - sleep 1 - ocf_log debug "OpenStack NovaVolume (nova-volume) still hasn't stopped yet. Waiting ..." - done - - nova_volume_status - rc=$? - if [ $rc -ne $OCF_NOT_RUNNING ]; then - # SIGTERM didn't help either, try SIGKILL - ocf_log info "OpenStack NovaVolume (nova-volume) failed to stop after ${shutdown_timeout}s \ - using SIGTERM. Trying SIGKILL ..." - ocf_run kill -s KILL $pid - fi - - ocf_log info "OpenStack NovaVolume (nova-volume) stopped" - - rm -f $OCF_RESKEY_pid - - return $OCF_SUCCESS -} - -####################################################################### - -case "$1" in - meta-data) meta_data - exit $OCF_SUCCESS;; - usage|help) usage - exit $OCF_SUCCESS;; -esac - -# Anything except meta-data and help must pass validation -nova_volume_validate || exit $? - -# What kind of method was invoked? -case "$1" in - start) nova_volume_start;; - stop) nova_volume_stop;; - status) nova_volume_status;; - monitor) nova_volume_monitor;; - validate-all) ;; - *) usage - exit $OCF_ERR_UNIMPLEMENTED;; -esac \ No newline at end of file