本文整理匯總了Python中cloud.aws.CloudHost.get_ami_recentness方法的典型用法代碼示例。如果您正苦於以下問題:Python CloudHost.get_ami_recentness方法的具體用法?Python CloudHost.get_ami_recentness怎麽用?Python CloudHost.get_ami_recentness使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類cloud.aws.CloudHost
的用法示例。
在下文中一共展示了CloudHost.get_ami_recentness方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: is_cluster_leader
# 需要導入模塊: from cloud.aws import CloudHost [as 別名]
# 或者: from cloud.aws.CloudHost import get_ami_recentness [as 別名]
def is_cluster_leader():
if not CloudHost.ENABLED['cloudwatch']:
return False
cluster = CloudHost.INSTALL_ID
instances = CloudHost.get_autoscaled_instances()
leader = JBoxDynConfig.get_cluster_leader(cluster)
ami_recentness = CloudHost.get_ami_recentness()
JBoxDB.log_debug("cluster: %s. instances: %s. leader: %s. ami_recentness: %d",
cluster, repr(instances), repr(leader), ami_recentness)
# if none set, or set instance is dead elect self as leader, but wait till next cycle to prevent conflicts
if (leader is None) or (leader not in instances) and (ami_recentness >= 0):
JBoxDB.log_info("setting self (%s) as cluster leader", CloudHost.instance_id())
JBoxDynConfig.set_cluster_leader(cluster, CloudHost.instance_id())
return False
is_leader = (leader == CloudHost.instance_id())
# if running an older ami, step down from cluster leader
if (ami_recentness < 0) and is_leader:
JBoxDB.log_info("unmarking self (%s) as cluster leader", CloudHost.instance_id())
JBoxDynConfig.unset_cluster_leader(cluster)
return False
return is_leader