models

package
v1.62.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 16, 2023 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Activity added in v1.62.0

type Activity struct {

	/* 伸缩活动ID (Optional) */
	ActivityId string `json:"activityId"`

	/* 状态,包括成功:SUCCESS,拒绝:REJECTED,失败:FAILED,执行中:RUNNING,部分成功:WARN (Optional) */
	Status string `json:"status"`

	/* 变化后实例总数 (Optional) */
	TargetTotal int `json:"targetTotal"`

	/* 开始时间 (Optional) */
	StartTime string `json:"startTime"`

	/* 结束时间 (Optional) */
	EndTime string `json:"endTime"`

	/* 描述,展示期望实例数、最大最小数变化至多少,或展示活动应增加移出多少实例 (Optional) */
	Description string `json:"description"`

	/* 活动起因,包括但不限于下述起因:
	- 手动添加实例
	- 手动移出/删除实例
	- 手动修改期望实例数/最大实例数/最小实例数
	- 健康检查失败
	- 手动执行伸缩规则
	- 定时任务触发
	- 报警任务触发
	 (Optional) */
	Cause string `json:"cause"`

	/* 详细信息,
	- 若活动执行成功,展示具体哪些实例(ID)被添加或移出
	- 若活动执行失败,则展示失败原因
	- 若活动执行部分成功,展示哪些实例(ID)被成功添加或移出,并展示其余资源失败原因
	 (Optional) */
	Detail []ActivityDetail `json:"detail"`
}

type ActivityDetail added in v1.62.0

type ActivityDetail struct {

	/* 标题 (Optional) */
	Title string `json:"title"`

	/* 资源详细信息 (Optional) */
	Value string `json:"value"`
}

type AsAlarmInfo added in v1.62.0

type AsAlarmInfo struct {

	/* 高可用组ID (Optional) */
	AgId string `json:"agId"`

	/* 告警任务ID (Optional) */
	AsAlarmId string `json:"asAlarmId"`

	/* 地域 (Optional) */
	Region string `json:"region"`

	/* 告警任务名称 (Optional) */
	Name string `json:"name"`

	/* 告警任务描述 (Optional) */
	Description string `json:"description"`

	/* 监控项类型,取值范围:[`System`,`Custom`] (Optional) */
	MetricType string `json:"metricType"`

	/* 监控项,云主机监控指标说明:https://docs.jdcloud.com/cn/monitoring/vm
	目前支持的指标项如下:
	- `cpu_util`: `CPU使用率`
	- `memory.usage`: `内存使用率`
	- `vm.disk.bytes.read`: `磁盘读吞吐量(host)`
	- `vm.disk.bytes.write`: `磁盘写吞吐量(host)`
	- `vm.network.bytes.incoming`: `网络进速率(host)`
	- `vm.network.bytes.outgoing`: `网络出速率(host)`
	 (Optional) */
	MetricName string `json:"metricName"`

	/* 命名空间,仅当`metricType`为`Custom`时返回 (Optional) */
	Namespace string `json:"namespace"`

	/* 监控项数据统计周期,单位分钟,取值范围:[`1`,`2`,`5`,`10`,`15`,`30`,`60`] (Optional) */
	Period int `json:"period"`

	/* 统计监控项数据的方法
	- 系统监控取值范围:[`avg`,`max`,`min`]
	- 自定义监控取值范围:[`avg`]
	 (Optional) */
	Statistic string `json:"statistic"`

	/* 监控指标的阈值,必须大于0,阈值单位与监控项单位一致 (Optional) */
	Threshold float64 `json:"threshold"`

	/* 对监控项阈值的判断方式,取值范围:[`gte`:`大于等于`,`lte`:`小于等于`,`gt`:`大于`,`lt`:`小于`] (Optional) */
	Comparison string `json:"comparison"`

	/* 触发告警需要满足阈值表达式的次数,默认为`3`,取值范围:[`1`,`2`,`3`,`5`,`10`,`15`,`30`,`60`] (Optional) */
	HitCount int `json:"hitCount"`

	/* 关联的伸缩规则列表 (Optional) */
	AsRules []AsRuleInfoByAsAlarm `json:"asRules"`

	/* 创建时间 (Optional) */
	CreateTime string `json:"createTime"`

	/* 更新时间 (Optional) */
	UpdateTime string `json:"updateTime"`

	/* 告警任务状态,取值范围如下:
	- `Disabled`:已禁用
	- `Normal`:正常
	- `DataMissing`:监控数据不足
	- `Alarm`:告警中
	 (Optional) */
	State string `json:"state"`
}

type AsAlarmInfoByAsRule added in v1.62.0

