On 14-07-29 10:34 AM, Joel S. | VOZELIA wrote:
Would you mind sharing that HA control script 
/usr/local/bin/bascule_rhcluster.pl?
Yes, please.

This is the very simplistic script I wrote for my own use:

===begin /root/evacuate.sh===
#!/bin/bash
# no sense in re-invoking this, it isn't likely to change while we're running
H=$(hostname)
# magically declare arrays with () syntax
OTHERNODES=($(pvesh ls /nodes | awk '$NF !~/'$H'/ {print $NF}'))
VMS=($(pvesh ls /nodes/$H/qemu | awk '{print $NF}'))
# Naïve round-robin distribution, not weighted.
i=0
for V in ${VMS[@]}; do
  i=$(($i + 1))
pvesh create /nodes/$H/qemu/$V/migrate -target ${OTHERNODES[$(( $i % ${#OTHERNODES[@]} ))]} -force -online
  printf '\n'
done
===end===

Not wonderful by any stretch, but it makes my life easier when it's time to apply updates or do system maintenance. If only I could run multiple migrations in parallel... All the complicated-looking substitution in third-last-line is doing is iterating through $OTHERNODES[] in an evenly-distributed manner. Since I have 4 identical nodes in the cluster, with more than enough spare capacity, that approach works for me.

--
-Adam Thompson
 [email protected]

_______________________________________________
pve-user mailing list
[email protected]
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-user

Reply via email to