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