type AsAlarmInfoByAsRule struct {

	/* 告警任务ID (Optional) */
	AsAlarmId string `json:"asAlarmId"`

	/* 告警任务名称 (Optional) */
	Name string `json:"name"`

	/* 告警任务描述 (Optional) */
	Description string `json:"description"`

	/* 监控项类型,取值范围:[`System`,`Custom`] (Optional) */
	MetricType string `json:"metricType"`

	/* 监控项,云主机监控指标说明:https://docs.jdcloud.com/cn/monitoring/vm
	目前支持的指标项如下:
	- `cpu_util`: `CPU使用率`
	- `memory.usage`: `内存使用率`
	- `vm.disk.bytes.read`: `磁盘读吞吐量(host)`
	- `vm.disk.bytes.write`: `磁盘写吞吐量(host)`
	- `vm.network.bytes.incoming`: `网络进速率(host)`
	- `vm.network.bytes.outgoing`: `网络出速率(host)`
	 (Optional) */
	MetricName string `json:"metricName"`

	/* 命名空间,仅当`metricType`为`Custom`时返回 (Optional) */
	Namespace string `json:"namespace"`

	/* 监控项数据统计周期,单位分钟,取值范围:[`1`,`2`,`5`,`10`,`15`,`30`,`60`] (Optional) */
	Period int `json:"period"`

	/* 统计监控项数据的方法
	- 系统监控取值范围:[`avg`,`max`,`min`]
	- 自定义监控取值范围:[`avg`]
	 (Optional) */
	Statistic string `json:"statistic"`

	/* 监控指标的阈值,必须大于0,阈值单位与监控项单位一致 (Optional) */
	Threshold float64 `json:"threshold"`

	/* 对监控项阈值的判断方式,取值范围:[`gte`:`大于等于`,`lte`:`小于等于`,`gt`:`大于`,`lt`:`小于`] (Optional) */
	Comparison string `json:"comparison"`

	/* 触发告警需要满足阈值表达式的次数,默认为`3`,取值范围:[`1`,`2`,`3`,`5`,`10`,`15`,`30`,`60`] (Optional) */
	HitCount int `json:"hitCount"`

	/* 创建时间 (Optional) */
	CreateTime string `json:"createTime"`

	/* 更新时间 (Optional) */
	UpdateTime string `json:"updateTime"`

	/* 告警任务状态,取值范围如下:
	- `Disabled`:已禁用
	- `Normal`:正常
	- `DataMissing`:监控数据不足
	- `Alarm`:告警中
	 (Optional) */
	State string `json:"state"`
}

type AsCronInfo added in v1.62.0

