#!/bin/bashexport OS_ENV="@globals.environment@"
if [ "${OS_ENV}" == "dev" ]; then
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
fi
source /etc/kolla/admin-openrc.sh
EXIT_CODE=0# search for broken ovs entry in DBfor NODE in $(openstack compute service list -c Host -f value | sort -u); do
OUTPUT=$(ssh ${NODE} docker exec openvswitch_vswitchd ovsdb-client dump | grep qvo | egrep -v "tag|mac" | cut -d "\"" -f2)
for PORT in ${OUTPUT}; do
printf "%-20s %s\n" "${NODE}" "${PORT}"
EXIT_CODE=1donedone# Search for "No such device" OpenvSwitch portsfor NODE in $(openstack compute service list -c Host -f value | sort -u); do
OUTPUT="$(ssh ${NODE} docker exec -i openvswitch_vswitchd ovs-vsctl show | grep "No such device")"
if [ -n "${OUTPUT}" ]; then
echo "${NODE}"
echo "${OUTPUT}"
EXIT_CODE=1fidone# search for unnecessary Open vSwitch interfaces on physical hostsfor NODE in $(openstack compute service list -c Host -f value | sort -u); do
for PORT_TOKEN in $(ssh ${NODE} brctl show | egrep "qvb|tap" | sed '$!N;/\n.*tap/d;P;D' | awk '{print substr($1,4,8)}'); do
PORT_ID=$(openstack port list -c id -f value | grep ${PORT_TOKEN})
if [ -n "${PORT_ID}" ]; then
SERVER_ID=$(openstack port show -c device_id -f value ${PORT_ID})
SERVER_STATUS=$(openstack server show -c status -f value ${SERVER_ID})
if [ "${SERVER_STATUS}" != "SHUTOFF" ] && [ "${SERVER_STATUS}" != "VERIFY_RESIZE" ]; then
echo "NODE: ${NODE}"
echo "PORT_TOKEN: ${PORT_TOKEN}"
openstack server show -c name -c id -c project_id -c status ${SERVER_ID}
EXIT_CODE=1fielse
#!/bin/bash
source /etc/kolla/admin-openrc.sh
EXIT_CODE=0# search for server with status ERROR
OUTPUT="$(openstack server list --all--status=ERROR -c ID -c Name -c Status -f value)"
#openstack server show ${SERVER_ID} -c fault -f valueif [ -n "${OUTPUT}" ]; then
echo "${OUTPUT}"
EXIT_CODE=1fi# search for server with status VERIFY_RESIZE
OUTPUT="$(openstack server list --all--status=VERIFY_RESIZE -c ID -c Name -c Status -f value)"
if [ -n "${OUTPUT}" ]; then
echo "${OUTPUT}"
EXIT_CODE=1fi# search for server processes on wrong compute nodefor COMPUTE_NODE in $(openstack compute service list --service nova-compute -c Host -f value); do
for SERVER_ID in $(ssh ${COMPUTE_NODE} pgrep qemu -a | grep -o -P '(?<=-uuid ).*(?= -smbios)'); do
VM_HOST=$(openstack server show -c "OS-EXT-SRV-ATTR:host" -f value ${SERVER_ID})
if [ -n "${VM_HOST}" ]; then
if [ "${VM_HOST}" != "${COMPUTE_NODE}" ]; then
echo "VM ${SERVER_ID} on wrong compute node ${COMPUTE_NODE}"
openstack server show ${SERVER_ID} -c OS-EXT-SRV-ATTR:hostname -c name -c id -c status -c OS-EXT-SRV-ATTR:instance_name
EXIT_CODE=1fielseecho "Server process ${SERVER_ID} on ${COMPUTE_NODE} not available in OpenStack"
EXIT_CODE=1fidonedone# send notificationecho
exit ${EXIT_CODE}
Cookie-Einstellungen
Diese Website nutzt eingebettete Inhalte von Drittanbietern (z.B. YouTube, SoundCloud). Beim Laden dieser Inhalte werden Daten an die jeweiligen Anbieter übermittelt.
Datenverarbeitungserklärung