From d934bd0a584cd8f6ddfcf63575e63965e9ceb366 Mon Sep 17 00:00:00 2001 From: Alexander Todorov Date: Fri, 15 Apr 2011 11:57:06 +0300 Subject: [PATCH] libvirt-guests: implement START_DELAY Allow libvirt-guests to stage a delay between guest startups, to avoid system load caused by back-to-back startup. --- AUTHORS | 1 + tools/libvirt-guests.init.sh | 7 +++++++ tools/libvirt-guests.sysconf | 3 +++ 3 files changed, 11 insertions(+) diff --git a/AUTHORS b/AUTHORS index fded3757ab..b43207b7b7 100644 --- a/AUTHORS +++ b/AUTHORS @@ -165,6 +165,7 @@ Patches have also been contributed by: Thibault VINCENT Naoya Horiguchi Jesse Cook + Alexander Todorov [....send patches to get your name here....] diff --git a/tools/libvirt-guests.init.sh b/tools/libvirt-guests.init.sh index f247e5e449..30f957aa5a 100644 --- a/tools/libvirt-guests.init.sh +++ b/tools/libvirt-guests.init.sh @@ -42,6 +42,7 @@ URIS=default ON_BOOT=start ON_SHUTDOWN=suspend SHUTDOWN_TIMEOUT=0 +START_DELAY=0 test -f "$sysconfdir"/sysconfig/libvirt-guests && . "$sysconfdir"/sysconfig/libvirt-guests @@ -141,6 +142,7 @@ start() { return 0 fi + isfirst=true while read uri list; do configured=false set -f @@ -165,6 +167,11 @@ start() { if "$guest_running"; then gettext "already active"; echo else + if "$isfirst"; then + isfirst=false + else + sleep $START_DELAY + fi retval run_virsh "$uri" start "$name" >/dev/null && \ gettext "done"; echo fi diff --git a/tools/libvirt-guests.sysconf b/tools/libvirt-guests.sysconf index cd58728b43..37b258ef52 100644 --- a/tools/libvirt-guests.sysconf +++ b/tools/libvirt-guests.sysconf @@ -10,6 +10,9 @@ # libvirtd #ON_BOOT=start +# number of seconds to wait between each guest start +#START_DELAY=0 + # action taken on host shutdown # - suspend all running guests are suspended using virsh managedsave # - shutdown all running guests are asked to shutdown. Please be careful with