type AsCronInfo struct {

	/* 高可用组ID (Optional) */
	AgId string `json:"agId"`

	/* 定时任务ID (Optional) */
	AsCronId string `json:"asCronId"`

	/* 地域 (Optional) */
	Region string `json:"region"`

	/* 定时任务名称 (Optional) */
	Name string `json:"name"`

	/* 定时任务描述 (Optional) */
	Description string `json:"description"`

	/* 设置伸缩组最小实例数,必须大于等于0,如果没有设置此参数,则此参数将会保存为 -1 (Optional) */
	MinSize int `json:"minSize"`

	/* 设置伸缩组最大实例数,必须大于等于0,如果没有设置此参数,则此参数将会保存为 -1 (Optional) */
	MaxSize int `json:"maxSize"`

	/* 设置伸缩组期望实例数,必须大于等于0,如果没有设置此参数,则此参数将会保存为 -1 (Optional) */
	DesiredCapacity int `json:"desiredCapacity"`

	/* 定时任务触发的时间点
	时间格式:`2023-05-10 10:10:00`,目前只支持到分钟,秒数会被忽略,但是需要严格按照此时间格式填写
	- 如果未指定`repeatType`,则按指定的日期和时间执行一次
	- 如果指定了`repeatType`,则此属性指定的时间点,表示从这个时间之后开始按照重复周期执行定时任务
	 (Optional) */
	LaunchTime string `json:"launchTime"`

	/* 重复执行定时任务的类型,如果`repeatType`有值,则`repeatValue`也会有值
	取值范围:[`Daily`,`Weekly`,`Monthly`,`Cron`]
	- Daily:每多少天重复执行一次定时任务
	- Weekly:每周指定几天重复执行一次定时任务
	- Monthly:每月内指定几天重复执行一次定时任务
	- Cron:按照指定的Cron表达式执行定时任务
	 (Optional) */
	RepeatType string `json:"repeatType"`

	/* 重复执行定时任务的数值,如果`repeatType`有值,则`repeatValue`也会有值
	- `repeatType`取值为`Daily`时,只能填一个值,取值范围:[ `1` ~ `31` ],表示:每几天执行
	- `repeatType`取值为`Weekly`时,可以填入多个值,填多个值时使用半角逗号(,)分隔。取值范围:[`0`,`1`,`2`,`3`,`4`,`5`,`6`],分别对应:周日、周一、周二、周三、周四、周五、周六,表示:每周几执行
	- `repeatType`取值为`Monthly`时,格式为A-B。A、B的取值范围:[ `1` ~ `31` ],并且B必须大于等于A,表示:每个月的几号到几号执行
	- `repeatType`取值为`Cron`时,必须填写Cron表达式,不支持秒,最小单位为分钟

	支持的Cron格式如下:
	*    *    *    *    *   从左到右依次表示:`[分] [小时] [日] [月] [周]`

	- 分,取值范围:[`0` ~ `59`],允许的连接符号取值范围:[`*` `/` `,` `-`]
	- 小时,取值范围:[`0` ~ `23`],允许的连接符号取值范围:[`*` `/` `,` `-`]
	- 日,取值范围:[`1` ~ `31`],允许的连接符号取值范围:[`*` `/` `,` `-` `?`]
	- 月,取值范围:[`1` ~ `12`],允许的连接符号取值范围:[`*` `/` `,` `-`]
	- 周,取值范围:[`0` ~ `6`],允许的连接符号取值范围:[`*` `/` `,` `-` `?`]

	符号解析:`*`表示任意值,`/`表示步长,`,`表示多个值,`-`表示范围,`?`表示不指定值

	示例:0 10 * * *  表示:每天10点执行
	 (Optional) */
	RepeatValue string `json:"repeatValue"`

	/* 重复执行定时任务的结束时间,若为空,表示不限制结束时间,一直重复执行 (Optional) */
	RepeatEndTime string `json:"repeatEndTime"`

	/* 定时任务触发操作失败后,在此时间内重试,单位为秒 (Optional) */
	LaunchExpirationTime int `json:"launchExpirationTime"`

	/* 关联的伸缩规则 (Optional) */
	AsRule AsRuleInfoByAsCron `json:"asRule"`

	/* 创建时间 (Optional) */
	CreateTime string `json:"createTime"`

	/* 更新时间 (Optional) */
	UpdateTime string `json:"updateTime"`

	/* 定时任务状态,取值范围如下:
	 - `Disabled`:已禁用
	 - `Enabled`:已启用
	(Optional) */
	DisplayState string `json:"displayState"`
}

type AsCronInfoByAsRule added in v1.62.0

type AsCronInfoByAsRule struct {

	/* 定时任务ID (Optional) */
	AsCronId string `json:"asCronId"`

	/* 定时任务名称 (Optional) */
	Name string `json:"name"`

	/* 定时任务描述 (Optional) */
	Description string `json:"description"`

	/* 定时任务触发的时间点
	时间格式:`2023-05-10 10:10:00`,目前只支持到分钟,秒数会被忽略,但是需要严格按照此时间格式填写
	- 如果未指定`repeatType`,则按指定的日期和时间执行一次
	- 如果指定了`repeatType`,则此属性指定的时间点,表示从这个时间之后开始按照重复周期执行定时任务
	 (Optional) */
	LaunchTime string `json:"launchTime"`

	/* 重复执行定时任务的类型,如果`repeatType`有值,则`repeatValue`也会有值
	取值范围:[`Daily`,`Weekly`,`Monthly`,`Cron`]
	- Daily:每多少天重复执行一次定时任务
	- Weekly:每周指定几天重复执行一次定时任务
	- Monthly:每月内指定几天重复执行一次定时任务
	- Cron:按照指定的Cron表达式执行定时任务
	 (Optional) */
	RepeatType string `json:"repeatType"`

	/* 重复执行定时任务的数值,如果`repeatType`有值,则`repeatValue`也会有值
	- `repeatType`取值为`Daily`时,只能填一个值,取值范围:[ `1` ~ `31` ],表示:每几天执行
	- `repeatType`取值为`Weekly`时,可以填入多个值,填多个值时使用半角逗号(,)分隔。取值范围:[`0`,`1`,`2`,`3`,`4`,`5`,`6`],分别对应:周日、周一、周二、周三、周四、周五、周六,表示:每周几执行
	- `repeatType`取值为`Monthly`时,格式为A-B。A、B的取值范围:[ `1` ~ `31` ],并且B必须大于等于A,表示:每个月的几号到几号执行
	- `repeatType`取值为`Cron`时,必须填写Cron表达式,不支持秒,最小单位为分钟

	支持的Cron格式如下:
	*    *    *    *    *   从左到右依次表示:`[分] [小时] [日] [月] [周]`

	- 分,取值范围:[`0` ~ `59`],允许的连接符号取值范围:[`*` `/` `,` `-`]
	- 小时,取值范围:[`0` ~ `23`],允许的连接符号取值范围:[`*` `/` `,` `-`]
	- 日,取值范围:[`1` ~ `31`],允许的连接符号取值范围:[`*` `/` `,` `-` `?`]
	- 月,取值范围:[`1` ~ `12`],允许的连接符号取值范围:[`*` `/` `,` `-`]
	- 周,取值范围:[`0` ~ `6`],允许的连接符号取值范围:[`*` `/` `,` `-` `?`]

	符号解析:`*`表示任意值,`/`表示步长,`,`表示多个值,`-`表示范围,`?`表示不指定值

	示例:0 10 * * *  表示:每天10点执行
	 (Optional) */
	RepeatValue string `json:"repeatValue"`

	/* 重复执行定时任务的结束时间,若为空,表示不限制结束时间,一直重复执行 (Optional) */
	RepeatEndTime string `json:"repeatEndTime"`

	/* 定时任务触发操作失败后,在此时间内重试,单位为秒 (Optional) */
	LaunchExpirationTime int `json:"launchExpirationTime"`

	/* 创建时间 (Optional) */
	CreateTime string `json:"createTime"`

	/* 更新时间 (Optional) */
	UpdateTime string `json:"updateTime"`

	/* 定时任务状态,取值范围如下:
	 - `Disabled`:已禁用
	 - `Enabled`:已启用
	(Optional) */
	DisplayState string `json:"displayState"`
}

