/* * 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.Redis.V20180412.Models { using Newtonsoft.Json; using System.Collections.Generic; using TencentCloud.Common; public class CreateInstancesRequest : AbstractModel { /// /// 实例所属的可用区ID /// [JsonProperty("ZoneId")] public ulong? ZoneId{ get; set; } /// /// 实例类型:2 – Redis2.8主从版,3 – Redis3.2主从版(CKV主从版),4 – Redis3.2集群版(CKV集群版),5-Redis2.8单机版,6 – Redis4.0主从版,7 – Redis4.0集群版,8 – Redis5.0主从版,9 – Redis5.0集群版, /// [JsonProperty("TypeId")] public ulong? TypeId{ get; set; } /// /// 实例容量,单位MB, 取值大小以 查询售卖规格接口返回的规格为准 /// [JsonProperty("MemSize")] public ulong? MemSize{ get; set; } /// /// 实例数量,单次购买实例数量以 查询售卖规格接口返回的规格为准 /// [JsonProperty("GoodsNum")] public ulong? GoodsNum{ get; set; } /// /// 购买时长,在创建包年包月实例的时候需要填写,按量计费实例填1即可,单位:月,取值范围 [1,2,3,4,5,6,7,8,9,10,11,12,24,36] /// [JsonProperty("Period")] public ulong? Period{ get; set; } /// /// 付费方式:0-按量计费,1-包年包月。 /// [JsonProperty("BillingMode")] public long? BillingMode{ get; set; } /// /// 实例密码,密码规则:1.长度为8-16个字符;2:至少包含字母、数字和字符!@^*()中的两种(创建免密实例时,可不传入该字段,该字段内容会忽略) /// [JsonProperty("Password")] public string Password{ get; set; } /// /// 私有网络ID,如果不传则默认选择基础网络,请使用私有网络列表查询,如:vpc-sad23jfdfk /// [JsonProperty("VpcId")] public string VpcId{ get; set; } /// /// 基础网络下, subnetId无效; vpc子网下,取值以查询子网列表,如:subnet-fdj24n34j2 /// [JsonProperty("SubnetId")] public string SubnetId{ get; set; } /// /// 项目id,取值以用户账户>用户账户相关接口查询>项目列表返回的projectId为准 /// [JsonProperty("ProjectId")] public long? ProjectId{ get; set; } /// /// 自动续费标识。0 - 默认状态(手动续费);1 - 自动续费;2 - 明确不自动续费 /// [JsonProperty("AutoRenew")] public ulong? AutoRenew{ get; set; } /// /// 安全组id数组 /// [JsonProperty("SecurityGroupIdList")] public string[] SecurityGroupIdList{ get; set; } /// /// 用户自定义的端口 不填则默认为6379,范围[1024,65535] /// [JsonProperty("VPort")] public ulong? VPort{ get; set; } /// /// 实例分片数量,Redis2.8主从版、CKV主从版和Redis2.8单机版、Redis4.0主从版不需要填写 /// [JsonProperty("RedisShardNum")] public long? RedisShardNum{ get; set; } /// /// 实例副本数量,Redis2.8主从版、CKV主从版和Redis2.8单机版不需要填写 /// [JsonProperty("RedisReplicasNum")] public long? RedisReplicasNum{ get; set; } /// /// 是否支持副本只读,Redis2.8主从版、CKV主从版和Redis2.8单机版不需要填写 /// [JsonProperty("ReplicasReadonly")] public bool? ReplicasReadonly{ get; set; } /// /// 实例名称 /// [JsonProperty("InstanceName")] public string InstanceName{ get; set; } /// /// 是否支持免密,true-免密实例,false-非免密实例,默认为非免密实例 /// [JsonProperty("NoAuth")] public bool? NoAuth{ get; set; } /// /// For internal usage only. DO NOT USE IT. /// internal override void ToMap(Dictionary map, string prefix) { this.SetParamSimple(map, prefix + "ZoneId", this.ZoneId); this.SetParamSimple(map, prefix + "TypeId", this.TypeId); this.SetParamSimple(map, prefix + "MemSize", this.MemSize); this.SetParamSimple(map, prefix + "GoodsNum", this.GoodsNum); this.SetParamSimple(map, prefix + "Period", this.Period); this.SetParamSimple(map, prefix + "BillingMode", this.BillingMode); this.SetParamSimple(map, prefix + "Password", this.Password); this.SetParamSimple(map, prefix + "VpcId", this.VpcId); this.SetParamSimple(map, prefix + "SubnetId", this.SubnetId); this.SetParamSimple(map, prefix + "ProjectId", this.ProjectId); this.SetParamSimple(map, prefix + "AutoRenew", this.AutoRenew); this.SetParamArraySimple(map, prefix + "SecurityGroupIdList.", this.SecurityGroupIdList); this.SetParamSimple(map, prefix + "VPort", this.VPort); this.SetParamSimple(map, prefix + "RedisShardNum", this.RedisShardNum); this.SetParamSimple(map, prefix + "RedisReplicasNum", this.RedisReplicasNum); this.SetParamSimple(map, prefix + "ReplicasReadonly", this.ReplicasReadonly); this.SetParamSimple(map, prefix + "InstanceName", this.InstanceName); this.SetParamSimple(map, prefix + "NoAuth", this.NoAuth); } } }