|
@@ -128,10 +128,10 @@ def send_req(client, request):
|
|
|
#logging.error(e)
|
|
|
#sys.exit()
|
|
|
|
|
|
-def check_instance_running(client, instance_ids):
|
|
|
+def check_instance_running(ecs_client, instance_ids):
|
|
|
"""
|
|
|
检查服务器运行状态
|
|
|
- :param client: 客户端连接
|
|
|
+ :param ecs_client: 客户端连接
|
|
|
:param instance_ids: 实例id列表, type-list
|
|
|
:return: running_count,Status为Running的实例数
|
|
|
"""
|
|
@@ -139,7 +139,7 @@ def check_instance_running(client, instance_ids):
|
|
|
request = DescribeInstancesRequest()
|
|
|
request.set_InstanceIds(json.dumps(instance_ids))
|
|
|
request.set_PageSize(100)
|
|
|
- response = send_request(client=client, request=request)
|
|
|
+ response = send_request(ecs_client=ecs_client, request=request)
|
|
|
if response.get('Code') is None:
|
|
|
instances_list = response.get('Instances').get('Instance')
|
|
|
running_count = 0
|
|
@@ -159,13 +159,13 @@ def check_instance_running(client, instance_ids):
|
|
|
sys.exit()
|
|
|
|
|
|
|
|
|
-def create_multiple_instances(amount, client,
|
|
|
+def create_multiple_instances(amount, ecs_client,
|
|
|
image_id, vswitch_id, security_group_id, zone_id, instance_type, instance_name,
|
|
|
disk_size, disk_category, key_pair_name, tags):
|
|
|
"""
|
|
|
创建多个ECS实例
|
|
|
:param amount: 创建实例数 type-int 取值范围:[1, 100]
|
|
|
- :param client: 购买机器客户端连接
|
|
|
+ :param ecs_client: 购买机器客户端连接
|
|
|
:param image_id: 使用的镜像信息 type-string
|
|
|
:param vswitch_id: 选择的交换机 type-string
|
|
|
:param security_group_id: 当前vpc类型的安全组 type-string
|
|
@@ -191,7 +191,7 @@ def create_multiple_instances(amount, client,
|
|
|
)
|
|
|
request.set_Amount(amount)
|
|
|
# 3. 发送API请求,购买机器并启动
|
|
|
- response = send_request(client=client, request=request)
|
|
|
+ response = send_request(ecs_client=ecs_client, request=request)
|
|
|
if response.get('Code') is None:
|
|
|
instance_ids = response.get('InstanceIdSets').get('InstanceIdSet')
|
|
|
logging.info(f"success amount: {len(instance_ids)}, instance ids: {instance_ids}.")
|
|
@@ -199,7 +199,7 @@ def create_multiple_instances(amount, client,
|
|
|
running_amount = 0
|
|
|
while running_amount < amount:
|
|
|
time.sleep(10)
|
|
|
- running_amount, running_instances = check_instance_running(client=client, instance_ids=instance_ids)
|
|
|
+ running_amount, running_instances = check_instance_running(ecs_client=ecs_client, instance_ids=instance_ids)
|
|
|
logging.info(f"running amount: {running_amount}, running instances: {running_instances}.")
|
|
|
return instance_ids
|
|
|
else:
|