type AsRuleInfo added in v1.62.0

type AsRuleInfo struct {

	/* 高可用组ID (Optional) */
	AgId string `json:"agId"`

	/* 伸缩规则ID (Optional) */
	AsRuleId string `json:"asRuleId"`

	/* 地域 (Optional) */
	Region string `json:"region"`

	/* 伸缩规则名称 (Optional) */
	Name string `json:"name"`

	/* 伸缩规则描述 (Optional) */
	Description string `json:"description"`

	/* 伸缩规则类型 (Optional) */
	AsRuleType string `json:"asRuleType"`

	/* 简单规则信息,仅当`asRuleType`为`Simple`时返回 (Optional) */
	SimpleAsRuleInfo SimpleAsRuleInfo `json:"simpleAsRuleInfo"`

	/* 目标规则信息,仅当`asRuleType`为`Target`时返回 (Optional) */
	TargetAsRuleInfo TargetAsRuleInfo `json:"targetAsRuleInfo"`

	/* 步进规则信息,仅当`asRuleType`为`Step`时返回 (Optional) */
	StepAsRuleInfo StepAsRuleInfo `json:"stepAsRuleInfo"`

	/* 创建时间 (Optional) */
	CreateTime string `json:"createTime"`

	/* 更新时间 (Optional) */
	UpdateTime string `json:"updateTime"`
}

type AsRuleInfoByAsAlarm added in v1.62.0

type AsRuleInfoByAsAlarm struct {

	/* 伸缩规则ID (Optional) */
	AsRuleId string `json:"asRuleId"`

	/* 伸缩规则名称 (Optional) */
	Name string `json:"name"`

	/* 伸缩规则描述 (Optional) */
	Description string `json:"description"`

	/* 伸缩规则类型 (Optional) */
	AsRuleType string `json:"asRuleType"`

	/* 简单规则信息,仅当`asRuleType`为`Simple`时返回 (Optional) */
	SimpleAsRuleInfo SimpleAsRuleInfoByAsAlarm `json:"simpleAsRuleInfo"`

	/* 目标规则信息,仅当`asRuleType`为`Target`时返回 (Optional) */
	TargetAsRuleInfo TargetAsRuleInfoByAsAlarm `json:"targetAsRuleInfo"`

	/* 步进规则信息,仅当`asRuleType`为`Step`时返回 (Optional) */
	StepAsRuleInfo StepAsRuleInfoByAsAlarm `json:"stepAsRuleInfo"`

	/* 创建时间 (Optional) */
	CreateTime string `json:"createTime"`

	/* 更新时间 (Optional) */
	UpdateTime string `json:"updateTime"`
}

type AsRuleInfoByAsCron added in v1.62.0

