/* * 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.Batch.V20170312.Models { using Newtonsoft.Json; using System.Collections.Generic; using TencentCloud.Common; public class EnvData : AbstractModel { /// /// CVM实例类型,不能与InstanceTypes和InstanceTypeOptions同时出现。 /// [JsonProperty("InstanceType")] public string InstanceType{ get; set; } /// /// CVM镜像ID /// [JsonProperty("ImageId")] public string ImageId{ get; set; } /// /// 实例系统盘配置信息 /// [JsonProperty("SystemDisk")] public SystemDisk SystemDisk{ get; set; } /// /// 实例数据盘配置信息 /// [JsonProperty("DataDisks")] public DataDisk[] DataDisks{ get; set; } /// /// 私有网络相关信息配置,与Zones和VirtualPrivateClouds不能同时指定。 /// [JsonProperty("VirtualPrivateCloud")] public VirtualPrivateCloud VirtualPrivateCloud{ get; set; } /// /// 公网带宽相关信息设置 /// [JsonProperty("InternetAccessible")] public InternetAccessible InternetAccessible{ get; set; } /// /// CVM实例显示名称 /// [JsonProperty("InstanceName")] public string InstanceName{ get; set; } /// /// 实例登录设置 /// [JsonProperty("LoginSettings")] public LoginSettings LoginSettings{ get; set; } /// /// 实例所属安全组 /// [JsonProperty("SecurityGroupIds")] public string[] SecurityGroupIds{ get; set; } /// /// 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。 /// [JsonProperty("EnhancedService")] public EnhancedService EnhancedService{ get; set; } /// /// CVM实例计费类型
  • POSTPAID_BY_HOUR:按小时后付费
  • SPOTPAID:竞价付费
    默认值:POSTPAID_BY_HOUR。 ///
  • [JsonProperty("InstanceChargeType")] public string InstanceChargeType{ get; set; } /// /// 实例的市场相关选项,如竞价实例相关参数 /// [JsonProperty("InstanceMarketOptions")] public InstanceMarketOptionsRequest InstanceMarketOptions{ get; set; } /// /// CVM实例类型列表,不能与InstanceType和InstanceTypeOptions同时出现。指定该字段后,计算节点按照机型先后顺序依次尝试创建,直到实例创建成功,结束遍历过程。最多支持10个机型。 /// [JsonProperty("InstanceTypes")] public string[] InstanceTypes{ get; set; } /// /// CVM实例机型配置。不能与InstanceType和InstanceTypes同时出现。 /// [JsonProperty("InstanceTypeOptions")] public InstanceTypeOptions InstanceTypeOptions{ get; set; } /// /// 可用区列表,支持跨可用区创建CVM实例。与VirtualPrivateCloud和VirtualPrivateClouds不能同时指定。 /// [JsonProperty("Zones")] public string[] Zones{ get; set; } /// /// 私有网络列表,支持跨私有网络创建CVM实例。与VirtualPrivateCloud和Zones不能同时指定。 /// [JsonProperty("VirtualPrivateClouds")] public VirtualPrivateCloud[] VirtualPrivateClouds{ get; set; } /// /// For internal usage only. DO NOT USE IT. /// internal override void ToMap(Dictionary map, string prefix) { this.SetParamSimple(map, prefix + "InstanceType", this.InstanceType); this.SetParamSimple(map, prefix + "ImageId", this.ImageId); this.SetParamObj(map, prefix + "SystemDisk.", this.SystemDisk); this.SetParamArrayObj(map, prefix + "DataDisks.", this.DataDisks); this.SetParamObj(map, prefix + "VirtualPrivateCloud.", this.VirtualPrivateCloud); this.SetParamObj(map, prefix + "InternetAccessible.", this.InternetAccessible); this.SetParamSimple(map, prefix + "InstanceName", this.InstanceName); this.SetParamObj(map, prefix + "LoginSettings.", this.LoginSettings); this.SetParamArraySimple(map, prefix + "SecurityGroupIds.", this.SecurityGroupIds); this.SetParamObj(map, prefix + "EnhancedService.", this.EnhancedService); this.SetParamSimple(map, prefix + "InstanceChargeType", this.InstanceChargeType); this.SetParamObj(map, prefix + "InstanceMarketOptions.", this.InstanceMarketOptions); this.SetParamArraySimple(map, prefix + "InstanceTypes.", this.InstanceTypes); this.SetParamObj(map, prefix + "InstanceTypeOptions.", this.InstanceTypeOptions); this.SetParamArraySimple(map, prefix + "Zones.", this.Zones); this.SetParamArrayObj(map, prefix + "VirtualPrivateClouds.", this.VirtualPrivateClouds); } } }