Files

234 lines
9.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.Es.V20180416.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class CreateInstanceRequest : AbstractModel
{
/// <summary>
/// 可用区
/// </summary>
[JsonProperty("Zone")]
public string Zone{ get; set; }
/// <summary>
/// 实例版本(支持"5.6.4"、"6.4.3"、"6.8.2"、"7.5.1"
/// </summary>
[JsonProperty("EsVersion")]
public string EsVersion{ get; set; }
/// <summary>
/// 私有网络ID
/// </summary>
[JsonProperty("VpcId")]
public string VpcId{ get; set; }
/// <summary>
/// 子网ID
/// </summary>
[JsonProperty("SubnetId")]
public string SubnetId{ get; set; }
/// <summary>
/// 访问密码密码需8到16位至少包括两项[a-z,A-Z],[0-9]和[-!@#$%&^*+=_:;,.?]的特殊符号)
/// </summary>
[JsonProperty("Password")]
public string Password{ get; set; }
/// <summary>
/// 实例名称1-50 个英文、汉字、数字、连接线-或下划线_
/// </summary>
[JsonProperty("InstanceName")]
public string InstanceName{ get; set; }
/// <summary>
/// 已废弃请使用NodeInfoList
/// 节点数量2-50个
/// </summary>
[JsonProperty("NodeNum")]
public ulong? NodeNum{ get; set; }
/// <summary>
/// 计费类型<li>PREPAID预付费即包年包月</li><li>POSTPAID_BY_HOUR按小时后付费</li>默认值POSTPAID_BY_HOUR
/// </summary>
[JsonProperty("ChargeType")]
public string ChargeType{ get; set; }
/// <summary>
/// 包年包月购买时长单位由参数TimeUnit决定
/// </summary>
[JsonProperty("ChargePeriod")]
public ulong? ChargePeriod{ get; set; }
/// <summary>
/// 自动续费标识<li>RENEW_FLAG_AUTO自动续费</li><li>RENEW_FLAG_MANUAL不自动续费用户手动续费</li>ChargeType为PREPAID时需要设置如不传递该参数普通用户默认不自动续费SVIP用户自动续费
/// </summary>
[JsonProperty("RenewFlag")]
public string RenewFlag{ get; set; }
/// <summary>
/// 已废弃请使用NodeInfoList
/// 节点规格<li>ES.S1.SMALL21核2G</li><li>ES.S1.MEDIUM42核4G</li><li>ES.S1.MEDIUM82核8G</li><li>ES.S1.LARGE164核16G</li><li>ES.S1.2XLARGE328核32G</li><li>ES.S1.4XLARGE3216核32G</li><li>ES.S1.4XLARGE6416核64G</li>
/// </summary>
[JsonProperty("NodeType")]
public string NodeType{ get; set; }
/// <summary>
/// 已废弃请使用NodeInfoList
/// 节点磁盘类型<li>CLOUD_SSDSSD云硬盘</li><li>CLOUD_PREMIUM高硬能云硬盘</li>默认值CLOUD_SSD
/// </summary>
[JsonProperty("DiskType")]
public string DiskType{ get; set; }
/// <summary>
/// 已废弃请使用NodeInfoList
/// 节点磁盘容量单位GB
/// </summary>
[JsonProperty("DiskSize")]
public ulong? DiskSize{ get; set; }
/// <summary>
/// 计费时长单位ChargeType为PREPAID时需要设置默认值为“m”表示月当前只支持“m”
/// </summary>
[JsonProperty("TimeUnit")]
public string TimeUnit{ get; set; }
/// <summary>
/// 是否自动使用代金券<li>0不自动使用</li><li>1自动使用</li>默认值0
/// </summary>
[JsonProperty("AutoVoucher")]
public long? AutoVoucher{ get; set; }
/// <summary>
/// 代金券ID列表目前仅支持指定一张代金券
/// </summary>
[JsonProperty("VoucherIds")]
public string[] VoucherIds{ get; set; }
/// <summary>
/// 已废弃请使用NodeInfoList
/// 是否创建专用主节点<li>true开启专用主节点</li><li>false不开启专用主节点</li>默认值false
/// </summary>
[JsonProperty("EnableDedicatedMaster")]
public bool? EnableDedicatedMaster{ get; set; }
/// <summary>
/// 已废弃请使用NodeInfoList
/// 专用主节点个数只支持3个和5个EnableDedicatedMaster为true时该值必传
/// </summary>
[JsonProperty("MasterNodeNum")]
public ulong? MasterNodeNum{ get; set; }
/// <summary>
/// 已废弃请使用NodeInfoList
/// 专用主节点类型EnableDedicatedMaster为true时必传<li>ES.S1.SMALL21核2G</li><li>ES.S1.MEDIUM42核4G</li><li>ES.S1.MEDIUM82核8G</li><li>ES.S1.LARGE164核16G</li><li>ES.S1.2XLARGE328核32G</li><li>ES.S1.4XLARGE3216核32G</li><li>ES.S1.4XLARGE6416核64G</li>
/// </summary>
[JsonProperty("MasterNodeType")]
public string MasterNodeType{ get; set; }
/// <summary>
/// 已废弃请使用NodeInfoList
/// 专用主节点磁盘大小单位GB非必传若传递则必须为50暂不支持自定义
/// </summary>
[JsonProperty("MasterNodeDiskSize")]
public ulong? MasterNodeDiskSize{ get; set; }
/// <summary>
/// 集群配置文件中的ClusterName系统默认配置为实例ID暂不支持自定义
/// </summary>
[JsonProperty("ClusterNameInConf")]
public string ClusterNameInConf{ get; set; }
/// <summary>
/// 集群部署方式<li>0单可用区部署</li><li>1多可用区部署</li>默认为0
/// </summary>
[JsonProperty("DeployMode")]
public ulong? DeployMode{ get; set; }
/// <summary>
/// 多可用区部署时可用区的详细信息(DeployMode为1时必传)
/// </summary>
[JsonProperty("MultiZoneInfo")]
public ZoneDetail[] MultiZoneInfo{ get; set; }
/// <summary>
/// License类型<li>oss开源版</li><li>basic基础版</li><li>platinum白金版</li>默认值platinum
/// </summary>
[JsonProperty("LicenseType")]
public string LicenseType{ get; set; }
/// <summary>
/// 节点信息列表, 用于描述集群各类节点的规格信息如节点类型,节点个数,节点规格,磁盘类型,磁盘大小等
/// </summary>
[JsonProperty("NodeInfoList")]
public NodeInfo[] NodeInfoList{ get; set; }
/// <summary>
/// 节点标签信息列表
/// </summary>
[JsonProperty("TagList")]
public TagInfo[] TagList{ get; set; }
/// <summary>
/// 6.8及以上版本基础版是否开启xpack security认证<li>1不开启</li><li>2开启</li>
/// </summary>
[JsonProperty("BasicSecurityType")]
public ulong? BasicSecurityType{ get; set; }
/// <summary>
/// For internal usage only. DO NOT USE IT.
/// </summary>
internal override void ToMap(Dictionary<string, string> map, string prefix)
{
this.SetParamSimple(map, prefix + "Zone", this.Zone);
this.SetParamSimple(map, prefix + "EsVersion", this.EsVersion);
this.SetParamSimple(map, prefix + "VpcId", this.VpcId);
this.SetParamSimple(map, prefix + "SubnetId", this.SubnetId);
this.SetParamSimple(map, prefix + "Password", this.Password);
this.SetParamSimple(map, prefix + "InstanceName", this.InstanceName);
this.SetParamSimple(map, prefix + "NodeNum", this.NodeNum);
this.SetParamSimple(map, prefix + "ChargeType", this.ChargeType);
this.SetParamSimple(map, prefix + "ChargePeriod", this.ChargePeriod);
this.SetParamSimple(map, prefix + "RenewFlag", this.RenewFlag);
this.SetParamSimple(map, prefix + "NodeType", this.NodeType);
this.SetParamSimple(map, prefix + "DiskType", this.DiskType);
this.SetParamSimple(map, prefix + "DiskSize", this.DiskSize);
this.SetParamSimple(map, prefix + "TimeUnit", this.TimeUnit);
this.SetParamSimple(map, prefix + "AutoVoucher", this.AutoVoucher);
this.SetParamArraySimple(map, prefix + "VoucherIds.", this.VoucherIds);
this.SetParamSimple(map, prefix + "EnableDedicatedMaster", this.EnableDedicatedMaster);
this.SetParamSimple(map, prefix + "MasterNodeNum", this.MasterNodeNum);
this.SetParamSimple(map, prefix + "MasterNodeType", this.MasterNodeType);
this.SetParamSimple(map, prefix + "MasterNodeDiskSize", this.MasterNodeDiskSize);
this.SetParamSimple(map, prefix + "ClusterNameInConf", this.ClusterNameInConf);
this.SetParamSimple(map, prefix + "DeployMode", this.DeployMode);
this.SetParamArrayObj(map, prefix + "MultiZoneInfo.", this.MultiZoneInfo);
this.SetParamSimple(map, prefix + "LicenseType", this.LicenseType);
this.SetParamArrayObj(map, prefix + "NodeInfoList.", this.NodeInfoList);
this.SetParamArrayObj(map, prefix + "TagList.", this.TagList);
this.SetParamSimple(map, prefix + "BasicSecurityType", this.BasicSecurityType);
}
}
}