type AsRuleInfoByAsCron struct {

	/* 伸缩规则ID (Optional) */
	AsRuleId string `json:"asRuleId"`

	/* 伸缩规则名称 (Optional) */
	Name string `json:"name"`

	/* 伸缩规则描述 (Optional) */
	Description string `json:"description"`

	/* 伸缩规则类型 (Optional) */
	AsRuleType string `json:"asRuleType"`

	/* 关联的简单规则信息 (Optional) */
	SimpleAsRuleInfo SimpleAsRuleInfoByAsCron `json:"simpleAsRuleInfo"`

	/* 创建时间 (Optional) */
	CreateTime string `json:"createTime"`

	/* 更新时间 (Optional) */
	UpdateTime string `json:"updateTime"`
}

type AutoscalingSpec added in v1.62.0

type AutoscalingSpec struct {

	/* 伸缩组最小实例数,取值范围为0-300。若高可用组分散策略为host或、switch,组内最小实例数不能大于组quota限制  */
	MinSize int `json:"minSize"`

	/* 伸缩组最大实例数,取值范围为0-300。若高可用组分散策略为host或、switch,组内最大实例数不能大于组quota限制  */
	MaxSize int `json:"maxSize"`

	/* 伸缩组期望实例数,取值范围为:[最小实例数,最大实例数] (Optional) */
	DesiredCapacity *int `json:"desiredCapacity"`

	/* 伸缩组内实例是否需要健康检查,默认是开启 (Optional) */
	HealthCheck *bool `json:"healthCheck"`

	/* 冷却时间,默认值为300(单位为秒),范围为0-86400(24小时) (Optional) */
	CoolDownSeconds *int `json:"coolDownSeconds"`

	/* 默认值为均衡分布,Balance,当前仅支持这个值 (Optional) */
	ScalingPolicy *string `json:"scalingPolicy"`

	/* 实例移出策略,默认值为最早创建的实例,支持:OldestResource(最早创建实例),NewestResource(最新创建实例) (Optional) */
	RemovalPolicy *string `json:"removalPolicy"`
}

type AutoscalingSpecByUpdate added in v1.62.0

type AutoscalingSpecByUpdate struct {

	/* 伸缩组最小实例数,最大值1000。若高可用组分散策略为host或、switch,组内最小实例数及最大实例数不能大于组quota限制 (Optional) */
	MinSize *int `json:"minSize"`

	/* 伸缩组最大实例数,最大值1000。若高可用组分散策略为host或、switch,组内最小实例数及最大实例数不能大于组quota限制 (Optional) */
	MaxSize *int `json:"maxSize"`

	/* 伸缩组期望实例数 (Optional) */
	DesiredCapacity *int `json:"desiredCapacity"`

	/* 伸缩组内实例是否需要健康检查,默认是开启 (Optional) */
	HealthCheck *bool `json:"healthCheck"`

	/* 冷却时间,默认值为300(单位为秒),范围为0-86400(24小时) (Optional) */
	CoolDownSeconds *int `json:"coolDownSeconds"`

	/* 默认值为均衡分布,Balance (Optional) */
	ScalingPolicy *string `json:"scalingPolicy"`

	/* 实例移出策略,默认值为最早创建的实例,支持:OldestResource(最早创建实例),NewestResource(最新创建实例) (Optional) */
	RemovalPolicy *string `json:"removalPolicy"`
}

type AvailabilityGroup

type AvailabilityGroup struct {

	/* 高可用组ID (Optional) */
	Id string `json:"id"`

	/* 高可用组名称 (Optional) */
	Name string `json:"name"`

	/* 描述 (Optional) */
	Description string `json:"description"`

	/* 实例模板的ID (Optional) */
	InstanceTemplateId string `json:"instanceTemplateId"`

	/* 可用区域 (Optional) */
	Azs []string `json:"azs"`

	/* 高可用组资源类型 (Optional) */
	AgType string `json:"agType"`

	/* 创建时间 (Optional) */
	CreateTime string `json:"createTime"`

	/* 高可用组中实例的数量 (Optional) */
	Count int `json:"count"`

	/* 是否开启自动伸缩 (Optional) */
	AutoScaling bool `json:"autoScaling"`

	/* 高可用组配置类型 (Optional) */
	ConfigurationType string `json:"configurationType"`

	/* 高可用组放置类型 (Optional) */
	PlacementType string `json:"placementType"`

	/* 高可用组中实例数量的限制。 (Optional) */
	InstancesQuotas []InstancesQuota `json:"instancesQuotas"`

	/*  (Optional) */
	Instances []InstanceSpec `json:"instances"`

	/*  (Optional) */
	AutoscalingSpec AutoscalingSpec `json:"autoscalingSpec"`
}

type CreateSimpleAsRuleSpec added in v1.62.0

