README.md 3.1 KB

ECSCreater

创建

  • 地址:http://127.0.0.1:5000/createecs
  • HTTP Method: POST
  • Parameter:
    • set_Region:cn-beijing // 大区
    • set_InternetChargeType: // 网络计费方式 PayByTraffic // 流量按量计费 PayByBandwidth // 按固定带宽计费
    • set_InstanceChargeType // ECS计费方式 PrePaid // 包年包月,预设为1个月,自动续费 PostPaid // 按量计费
    • set_Password // 设置服务器密码
    • set_Amount // 一次创建的数量
  • response:返回创建的实例ID

获取实例信息,调用创建接口10s后调用

  • 地址:http://127.0.0.1:5000/describeinstances
  • HTTP Method: POST
  • Parameter:
    • set_Region:cn-beijing // 大区
    • InstanceIds: ["i-2ze7me6g517mxsdknmx2","i-2ze7me6g517mxsdknlki"] // 实例ID,单次获取上限为100,超过需要翻页,暂时未做,该接口较快,可以多次调用
  • response: 返回 实例ID,付费类型、公网地址、内网地址

释放实例

  • 地址:http://127.0.0.1:5000/releaseinstances
  • HTTP Method: POST
  • Parameter:
    • set_Region:cn-beijing // 大区
    • InstanceIds: ["i-2ze7me6g517mxsdknmx2","i-2ze7me6g517mxsdknlki"] // 需要释放的实例id数组
  • response: 阿里云request id,没有错误即为成功;因阿里云不支持包年包月的ECS直接释放,如有包年包月类型的释放请求,会先调用计费模式转换,返回会稍慢

EIPChanger

根据内网ip获取实例id

根据内网IP更换EIP

  • 地址: http://127.0.0.1:5000/reseteip
  • HTTP Method: POST
  • Parameter:
    • privateip // ECS内网ip
    • region // 大区
  • response:返回新EIP,老EIP和完成状态

ECSMonitorApi

阿里云主机自动聚合监控

阿里云监控不提供自动的监控项聚合,ECS增删的情况下,需要不断维护各个监控项dashborad 通过调研阿里云云监控api,发现其提供了获取账号下所有ECS各个监控子项的聚合数据;如果通过接口获取数据,那么就不需要维护监控主机列表了,相对就是做到了主机的自动发现 该需求主要用于监控数据查找和展示,监控告警则仍然由阿里云监控模板统一匹配和实现 实现:

  • 安装一套influxdb用于数据落地
  • 通过阿里云api获取所有阿里云账户下的所有ECS监控数据
  • 通过返回的instanceid获取ECS的ip信息,将时间、ip信息和返回的最新监控数值写入influxdb
  • 因为阿里云接口返回的数据很多有相同的时间戳,influxdb时间作为主键,插入进去数据会被覆盖,需要为时间戳加上随机毫秒单位
  • 安装一套grafana,数据源为influxdb,设置两个variable,分别是所有公网ip和所有内网ip
  • 阿里云DescribeMetricLast接口里MetricName即监控项可选参数 云产品指标说明