def run(): print "Starting..." vd = vultr_dict() usage = usage_portion(vd) msg = ( "used %sGB out of %sGB allowed traffic quota (%.2f%%)" % (vd['current_bandwidth_gb'], vd['allowed_bandwidth_gb'], usage * 100)) if usage > retire_threshold: print "Retiring because I", msg closed = util.am_I_closed() util.close_server(msg) util.retire_server(msg, offload=closed) else: print "Usage portion: %s; not retiring." % usage print "Done."
def run(): print "Starting..." vd = vultr_dict() usage = usage_portion(vd) msg = ("used %sGB out of %sGB allowed traffic quota (%.2f%%)" % (vd['current_bandwidth_gb'], vd['allowed_bandwidth_gb'], usage * 100)) if usage > retire_threshold: print "Retiring because I", msg closed = util.am_I_closed() util.close_server(msg) util.retire_server(msg, offload=closed) else: print "Usage portion: %s; not retiring." % usage print "Done."
def run(): print "Starting..." vd = vultr_dict() usage = usage_portion(vd) t = time_portion() msg = ("used %s out of %s allowed traffic quota (%.2f%%)" % (vd['current_bandwidth_gb'], vd['allowed_bandwidth_gb'], usage * 100)) if usage > retire_threshold: print "Retiring because I", msg util.split_server(msg) util.retire_server(msg) elif t > significant_time and usage > significant_usage and usage > t: msg += " in %.2f%% of the current month" % (t * 100) print "Splitting because I", msg util.split_server(msg) else: print "Usage portion: %s; time portion: %s; not splitting." % (usage, t) print "Done."
# retiring it. try: s = file(util.split_flag_filename).read() t0 = datetime.strptime(s, '%Y-%m-%d %H:%M:%S.%f') split_long_ago = (datetime.utcnow() - t0).days > 1 except IOError: split_long_ago = False except ValueError: # Some old manually split servers have flag files that are empty or have # contents that are not valid datetime isoformats. split_long_ago = True retire = (split_long_ago and la15m > retire_threshold and util.redis_shell.llen(util.region + ":srvq") >= min_q_size) if la15m > split_threshold: print "Splitting..." util.split_server("reached load average %s" % la15m) else: print "Not splitting." if retire: print "Retiring..." util.retire_server("reached load average %s" % la15m) else: print "Not retiring." print "... done."
# retiring it. try: s = file(util.close_flag_filename).read() t0 = datetime.strptime(s, '%Y-%m-%d %H:%M:%S.%f') closed_long_ago = (datetime.utcnow() - t0).days > 1 except IOError: closed_long_ago = False except ValueError: # Some old manually closed servers have flag files that are empty or have # contents that are not valid datetime isoformats. closed_long_ago = True retire = (closed_long_ago and lavg > retire_threshold and util.redis_shell.llen(util.region + ":srvq") >= min_q_size) if lavg > close_threshold: print "Closing..." util.close_server("reached load average %s" % lavg) else: print "Not closing." if retire: print "Retiring..." util.retire_server("reached load average %s" % lavg) else: print "Not retiring." print "... done."