|
@@ -49,6 +49,7 @@ def set_instance_weight_process(client, instance_id_list, weight_list):
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
for weight, sleep_time in weight_list:
|
|
for weight, sleep_time in weight_list:
|
|
|
|
+ logging.info(f"修改权重中: weight = {weight}")
|
|
flag = True
|
|
flag = True
|
|
while flag:
|
|
while flag:
|
|
try:
|
|
try:
|
|
@@ -206,7 +207,7 @@ async def update_instance(create_client, slb_client, instance_ids, max_workers,
|
|
media_index = len(instance_ids)//2
|
|
media_index = len(instance_ids)//2
|
|
instance_ids_group = [instance_ids[:media_index], instance_ids[media_index:]]
|
|
instance_ids_group = [instance_ids[:media_index], instance_ids[media_index:]]
|
|
update_finished_count = 0
|
|
update_finished_count = 0
|
|
- for instance_id_list in instance_ids_group:
|
|
|
|
|
|
+ for instance_id_list in instance_ids_group[:1]:
|
|
# 1. 摘流量
|
|
# 1. 摘流量
|
|
set_instance_weight_process(client=slb_client, instance_id_list=instance_id_list, weight_list=[(0, 60)])
|
|
set_instance_weight_process(client=slb_client, instance_id_list=instance_id_list, weight_list=[(0, 60)])
|
|
logging.info(f"set weight with 0 finished, instances: {instance_id_list}")
|
|
logging.info(f"set weight with 0 finished, instances: {instance_id_list}")
|
|
@@ -252,8 +253,8 @@ async def update_instance(create_client, slb_client, instance_ids, max_workers,
|
|
utils.add_backend_servers(client=slb_client, slb_id=rov_server_config.slb_id, instances=health_instances)
|
|
utils.add_backend_servers(client=slb_client, slb_id=rov_server_config.slb_id, instances=health_instances)
|
|
health_instance_ids = [instance_id for instance_id, _ in health_instances]
|
|
health_instance_ids = [instance_id for instance_id, _ in health_instances]
|
|
add_weight_list = [(10, 30), (20, 20), (40, 10), (60, 10), (80, 10), (100, 10)]
|
|
add_weight_list = [(10, 30), (20, 20), (40, 10), (60, 10), (80, 10), (100, 10)]
|
|
- set_instance_weight_process(client=slb_client, instance_id_list=health_instance_ids,
|
|
|
|
- weight_list=add_weight_list)
|
|
|
|
|
|
+ # set_instance_weight_process(client=slb_client, instance_id_list=health_instance_ids,
|
|
|
|
+ # weight_list=add_weight_list)
|
|
logging.info(f"finished instances: {health_instances}, count: {len(health_instances)}")
|
|
logging.info(f"finished instances: {health_instances}, count: {len(health_instances)}")
|
|
update_finished_count += len(health_instances)
|
|
update_finished_count += len(health_instances)
|
|
logging.info(f"update finished: {update_finished_count}/{len(instance_ids)}")
|
|
logging.info(f"update finished: {update_finished_count}/{len(instance_ids)}")
|
|
@@ -327,11 +328,11 @@ def main():
|
|
ess_count=ess_instance_count, max_workers=2, version=version))
|
|
ess_count=ess_instance_count, max_workers=2, version=version))
|
|
logging.info(f"ess instances end!")
|
|
logging.info(f"ess instances end!")
|
|
|
|
|
|
- # # 3. 原有机器进行更新
|
|
|
|
- # logging.info(f"update online instances start ...")
|
|
|
|
- # asyncio.run(update_instance(create_client=create_client, slb_client=slb_client,
|
|
|
|
- # instance_ids=online_instance_ids, max_workers=2, version=version))
|
|
|
|
- # logging.info(f"update online instances end!")
|
|
|
|
|
|
+ # 3. 原有机器进行更新
|
|
|
|
+ logging.info(f"update online instances start ...")
|
|
|
|
+ asyncio.run(update_instance(create_client=create_client, slb_client=slb_client,
|
|
|
|
+ instance_ids=online_instance_ids, max_workers=2, version=version))
|
|
|
|
+ logging.info(f"update online instances end!")
|
|
#
|
|
#
|
|
# # 4. 停止并释放扩容机器
|
|
# # 4. 停止并释放扩容机器
|
|
# logging.info(f"stop & release instances start ...")
|
|
# logging.info(f"stop & release instances start ...")
|