Alexandr Nevenchannyy f84ec2ce07 Add reliability test results
This commit add part of reliability testing results.
Scope of this commit is testing Nova API under
several factors.

Change-Id: Id3cb644ccf4bd315846399e6ac40a446297787f3
2016-07-04 15:43:57 +03:00

117 lines
3.3 KiB
Bash
Executable File

# Copyright 2014: Mirantis Inc.
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#!/bin/bash -xe
# source credentionals
if [ -f /data/rally/rally_plugins/scrappy/scrappy.conf ];
then
. /data/rally/rally_plugins/scrappy/scrappy.conf
else
exit -1
fi
#
# Function exetute command over ssh
# Login & password stored in scrappy.conf
#
function ssh_exec() {
local ssh_node=$1
local ssh_cmd=$2
local ssh_options='-oConnectTimeout=5 -oStrictHostKeyChecking=no -oCheckHostIP=no -oUserKnownHostsFile=/dev/null -oRSAAuthentication=no'
echo "sshpass -p ${SSH_PASS} ssh ${ssh_options} ${SSH_LOGIN}@${ssh_node} ${ssh_cmd}"
local ssh_result=`sshpass -p ${SSH_PASS} ssh ${ssh_options} ${SSH_LOGIN}@${ssh_node} ${ssh_cmd}`
echo "$ssh_result"
}
#
# Function return random controller node from Fuel cluster
#
function get_random_controller() {
local random_controller=${CONTROLLERS[$RANDOM % ${#CONTROLLERS[@]}]}
echo $random_controller
}
#
# Function return random compute node from Fuel cluster
#
function get_random_compute() {
local random_compute=${COMPUTES[$RANDOM % ${#COMPUTES[@]}]}
echo $random_compute
}
#
# Factors
#
function random_controller_kill_rabbitmq() {
local action=$1
local controller_node=$(get_random_controller)
local result=`ssh_exec ${controller_node} "${SCRAPPY_BASE}/scrappy_host.sh send_signal rabbitmq_server -KILL"`
echo "$result"
}
function random_controller_freeze_process_random_interval() {
local process_name=$1
local interval=$2
local controller_node=$(get_random_controller)
local result=`ssh_exec ${controller_node} "${SCRAPPY_BASE}/scrappy_host.sh freeze_process_random_interval ${process_name} ${interval}"`
echo "$result"
}
function random_controller_freeze_process_fixed_interval() {
local process_name=$1
local interval=$2
local controller_node=$(get_random_controller)
local result=`ssh_exec ${controller_node} "${SCRAPPY_BASE}/scrappy_host.sh freeze_process_fixed_interval ${process_name} ${interval}"`
echo "$result"
}
function random_controller_reboot() {
local controller_node=$(get_random_controller)
local result=`ssh_exec ${controller_node} "${SCRAPPY_BASE}/scrappy_host.sh reboot_node"`
echo "$result"
}
function usage() {
echo "usage"
echo "TODO"
}
#
# Main
#
function main() {
local factor=$1
case ${factor} in
random_controller_kill_rabbitmq)
random_controller_kill_rabbitmq $2
;;
random_controller_freeze_process_random_interval)
random_controller_freeze_process_random_interval $2 $3
;;
random_controller_freeze_process_fixed_interval)
random_controller_freeze_process_fixed_interval $2 $3
;;
random_controller_reboot)
random_controller_reboot
;;
*)
usage
;;
esac
}
main "$@"