type CreateSimpleAsRuleSpec struct {

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	*/
	AdjustmentType string `json:"adjustmentType"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	*/
	AdjustmentValue int `json:"adjustmentValue"`
}

type CreateStepAdjustmentSpec added in v1.62.0

type CreateStepAdjustmentSpec struct {

	/* 指标值上界,取值范围:[`-9.999999e18` ~ `9.999999e18`]  */
	MetricUpperBound float64 `json:"metricUpperBound"`

	/* 指标值下界,取值范围:[`-9.999999e18` ~ `9.999999e18`]  */
	MetricLowerBound float64 `json:"metricLowerBound"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	*/
	AdjustmentValue int `json:"adjustmentValue"`
}

type CreateStepAsRuleSpec added in v1.62.0

type CreateStepAsRuleSpec struct {

	/* 告警任务ID,步进规则必须绑定一个告警任务  */
	AsAlarmId string `json:"asAlarmId"`

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	*/
	AdjustmentType string `json:"adjustmentType"`

	/* 步进调整策略数组  */
	StepAdjustments []CreateStepAdjustmentSpec `json:"stepAdjustments"`
}

type CreateTargetAsRuleSpec added in v1.62.0

type CreateTargetAsRuleSpec struct {

	/* 目标跟踪的监控项,云主机监控指标说明:https://docs.jdcloud.com/cn/monitoring/vm
	目前支持的指标项如下:
	- `cpu_util`: `CPU使用率`
	- `memory.usage`: `内存使用率`
	- `vm.disk.bytes.read`: `磁盘读吞吐量(host)`
	- `vm.disk.bytes.write`: `磁盘写吞吐量(host)`
	- `vm.network.bytes.incoming`: `网络进速率(host)`
	- `vm.network.bytes.outgoing`: `网络出速率(host)`
	*/
	MetricName string `json:"metricName"`

	/* 目标跟踪的目标值,必须大于0  */
	TargetValue float64 `json:"targetValue"`

	/* 扩容报警触发的阈值次数,默认为`3`,必须大于0 (Optional) */
	ScaleOutHitCount *int `json:"scaleOutHitCount"`

	/* 缩容报警触发的阈值次数,默认为`15`,必须大于0 (Optional) */
	ScaleInHitCount *int `json:"scaleInHitCount"`
}

type Filter added in v1.62.0

type Filter struct {

	/* 过滤条件的名称  */
	Name string `json:"name"`

	/* 过滤条件的操作符,目前只支持 `eq` 操作符 (Optional) */
	Operator *string `json:"operator"`

	/* 过滤条件的值  */
	Values []string `json:"values"`
}

type Instance added in v1.62.0

type Instance struct {

	/* 实例ID (Optional) */
	Id string `json:"id"`

	/* 实例规格 (Optional) */
	InstanceType string `json:"instanceType"`
}

type InstanceSpec added in v1.62.0

type InstanceSpec struct {

	/* 主机ID (Optional) */
	InstanceId string `json:"instanceId"`

	/* 主机名称 (Optional) */
	InstanceName string `json:"instanceName"`

	/* 主机状态 (Optional) */
	Status string `json:"status"`

	/* 打开伸缩功能后,主机在伸缩组中状态 (Optional) */
	AgStatus string `json:"agStatus"`

	/* 打开伸缩功能后,主机是否托管给伸缩组 (Optional) */
	IsManaged bool `json:"isManaged"`

	/* 可用区 (Optional) */
	Az string `json:"az"`

	/*  (Optional) */
	NetworkInterfaceSpec NetworkInterfaceSpec `json:"networkInterfaceSpec"`

	/*  (Optional) */
	Charge charge.Charge `json:"charge"`
}

type InstancesQuota added in v1.57.0

type InstancesQuota struct {

	/* az (Optional) */
	Az string `json:"az"`

	/* 配额上限 (Optional) */
	Limit int `json:"limit"`

	/* 已用配额 (Optional) */
	Used int `json:"used"`
}

type NetworkInterfaceSpec added in v1.62.0

type NetworkInterfaceSpec struct {

	/* 私有IP的IPV4地址 (Optional) */
	PrivateIpAddress string `json:"privateIpAddress"`

	/* 弹性IP实例地址 (Optional) */
	ElasticIpAddress string `json:"elasticIpAddress"`
}

type Notification added in v1.62.0

type Notification struct {

	/* 通知内容, 包括: | 扩容伸缩活动成功:ScaleOutSuccess 缩容伸缩活动成功:ScaleInSuccess 扩容伸缩活动失败:ScaleOutError 缩容伸缩活动失败:ScaleInError 伸缩活动拒绝执行:ScaleReject (Optional) */
	Types []string `json:"types"`

	/* 通知方式,包括:Email,Message (Optional) */
	Mode string `json:"mode"`
}

type Quota

type Quota struct {

	/* 资源类型[ag] (Optional) */
	ResourceType string `json:"resourceType"`

	/* 配额上限 (Optional) */
	Limit int `json:"limit"`

	/* 已用配额 (Optional) */
	Used int `json:"used"`
}

type SimpleAsRuleInfo added in v1.62.0

type SimpleAsRuleInfo struct {

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	 (Optional) */
	AdjustmentType string `json:"adjustmentType"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	 (Optional) */
	AdjustmentValue int `json:"adjustmentValue"`

	/* 关联的告警任务列表 (Optional) */
	AsAlarms []AsAlarmInfoByAsRule `json:"asAlarms"`

	/* 关联的定时任务列表 (Optional) */
	AsCrons []AsCronInfoByAsRule `json:"asCrons"`
}

type SimpleAsRuleInfoByAsAlarm added in v1.62.0

type SimpleAsRuleInfoByAsAlarm struct {

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	 (Optional) */
	AdjustmentType string `json:"adjustmentType"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	 (Optional) */
	AdjustmentValue int `json:"adjustmentValue"`
}

type SimpleAsRuleInfoByAsCron added in v1.62.0

type SimpleAsRuleInfoByAsCron struct {

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	 (Optional) */
	AdjustmentType string `json:"adjustmentType"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	 (Optional) */
	AdjustmentValue int `json:"adjustmentValue"`
}

type Sort added in v1.62.0

type Sort struct {

	/* 排序条件的名称  */
	Name string `json:"name"`

	/* 排序条件的方向,默认为`desc`,取值范围:[`asc`,`desc`] (Optional) */
	Direction *string `json:"direction"`
}

type StepAdjustmentInfo added in v1.62.0

type StepAdjustmentInfo struct {

	/* 指标值上界,取值范围:[`-9.999999e18` ~ `9.999999e18`] (Optional) */
	MetricUpperBound float64 `json:"metricUpperBound"`

	/* 指标值下界,取值范围:[`-9.999999e18` ~ `9.999999e18`] (Optional) */
	MetricLowerBound float64 `json:"metricLowerBound"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	 (Optional) */
	AdjustmentValue int `json:"adjustmentValue"`
}

type StepAdjustmentInfoByAsAlarm added in v1.62.0

type StepAdjustmentInfoByAsAlarm struct {

	/* 指标值上界,取值范围:[`-9.999999e18` ~ `9.999999e18`] (Optional) */
	MetricUpperBound float64 `json:"metricUpperBound"`

	/* 指标值下界,取值范围:[`-9.999999e18` ~ `9.999999e18`] (Optional) */
	MetricLowerBound float64 `json:"metricLowerBound"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	 (Optional) */
	AdjustmentValue int `json:"adjustmentValue"`
}

type StepAsRuleInfo added in v1.62.0

type StepAsRuleInfo struct {

	/* 步进规则关联的告警任务 (Optional) */
	AsAlarm AsAlarmInfoByAsRule `json:"asAlarm"`

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	 (Optional) */
	AdjustmentType string `json:"adjustmentType"`

	/* 步进调整策略数组 (Optional) */
	StepAdjustments []StepAdjustmentInfo `json:"stepAdjustments"`
}

type StepAsRuleInfoByAsAlarm added in v1.62.0

type StepAsRuleInfoByAsAlarm struct {

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	 (Optional) */
	AdjustmentType string `json:"adjustmentType"`

	/* 步进调整策略数组 (Optional) */
	StepAdjustments []StepAdjustmentInfoByAsAlarm `json:"stepAdjustments"`
}

type TargetAsRuleInfo added in v1.62.0

type TargetAsRuleInfo struct {

	/* 目标跟踪的监控项,云主机监控指标说明:https://docs.jdcloud.com/cn/monitoring/vm
	目前支持的指标项如下:
	- `cpu_util`: `CPU使用率`
	- `memory.usage`: `内存使用率`
	- `vm.disk.bytes.read`: `磁盘读吞吐量(host)`
	- `vm.disk.bytes.write`: `磁盘写吞吐量(host)`
	- `vm.network.bytes.incoming`: `网络进速率(host)`
	- `vm.network.bytes.outgoing`: `网络出速率(host)`
	 (Optional) */
	MetricName string `json:"metricName"`

	/* 目标跟踪的目标值,必须大于0 (Optional) */
	TargetValue float64 `json:"targetValue"`

	/* 扩容报警触发的阈值次数,必须大于0 (Optional) */
	ScaleOutHitCount int `json:"scaleOutHitCount"`

	/* 缩容报警触发的阈值次数,必须大于0 (Optional) */
	ScaleInHitCount int `json:"scaleInHitCount"`

	/* 扩容报警对应的告警任务 (Optional) */
	TargetUpperBoundAsAlarm AsAlarmInfoByAsRule `json:"targetUpperBoundAsAlarm"`

	/* 缩容报警对应的告警任务 (Optional) */
	TargetLowerBoundAsAlarm AsAlarmInfoByAsRule `json:"targetLowerBoundAsAlarm"`
}

type TargetAsRuleInfoByAsAlarm added in v1.62.0

type TargetAsRuleInfoByAsAlarm struct {

	/* 目标跟踪的监控项,云主机监控指标说明:https://docs.jdcloud.com/cn/monitoring/vm
	目前支持的指标项如下:
	- `cpu_util`: `CPU使用率`
	- `memory.usage`: `内存使用率`
	- `vm.disk.bytes.read`: `磁盘读吞吐量(host)`
	- `vm.disk.bytes.write`: `磁盘写吞吐量(host)`
	- `vm.network.bytes.incoming`: `网络进速率(host)`
	- `vm.network.bytes.outgoing`: `网络出速率(host)`
	 (Optional) */
	MetricName string `json:"metricName"`

	/* 目标跟踪的目标值,必须大于0 (Optional) */
	TargetValue float64 `json:"targetValue"`

	/* 扩容报警触发的阈值次数,必须大于0 (Optional) */
	ScaleOutHitCount int `json:"scaleOutHitCount"`

	/* 缩容报警触发的阈值次数,必须大于0 (Optional) */
	ScaleInHitCount int `json:"scaleInHitCount"`
}

type UpdateSimpleAsRuleSpec added in v1.62.0

type UpdateSimpleAsRuleSpec struct {

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	 (Optional) */
	AdjustmentType *string `json:"adjustmentType"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	 (Optional) */
	AdjustmentValue *int `json:"adjustmentValue"`
}

