Files

124 lines
5.9 KiB
C#
Raw Permalink Normal View History

/*
* Copyright (c) 2018 THL A29 Limited, a Tencent company. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
namespace TencentCloud.Ecm.V20190719.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class RunInstancesRequest : AbstractModel
{
/// <summary>
/// 需要创建实例的可用区及创建数目及运营商的列表。在单次请求的过程中单个region下的请求创建实例数上限为100
/// </summary>
[JsonProperty("ZoneInstanceCountISPSet")]
public ZoneInstanceCountISP[] ZoneInstanceCountISPSet{ get; set; }
/// <summary>
/// 模块ID
/// </summary>
[JsonProperty("ModuleId")]
public string ModuleId{ get; set; }
/// <summary>
/// 实例登录密码。不同操作系统类型密码复杂度限制不一样,具体如下:
/// Linux实例密码必须8到30位至少包括两项[a-z][A-Z]、[0-9] 和 [( ) ` ~ ! @ # $ % ^ & - + = | { } [ ] : ; ' , . ? / ]中的特殊符。Windows实例密码必须12到30位至少包括三项[a-z][A-Z][0-9] 和 [( ) ` ~ ! @ # $ % ^ & - + = | { } [ ] : ; ' , . ? /]中的特殊符号。
/// </summary>
[JsonProperty("Password")]
public string Password{ get; set; }
/// <summary>
/// 公网出带宽上限单位Mbps
/// </summary>
[JsonProperty("InternetMaxBandwidthOut")]
public long? InternetMaxBandwidthOut{ get; set; }
/// <summary>
/// 镜像ID不传则使用模块下的默认值
/// </summary>
[JsonProperty("ImageId")]
public string ImageId{ get; set; }
/// <summary>
/// 实例显示名称。
/// 不指定实例显示名称则默认显示‘未命名’。
/// 购买多台实例,如果指定模式串{R:x},表示生成数字[x, x+n-1]其中n表示购买实例的数量例如server\_{R:3}购买1台时实例显示名称为server\_3购买2台时实例显示名称分别为server\_3server\_4。
/// 支持指定多个模式串{R:x}。
/// 购买多台实例如果不指定模式串则在实例显示名称添加后缀1、2...n其中n表示购买实例的数量例如server_购买2台时实例显示名称分别为server\_1server\_2。
/// 如果购买的实例属于不同的地域或运营商,则上述规则在每个地域和运营商内独立计数。
/// 最多支持60个字符包含模式串
/// </summary>
[JsonProperty("InstanceName")]
public string InstanceName{ get; set; }
/// <summary>
/// 主机名称
/// 点号(.)和短横线(-)不能作为 HostName 的首尾字符,不能连续使用。
/// Windows 实例:名字符长度为[2, 15],允许字母(不限制大小写)、数字和短横线(-)组成,不支持点号(.),不能全是数字。
/// 其他类型Linux 等)实例:字符长度为[2, 60],允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。
/// </summary>
[JsonProperty("HostName")]
public string HostName{ get; set; }
/// <summary>
/// 用于保证请求幂等性的字符串。目前为保留参数,请勿使用。
/// </summary>
[JsonProperty("ClientToken")]
public string ClientToken{ get; set; }
/// <summary>
/// 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认公共镜像开启云监控、云安全服务
/// </summary>
[JsonProperty("EnhancedService")]
public EnhancedService EnhancedService{ get; set; }
/// <summary>
/// 标签列表
/// </summary>
[JsonProperty("TagSpecification")]
public TagSpecification[] TagSpecification{ get; set; }
/// <summary>
/// 提供给实例使用的用户数据,需要以 base64 方式编码,支持的最大数据大小为 16KB
/// </summary>
[JsonProperty("UserData")]
public string UserData{ get; set; }
/// <summary>
/// For internal usage only. DO NOT USE IT.
/// </summary>
internal override void ToMap(Dictionary<string, string> map, string prefix)
{
this.SetParamArrayObj(map, prefix + "ZoneInstanceCountISPSet.", this.ZoneInstanceCountISPSet);
this.SetParamSimple(map, prefix + "ModuleId", this.ModuleId);
this.SetParamSimple(map, prefix + "Password", this.Password);
this.SetParamSimple(map, prefix + "InternetMaxBandwidthOut", this.InternetMaxBandwidthOut);
this.SetParamSimple(map, prefix + "ImageId", this.ImageId);
this.SetParamSimple(map, prefix + "InstanceName", this.InstanceName);
this.SetParamSimple(map, prefix + "HostName", this.HostName);
this.SetParamSimple(map, prefix + "ClientToken", this.ClientToken);
this.SetParamObj(map, prefix + "EnhancedService.", this.EnhancedService);
this.SetParamArrayObj(map, prefix + "TagSpecification.", this.TagSpecification);
this.SetParamSimple(map, prefix + "UserData", this.UserData);
}
}
}