/*
* 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.Tke.V20180525.Models
{
using Newtonsoft.Json;
using System.Collections.Generic;
using TencentCloud.Common;
public class ClusterAdvancedSettings : AbstractModel
{
///
/// 是否启用IPVS
///
[JsonProperty("IPVS")]
public bool? IPVS{ get; set; }
///
/// 是否启用集群节点自动扩缩容(创建集群流程不支持开启此功能)
///
[JsonProperty("AsEnabled")]
public bool? AsEnabled{ get; set; }
///
/// 集群使用的runtime类型,包括"docker"和"containerd"两种类型,默认为"docker"
///
[JsonProperty("ContainerRuntime")]
public string ContainerRuntime{ get; set; }
///
/// 集群中节点NodeName类型(包括 hostname,lan-ip两种形式,默认为lan-ip。如果开启了hostname模式,创建节点时需要设置HostName参数,并且InstanceName需要和HostName一致)
///
[JsonProperty("NodeNameType")]
public string NodeNameType{ get; set; }
///
/// 集群自定义参数
///
[JsonProperty("ExtraArgs")]
public ClusterExtraArgs ExtraArgs{ get; set; }
///
/// 集群网络类型(包括GR(全局路由)和VPC-CNI两种模式,默认为GR。
///
[JsonProperty("NetworkType")]
public string NetworkType{ get; set; }
///
/// 集群VPC-CNI模式是否为非固定IP,默认: FALSE 固定IP。
///
[JsonProperty("IsNonStaticIpMode")]
public bool? IsNonStaticIpMode{ get; set; }
///
/// For internal usage only. DO NOT USE IT.
///
internal override void ToMap(Dictionary map, string prefix)
{
this.SetParamSimple(map, prefix + "IPVS", this.IPVS);
this.SetParamSimple(map, prefix + "AsEnabled", this.AsEnabled);
this.SetParamSimple(map, prefix + "ContainerRuntime", this.ContainerRuntime);
this.SetParamSimple(map, prefix + "NodeNameType", this.NodeNameType);
this.SetParamObj(map, prefix + "ExtraArgs.", this.ExtraArgs);
this.SetParamSimple(map, prefix + "NetworkType", this.NetworkType);
this.SetParamSimple(map, prefix + "IsNonStaticIpMode", this.IsNonStaticIpMode);
}
}
}