type UpdateStepAdjustmentSpec added in v1.62.0

type UpdateStepAdjustmentSpec struct {

	/* 指标值上界,取值范围:[`-9.999999e18` ~ `9.999999e18`] (Optional) */
	MetricUpperBound *float64 `json:"metricUpperBound"`

	/* 指标值下界,取值范围:[`-9.999999e18` ~ `9.999999e18`] (Optional) */
	MetricLowerBound *float64 `json:"metricLowerBound"`

	/* 伸缩的调整值,负数表示减少,正数表示增加
	- `adjustmentType`为`Number`时,取值范围:[`-300` ~ `300`]
	- `adjustmentType`为`Percentage`时,单位为百分比,取值范围:[`-100` ~ `10000`]
	- `adjustmentType`为`Total`时,取值范围:[`0` ~ `100000`]
	 (Optional) */
	AdjustmentValue *int `json:"adjustmentValue"`
}

type UpdateStepAsRuleSpec added in v1.62.0

type UpdateStepAsRuleSpec struct {

	/* 伸缩调整方式,取值范围:[`Number`,`Percentage`,`Total`]
	- `Number`:增加或减少指定数量的实例
	- `Percentage`:增加或减少指定百分比的实例
	- `Total`:将当前伸缩组的实例数量调整到指定数量
	如果修改了参数 `adjustmentType`,则参数 `stepAdjustments` 也必须传,否则报错
	 (Optional) */
	AdjustmentType *string `json:"adjustmentType"`

	/* 步进调整策略数组 (Optional) */
	StepAdjustments []UpdateStepAdjustmentSpec `json:"stepAdjustments"`
}

type UpdateTargetAsRuleSpec added in v1.62.0

type UpdateTargetAsRuleSpec struct {

	/* 目标跟踪的监控项,云主机监控指标说明:https://docs.jdcloud.com/cn/monitoring/vm
	目前支持的指标项如下:
	- `cpu_util`: `CPU使用率`
	- `memory.usage`: `内存使用率`
	- `vm.disk.bytes.read`: `磁盘读吞吐量(host)`
	- `vm.disk.bytes.write`: `磁盘写吞吐量(host)`
	- `vm.network.bytes.incoming`: `网络进速率(host)`
	- `vm.network.bytes.outgoing`: `网络出速率(host)`
	 (Optional) */
	MetricName *string `json:"metricName"`

	/* 目标跟踪的目标值,必须大于0 (Optional) */
	TargetValue *float64 `json:"targetValue"`

	/* 扩容报警触发的阈值次数,必须大于0 (Optional) */
	ScaleOutHitCount *int `json:"scaleOutHitCount"`

	/* 缩容报警触发的阈值次数,必须大于0 (Optional) */
	ScaleInHitCount *int `json:"scaleInHitCount"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL