Files
g.hnyhua.cn/TencentCloud/Ecm/V20190719/Models/RunInstancesRequest.cs
2026-02-07 15:48:27 +08:00

124 lines
5.9 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*
* 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);
}
}
}