博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 调用阿里云服务器api创建服务器
阅读量:2228 次
发布时间:2019-05-09

本文共 3616 字,大约阅读时间需要 12 分钟。

首先安装阿里云SDK

pip install aliyun-python-sdk-core

pip install aliyun-python-sdk-ecs

可以配合jenkins传递参数

#!/usr/bin/python3# -*- coding: utf-8 -*-# @Time    : 2018/1/26 0026 12:01# @Author  : sanmuyan# @FileName: aliyun_ecs_cre.pyimport json,time,osfrom aliyunsdkcore.client import AcsClientfrom aliyunsdkcore.acs_exception.exceptions import ClientExceptionfrom aliyunsdkcore.acs_exception.exceptions import ServerExceptionfrom aliyunsdkecs.request.v20140526 import CreateInstanceRequest,StartInstanceRequest,DescribeInstancesRequestAccessKey = os.environ.get('AccessKey')Secret = os.environ.get('Secret')Regions = os.environ.get('Regions')# 创建 AcsClient 实例client = AcsClient(    AccessKey,    Secret,    Regions);def ecs_start(InstanceId):   request = StartInstanceRequest.StartInstanceRequest()   request.set_InstanceId(InstanceId)   response = client.do_action_with_exception(request)   print(response,'\n',"INFO:Starting results")def ecs_des(InstanceId):   request = DescribeInstancesRequest.DescribeInstancesRequest()   request.set_InstanceIds(InstanceId)   response = client.do_action_with_exception(request)   data = json.loads(response)   data = json.dumps(data, sort_keys=True, indent=2)   print(data)def ecs_cre():    request = CreateInstanceRequest.CreateInstanceRequest()    request.set_ImageId(ImageId)    request.set_InstanceType(InstanceType)    request.set_SecurityGroupId(SecurityGroupId)    request.set_ZoneId(ZoneId)    request.set_InstanceName(InstanceName)    request.set_HostName(HostName)    request.set_Password(Password)    request.set_SystemDiskCategory(SystemDiskCategory)    request.set_DataDisks(({
'DataDisk':'1'},{
'Size':DataDiskSize},{
'Category':'cloud_efficiency'})) request.set_SystemDiskSize(SystemDiskSize) request.set_VSwitchId(VSwitchId) request.set_InstanceChargeType(InstanceChargeType) request.set_Period(Period) if (Period == "PrePaid"): request.set_AutoRenew(AutoRenew) request.set_AutoRenewPeriod(AutoRenewPeriod) response = client.do_action_with_exception(request) response = client.do_action_with_exception(request) data = json.loads(response) print(data,'\n'"INFO:Create success") InstanceId = (data['InstanceId']) time.sleep(10) ecs_start(InstanceId=InstanceId) time.sleep(20) ecs_des(InstanceId=[InstanceId])if __name__ == '__main__': ImageId = os.environ.get('ImageId') # 镜像 InstanceType = os.environ.get('InstanceType') # 实例规格 SecurityGroupId = os.environ.get('SecurityGroupId') # 安全组 ZoneId = os.environ.get('ZoneId') # 可用区 InstanceName = os.environ.get('InstanceName') # 实例名 HostName = os.environ.get('HostName') # 主机名 Password = os.environ.get('Password') # 主机密码 SystemDiskCategory = os.environ.get('SystemDiskCategory') # 系统盘类型 SystemDiskSize = os.environ.get('SystemDiskSize') # 系统盘大小 DataDiskSize = os.environ.get('DataDiskSize') # 数据盘大小 VSwitchId = os.environ.get('VSwitchId') # 交换机 InstanceChargeType = os.environ.get('InstanceChargeType') # 实例付费类型 Period = os.environ.get('Period') # 购买时长 AutoRenew = os.environ.get('AutoRenew') # 是否开启自动续费 AutoRenewPeriod = os.environ.get('AutoRenewPeriod') # 自动续费时长 ecs_cre()

 

转载于:https://www.cnblogs.com/37yan/p/8418751.html

你可能感兴趣的文章
【Loadrunner】性能测试报告实战
查看>>
【自动化测试】自动化测试需要了解的的一些事情。
查看>>
【selenium】selenium ide的安装过程
查看>>
【手机自动化测试】monkey测试
查看>>
【英语】软件开发常用英语词汇
查看>>
Fiddler 抓包工具总结
查看>>
【雅思】雅思需要购买和准备的学习资料
查看>>
【雅思】雅思写作作业(1)
查看>>
【雅思】【大作文】【审题作业】关于同不同意的审题作业(重点)
查看>>
【Loadrunner】通过loadrunner录制时候有事件但是白页无法出来登录页怎么办?
查看>>
【English】【托业】【四六级】写译高频词汇
查看>>
【托业】【新东方全真模拟】01~02-----P5~6
查看>>
【托业】【新东方全真模拟】03~04-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST05~06-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST09~10-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST07~08-----P5~6
查看>>
solver及其配置
查看>>
JAVA多线程之volatile 与 synchronized 的比较
查看>>
Java集合框架知识梳理
查看>>
笔试题(一)—— java基础
查看>>