Hi, I read about the utilization feature in beekhofs blog. Really nice. But why do not take the next step and make the utilization in resources dynamic since RAM or CPU usage will change with time.
For a demonstration I used a cluster node with utilization of 100 ticks (normal one core machine): node node1 \ utilization ticks="100" Next I configured a slightly modified Dummy resource starting with 10 ticks utilization: primitive resDummy1 ocf:misch:Dummy \ op monitor interval="10s" \ utilization ticks="10" To test the whole feature I used placement-strategy="minimal", of course. In the monitor part of my Dummy-RA I added: old=$(crm resource utilization $OCF_RESOURCE_INSTANCE show ticks) actual=$(cat /tmp/new.data) new=$(( (4*$old + $actual)/5 )) ocf_log info "old = "$old" actual = "$actual" new = "$new crm resource utilization $OCF_RESOURCE_INSTANCE set ticks $new Please note that there is a kind of hysteresis feature included in the lines above. Changes in the utilization will not instantaneous appear in the resource but gradually. Measuring the actual utilization of time ticks I use the file /tmp/new.data where I can enter numbers for testing. I real life I would do something like PID=$( get the pid to the process in question) new=$(top -n1 -p $PID -b | awk '/$PID/ {print $9}') Testing my dynamic utilization feature you can write "200" into the /tmp/new.data file. The utilization value of the resource will gradually increase with every monitoring and when the value reaches the limit of "100" the resource will stop working on the node. writing back "10" into the file you can watch the utilization fall again and finally being started on the node again. Imagine the consequences for a cloud cluster consisting of 30 nodes hosting 100 virtual machines. All machines would be migrated to the least possible number of real machines during the night when there no work to do. In the next morning when work starts virtual machines would be migrated to free machines when the work load gradually increases. The only thing to do that remains would be a daemon that switches off unused machines to save energy. But this could be done using STONITH agents. Basically this would be an option to make cloud computing really green! Please mail me your comments about this idea. Thanks. Cheers, -- Dr. Michael Schwartzkopff Guardinistr. 63 81375 München Tel: (0163) 172 50 98
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Pacemaker mailing list: Pacemaker@oss.clusterlabs.org http://oss.clusterlabs.org/mailman/listinfo/pacemaker Project Home: http://www.clusterlabs.org Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf Bugs: http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker