tencentcloud.MonitorTmpTkeConfig
Explore with Pulumi AI
Provides a resource to create a tke tmpPrometheusConfig
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as tencentcloud from "@pulumi/tencentcloud";
const config = new pulumi.Config();
const defaultInstanceType = config.get("defaultInstanceType") || "SA1.MEDIUM2";
const availabilityZoneFirst = config.get("availabilityZoneFirst") || "ap-guangzhou-3";
const availabilityZoneSecond = config.get("availabilityZoneSecond") || "ap-guangzhou-4";
const exampleClusterCidr = config.get("exampleClusterCidr") || "10.31.0.0/16";
const vpcOne = tencentcloud.getVpcSubnets({
isDefault: true,
availabilityZone: availabilityZoneFirst,
});
const firstVpcId = vpcOne.then(vpcOne => vpcOne.instanceLists?.[0]?.vpcId);
const firstSubnetId = vpcOne.then(vpcOne => vpcOne.instanceLists?.[0]?.subnetId);
const vpcTwo = tencentcloud.getVpcSubnets({
isDefault: true,
availabilityZone: availabilityZoneSecond,
});
const secondVpcId = vpcTwo.then(vpcTwo => vpcTwo.instanceLists?.[0]?.vpcId);
const secondSubnetId = vpcTwo.then(vpcTwo => vpcTwo.instanceLists?.[0]?.subnetId);
const sg = new tencentcloud.SecurityGroup("sg", {});
const sgId = sg.securityGroupId;
const _default = tencentcloud.getImages({
imageTypes: ["PUBLIC_IMAGE"],
imageNameRegex: "Final",
});
const imageId = _default.then(_default => _default.imageId);
const sgRule = new tencentcloud.SecurityGroupLiteRule("sgRule", {
securityGroupId: sg.securityGroupId,
ingresses: [
"ACCEPT#10.0.0.0/16#ALL#ALL",
"ACCEPT#172.16.0.0/22#ALL#ALL",
"DROP#0.0.0.0/0#ALL#ALL",
],
egresses: ["ACCEPT#172.16.0.0/22#ALL#ALL"],
});
const example = new tencentcloud.KubernetesCluster("example", {
vpcId: firstVpcId,
clusterCidr: exampleClusterCidr,
clusterMaxPodNum: 32,
clusterName: "tf_example_cluster",
clusterDesc: "example for tke cluster",
clusterMaxServiceNum: 32,
clusterInternet: false,
clusterInternetSecurityGroup: sgId,
clusterVersion: "1.22.5",
clusterDeployType: "MANAGED_CLUSTER",
workerConfigs: [
{
count: 1,
availabilityZone: availabilityZoneFirst,
instanceType: defaultInstanceType,
systemDiskType: "CLOUD_SSD",
systemDiskSize: 60,
internetChargeType: "TRAFFIC_POSTPAID_BY_HOUR",
internetMaxBandwidthOut: 100,
publicIpAssigned: true,
subnetId: firstSubnetId,
imgId: imageId,
dataDisks: [{
diskType: "CLOUD_PREMIUM",
diskSize: 50,
}],
enhancedSecurityService: false,
enhancedMonitorService: false,
userData: "dGVzdA==",
password: "ZZXXccvv1212",
},
{
count: 1,
availabilityZone: availabilityZoneSecond,
instanceType: defaultInstanceType,
systemDiskType: "CLOUD_SSD",
systemDiskSize: 60,
internetChargeType: "TRAFFIC_POSTPAID_BY_HOUR",
internetMaxBandwidthOut: 100,
publicIpAssigned: true,
subnetId: secondSubnetId,
dataDisks: [{
diskType: "CLOUD_PREMIUM",
diskSize: 50,
}],
enhancedSecurityService: false,
enhancedMonitorService: false,
userData: "dGVzdA==",
camRoleName: "CVM_QcsRole",
password: "ZZXXccvv1212",
},
],
labels: {
test1: "test1",
test2: "test2",
},
});
const zone = config.get("zone") || "ap-guangzhou";
const clusterType = config.get("clusterType") || "tke";
const fooMonitorTmpInstance = new tencentcloud.MonitorTmpInstance("fooMonitorTmpInstance", {
instanceName: "tf-tmp-instance",
vpcId: firstVpcId,
subnetId: firstSubnetId,
dataRetentionTime: 30,
zone: availabilityZoneSecond,
tags: {
createdBy: "terraform",
},
});
// tmp tke bind
const fooMonitorTmpTkeClusterAgent = new tencentcloud.MonitorTmpTkeClusterAgent("fooMonitorTmpTkeClusterAgent", {
instanceId: fooMonitorTmpInstance.monitorTmpInstanceId,
agents: {
region: zone,
clusterType: clusterType,
clusterId: example.kubernetesClusterId,
enableExternal: false,
},
});
const fooMonitorTmpTkeConfig = new tencentcloud.MonitorTmpTkeConfig("fooMonitorTmpTkeConfig", {
instanceId: fooMonitorTmpInstance.monitorTmpInstanceId,
clusterType: clusterType,
clusterId: example.kubernetesClusterId,
rawJobs: [{
name: "raw_jobs_001",
config: "your config for raw_jobs_001\n",
}],
serviceMonitors: [{
name: "kube-system/service-monitor-001",
config: `apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: service-monitor-001
namespace: kube-system
`,
}],
podMonitors: [{
name: "mynamespace/pod-monitor-001",
config: `apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
name: pod-monitor-001
namespace: mynamespace
`,
}],
});
import pulumi
import pulumi_tencentcloud as tencentcloud
config = pulumi.Config()
default_instance_type = config.get("defaultInstanceType")
if default_instance_type is None:
default_instance_type = "SA1.MEDIUM2"
availability_zone_first = config.get("availabilityZoneFirst")
if availability_zone_first is None:
availability_zone_first = "ap-guangzhou-3"
availability_zone_second = config.get("availabilityZoneSecond")
if availability_zone_second is None:
availability_zone_second = "ap-guangzhou-4"
example_cluster_cidr = config.get("exampleClusterCidr")
if example_cluster_cidr is None:
example_cluster_cidr = "10.31.0.0/16"
vpc_one = tencentcloud.get_vpc_subnets(is_default=True,
availability_zone=availability_zone_first)
first_vpc_id = vpc_one.instance_lists[0].vpc_id
first_subnet_id = vpc_one.instance_lists[0].subnet_id
vpc_two = tencentcloud.get_vpc_subnets(is_default=True,
availability_zone=availability_zone_second)
second_vpc_id = vpc_two.instance_lists[0].vpc_id
second_subnet_id = vpc_two.instance_lists[0].subnet_id
sg = tencentcloud.SecurityGroup("sg")
sg_id = sg.security_group_id
default = tencentcloud.get_images(image_types=["PUBLIC_IMAGE"],
image_name_regex="Final")
image_id = default.image_id
sg_rule = tencentcloud.SecurityGroupLiteRule("sgRule",
security_group_id=sg.security_group_id,
ingresses=[
"ACCEPT#10.0.0.0/16#ALL#ALL",
"ACCEPT#172.16.0.0/22#ALL#ALL",
"DROP#0.0.0.0/0#ALL#ALL",
],
egresses=["ACCEPT#172.16.0.0/22#ALL#ALL"])
example = tencentcloud.KubernetesCluster("example",
vpc_id=first_vpc_id,
cluster_cidr=example_cluster_cidr,
cluster_max_pod_num=32,
cluster_name="tf_example_cluster",
cluster_desc="example for tke cluster",
cluster_max_service_num=32,
cluster_internet=False,
cluster_internet_security_group=sg_id,
cluster_version="1.22.5",
cluster_deploy_type="MANAGED_CLUSTER",
worker_configs=[
{
"count": 1,
"availability_zone": availability_zone_first,
"instance_type": default_instance_type,
"system_disk_type": "CLOUD_SSD",
"system_disk_size": 60,
"internet_charge_type": "TRAFFIC_POSTPAID_BY_HOUR",
"internet_max_bandwidth_out": 100,
"public_ip_assigned": True,
"subnet_id": first_subnet_id,
"img_id": image_id,
"data_disks": [{
"disk_type": "CLOUD_PREMIUM",
"disk_size": 50,
}],
"enhanced_security_service": False,
"enhanced_monitor_service": False,
"user_data": "dGVzdA==",
"password": "ZZXXccvv1212",
},
{
"count": 1,
"availability_zone": availability_zone_second,
"instance_type": default_instance_type,
"system_disk_type": "CLOUD_SSD",
"system_disk_size": 60,
"internet_charge_type": "TRAFFIC_POSTPAID_BY_HOUR",
"internet_max_bandwidth_out": 100,
"public_ip_assigned": True,
"subnet_id": second_subnet_id,
"data_disks": [{
"disk_type": "CLOUD_PREMIUM",
"disk_size": 50,
}],
"enhanced_security_service": False,
"enhanced_monitor_service": False,
"user_data": "dGVzdA==",
"cam_role_name": "CVM_QcsRole",
"password": "ZZXXccvv1212",
},
],
labels={
"test1": "test1",
"test2": "test2",
})
zone = config.get("zone")
if zone is None:
zone = "ap-guangzhou"
cluster_type = config.get("clusterType")
if cluster_type is None:
cluster_type = "tke"
foo_monitor_tmp_instance = tencentcloud.MonitorTmpInstance("fooMonitorTmpInstance",
instance_name="tf-tmp-instance",
vpc_id=first_vpc_id,
subnet_id=first_subnet_id,
data_retention_time=30,
zone=availability_zone_second,
tags={
"createdBy": "terraform",
})
# tmp tke bind
foo_monitor_tmp_tke_cluster_agent = tencentcloud.MonitorTmpTkeClusterAgent("fooMonitorTmpTkeClusterAgent",
instance_id=foo_monitor_tmp_instance.monitor_tmp_instance_id,
agents={
"region": zone,
"cluster_type": cluster_type,
"cluster_id": example.kubernetes_cluster_id,
"enable_external": False,
})
foo_monitor_tmp_tke_config = tencentcloud.MonitorTmpTkeConfig("fooMonitorTmpTkeConfig",
instance_id=foo_monitor_tmp_instance.monitor_tmp_instance_id,
cluster_type=cluster_type,
cluster_id=example.kubernetes_cluster_id,
raw_jobs=[{
"name": "raw_jobs_001",
"config": "your config for raw_jobs_001\n",
}],
service_monitors=[{
"name": "kube-system/service-monitor-001",
"config": """apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: service-monitor-001
namespace: kube-system
""",
}],
pod_monitors=[{
"name": "mynamespace/pod-monitor-001",
"config": """apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
name: pod-monitor-001
namespace: mynamespace
""",
}])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/tencentcloud/tencentcloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
defaultInstanceType := "SA1.MEDIUM2"
if param := cfg.Get("defaultInstanceType"); param != "" {
defaultInstanceType = param
}
availabilityZoneFirst := "ap-guangzhou-3"
if param := cfg.Get("availabilityZoneFirst"); param != "" {
availabilityZoneFirst = param
}
availabilityZoneSecond := "ap-guangzhou-4"
if param := cfg.Get("availabilityZoneSecond"); param != "" {
availabilityZoneSecond = param
}
exampleClusterCidr := "10.31.0.0/16"
if param := cfg.Get("exampleClusterCidr"); param != "" {
exampleClusterCidr = param
}
vpcOne, err := tencentcloud.GetVpcSubnets(ctx, &tencentcloud.GetVpcSubnetsArgs{
IsDefault: pulumi.BoolRef(true),
AvailabilityZone: pulumi.StringRef(availabilityZoneFirst),
}, nil)
if err != nil {
return err
}
firstVpcId := vpcOne.InstanceLists[0].VpcId
firstSubnetId := vpcOne.InstanceLists[0].SubnetId
vpcTwo, err := tencentcloud.GetVpcSubnets(ctx, &tencentcloud.GetVpcSubnetsArgs{
IsDefault: pulumi.BoolRef(true),
AvailabilityZone: pulumi.StringRef(availabilityZoneSecond),
}, nil)
if err != nil {
return err
}
_ := vpcTwo.InstanceLists[0].VpcId
secondSubnetId := vpcTwo.InstanceLists[0].SubnetId
sg, err := tencentcloud.NewSecurityGroup(ctx, "sg", nil)
if err != nil {
return err
}
sgId := sg.SecurityGroupId
_default, err := tencentcloud.GetImages(ctx, &tencentcloud.GetImagesArgs{
ImageTypes: []string{
"PUBLIC_IMAGE",
},
ImageNameRegex: pulumi.StringRef("Final"),
}, nil)
if err != nil {
return err
}
imageId := _default.ImageId
_, err = tencentcloud.NewSecurityGroupLiteRule(ctx, "sgRule", &tencentcloud.SecurityGroupLiteRuleArgs{
SecurityGroupId: sg.SecurityGroupId,
Ingresses: pulumi.StringArray{
pulumi.String("ACCEPT#10.0.0.0/16#ALL#ALL"),
pulumi.String("ACCEPT#172.16.0.0/22#ALL#ALL"),
pulumi.String("DROP#0.0.0.0/0#ALL#ALL"),
},
Egresses: pulumi.StringArray{
pulumi.String("ACCEPT#172.16.0.0/22#ALL#ALL"),
},
})
if err != nil {
return err
}
example, err := tencentcloud.NewKubernetesCluster(ctx, "example", &tencentcloud.KubernetesClusterArgs{
VpcId: pulumi.String(firstVpcId),
ClusterCidr: pulumi.String(exampleClusterCidr),
ClusterMaxPodNum: pulumi.Float64(32),
ClusterName: pulumi.String("tf_example_cluster"),
ClusterDesc: pulumi.String("example for tke cluster"),
ClusterMaxServiceNum: pulumi.Float64(32),
ClusterInternet: pulumi.Bool(false),
ClusterInternetSecurityGroup: pulumi.String(sgId),
ClusterVersion: pulumi.String("1.22.5"),
ClusterDeployType: pulumi.String("MANAGED_CLUSTER"),
WorkerConfigs: tencentcloud.KubernetesClusterWorkerConfigArray{
&tencentcloud.KubernetesClusterWorkerConfigArgs{
Count: pulumi.Float64(1),
AvailabilityZone: pulumi.String(availabilityZoneFirst),
InstanceType: pulumi.String(defaultInstanceType),
SystemDiskType: pulumi.String("CLOUD_SSD"),
SystemDiskSize: pulumi.Float64(60),
InternetChargeType: pulumi.String("TRAFFIC_POSTPAID_BY_HOUR"),
InternetMaxBandwidthOut: pulumi.Float64(100),
PublicIpAssigned: pulumi.Bool(true),
SubnetId: pulumi.String(firstSubnetId),
ImgId: pulumi.String(imageId),
DataDisks: tencentcloud.KubernetesClusterWorkerConfigDataDiskArray{
&tencentcloud.KubernetesClusterWorkerConfigDataDiskArgs{
DiskType: pulumi.String("CLOUD_PREMIUM"),
DiskSize: pulumi.Float64(50),
},
},
EnhancedSecurityService: pulumi.Bool(false),
EnhancedMonitorService: pulumi.Bool(false),
UserData: pulumi.String("dGVzdA=="),
Password: pulumi.String("ZZXXccvv1212"),
},
&tencentcloud.KubernetesClusterWorkerConfigArgs{
Count: pulumi.Float64(1),
AvailabilityZone: pulumi.String(availabilityZoneSecond),
InstanceType: pulumi.String(defaultInstanceType),
SystemDiskType: pulumi.String("CLOUD_SSD"),
SystemDiskSize: pulumi.Float64(60),
InternetChargeType: pulumi.String("TRAFFIC_POSTPAID_BY_HOUR"),
InternetMaxBandwidthOut: pulumi.Float64(100),
PublicIpAssigned: pulumi.Bool(true),
SubnetId: pulumi.String(secondSubnetId),
DataDisks: tencentcloud.KubernetesClusterWorkerConfigDataDiskArray{
&tencentcloud.KubernetesClusterWorkerConfigDataDiskArgs{
DiskType: pulumi.String("CLOUD_PREMIUM"),
DiskSize: pulumi.Float64(50),
},
},
EnhancedSecurityService: pulumi.Bool(false),
EnhancedMonitorService: pulumi.Bool(false),
UserData: pulumi.String("dGVzdA=="),
CamRoleName: pulumi.String("CVM_QcsRole"),
Password: pulumi.String("ZZXXccvv1212"),
},
},
Labels: pulumi.StringMap{
"test1": pulumi.String("test1"),
"test2": pulumi.String("test2"),
},
})
if err != nil {
return err
}
zone := "ap-guangzhou"
if param := cfg.Get("zone"); param != "" {
zone = param
}
clusterType := "tke"
if param := cfg.Get("clusterType"); param != "" {
clusterType = param
}
fooMonitorTmpInstance, err := tencentcloud.NewMonitorTmpInstance(ctx, "fooMonitorTmpInstance", &tencentcloud.MonitorTmpInstanceArgs{
InstanceName: pulumi.String("tf-tmp-instance"),
VpcId: pulumi.String(firstVpcId),
SubnetId: pulumi.String(firstSubnetId),
DataRetentionTime: pulumi.Float64(30),
Zone: pulumi.String(availabilityZoneSecond),
Tags: pulumi.StringMap{
"createdBy": pulumi.String("terraform"),
},
})
if err != nil {
return err
}
// tmp tke bind
_, err = tencentcloud.NewMonitorTmpTkeClusterAgent(ctx, "fooMonitorTmpTkeClusterAgent", &tencentcloud.MonitorTmpTkeClusterAgentArgs{
InstanceId: fooMonitorTmpInstance.MonitorTmpInstanceId,
Agents: &tencentcloud.MonitorTmpTkeClusterAgentAgentsArgs{
Region: pulumi.String(zone),
ClusterType: pulumi.String(clusterType),
ClusterId: example.KubernetesClusterId,
EnableExternal: pulumi.Bool(false),
},
})
if err != nil {
return err
}
_, err = tencentcloud.NewMonitorTmpTkeConfig(ctx, "fooMonitorTmpTkeConfig", &tencentcloud.MonitorTmpTkeConfigArgs{
InstanceId: fooMonitorTmpInstance.MonitorTmpInstanceId,
ClusterType: pulumi.String(clusterType),
ClusterId: example.KubernetesClusterId,
RawJobs: tencentcloud.MonitorTmpTkeConfigRawJobArray{
&tencentcloud.MonitorTmpTkeConfigRawJobArgs{
Name: pulumi.String("raw_jobs_001"),
Config: pulumi.String("your config for raw_jobs_001\n"),
},
},
ServiceMonitors: tencentcloud.MonitorTmpTkeConfigServiceMonitorArray{
&tencentcloud.MonitorTmpTkeConfigServiceMonitorArgs{
Name: pulumi.String("kube-system/service-monitor-001"),
Config: pulumi.String(`apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: service-monitor-001
namespace: kube-system
`),
},
},
PodMonitors: tencentcloud.MonitorTmpTkeConfigPodMonitorArray{
&tencentcloud.MonitorTmpTkeConfigPodMonitorArgs{
Name: pulumi.String("mynamespace/pod-monitor-001"),
Config: pulumi.String(`apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
name: pod-monitor-001
namespace: mynamespace
`),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Tencentcloud = Pulumi.Tencentcloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var defaultInstanceType = config.Get("defaultInstanceType") ?? "SA1.MEDIUM2";
var availabilityZoneFirst = config.Get("availabilityZoneFirst") ?? "ap-guangzhou-3";
var availabilityZoneSecond = config.Get("availabilityZoneSecond") ?? "ap-guangzhou-4";
var exampleClusterCidr = config.Get("exampleClusterCidr") ?? "10.31.0.0/16";
var vpcOne = Tencentcloud.GetVpcSubnets.Invoke(new()
{
IsDefault = true,
AvailabilityZone = availabilityZoneFirst,
});
var firstVpcId = vpcOne.Apply(getVpcSubnetsResult => getVpcSubnetsResult.InstanceLists[0]?.VpcId);
var firstSubnetId = vpcOne.Apply(getVpcSubnetsResult => getVpcSubnetsResult.InstanceLists[0]?.SubnetId);
var vpcTwo = Tencentcloud.GetVpcSubnets.Invoke(new()
{
IsDefault = true,
AvailabilityZone = availabilityZoneSecond,
});
var secondVpcId = vpcTwo.Apply(getVpcSubnetsResult => getVpcSubnetsResult.InstanceLists[0]?.VpcId);
var secondSubnetId = vpcTwo.Apply(getVpcSubnetsResult => getVpcSubnetsResult.InstanceLists[0]?.SubnetId);
var sg = new Tencentcloud.SecurityGroup("sg");
var sgId = sg.SecurityGroupId;
var @default = Tencentcloud.GetImages.Invoke(new()
{
ImageTypes = new[]
{
"PUBLIC_IMAGE",
},
ImageNameRegex = "Final",
});
var imageId = @default.Apply(@default => @default.Apply(getImagesResult => getImagesResult.ImageId));
var sgRule = new Tencentcloud.SecurityGroupLiteRule("sgRule", new()
{
SecurityGroupId = sg.SecurityGroupId,
Ingresses = new[]
{
"ACCEPT#10.0.0.0/16#ALL#ALL",
"ACCEPT#172.16.0.0/22#ALL#ALL",
"DROP#0.0.0.0/0#ALL#ALL",
},
Egresses = new[]
{
"ACCEPT#172.16.0.0/22#ALL#ALL",
},
});
var example = new Tencentcloud.KubernetesCluster("example", new()
{
VpcId = firstVpcId,
ClusterCidr = exampleClusterCidr,
ClusterMaxPodNum = 32,
ClusterName = "tf_example_cluster",
ClusterDesc = "example for tke cluster",
ClusterMaxServiceNum = 32,
ClusterInternet = false,
ClusterInternetSecurityGroup = sgId,
ClusterVersion = "1.22.5",
ClusterDeployType = "MANAGED_CLUSTER",
WorkerConfigs = new[]
{
new Tencentcloud.Inputs.KubernetesClusterWorkerConfigArgs
{
Count = 1,
AvailabilityZone = availabilityZoneFirst,
InstanceType = defaultInstanceType,
SystemDiskType = "CLOUD_SSD",
SystemDiskSize = 60,
InternetChargeType = "TRAFFIC_POSTPAID_BY_HOUR",
InternetMaxBandwidthOut = 100,
PublicIpAssigned = true,
SubnetId = firstSubnetId,
ImgId = imageId,
DataDisks = new[]
{
new Tencentcloud.Inputs.KubernetesClusterWorkerConfigDataDiskArgs
{
DiskType = "CLOUD_PREMIUM",
DiskSize = 50,
},
},
EnhancedSecurityService = false,
EnhancedMonitorService = false,
UserData = "dGVzdA==",
Password = "ZZXXccvv1212",
},
new Tencentcloud.Inputs.KubernetesClusterWorkerConfigArgs
{
Count = 1,
AvailabilityZone = availabilityZoneSecond,
InstanceType = defaultInstanceType,
SystemDiskType = "CLOUD_SSD",
SystemDiskSize = 60,
InternetChargeType = "TRAFFIC_POSTPAID_BY_HOUR",
InternetMaxBandwidthOut = 100,
PublicIpAssigned = true,
SubnetId = secondSubnetId,
DataDisks = new[]
{
new Tencentcloud.Inputs.KubernetesClusterWorkerConfigDataDiskArgs
{
DiskType = "CLOUD_PREMIUM",
DiskSize = 50,
},
},
EnhancedSecurityService = false,
EnhancedMonitorService = false,
UserData = "dGVzdA==",
CamRoleName = "CVM_QcsRole",
Password = "ZZXXccvv1212",
},
},
Labels =
{
{ "test1", "test1" },
{ "test2", "test2" },
},
});
var zone = config.Get("zone") ?? "ap-guangzhou";
var clusterType = config.Get("clusterType") ?? "tke";
var fooMonitorTmpInstance = new Tencentcloud.MonitorTmpInstance("fooMonitorTmpInstance", new()
{
InstanceName = "tf-tmp-instance",
VpcId = firstVpcId,
SubnetId = firstSubnetId,
DataRetentionTime = 30,
Zone = availabilityZoneSecond,
Tags =
{
{ "createdBy", "terraform" },
},
});
// tmp tke bind
var fooMonitorTmpTkeClusterAgent = new Tencentcloud.MonitorTmpTkeClusterAgent("fooMonitorTmpTkeClusterAgent", new()
{
InstanceId = fooMonitorTmpInstance.MonitorTmpInstanceId,
Agents = new Tencentcloud.Inputs.MonitorTmpTkeClusterAgentAgentsArgs
{
Region = zone,
ClusterType = clusterType,
ClusterId = example.KubernetesClusterId,
EnableExternal = false,
},
});
var fooMonitorTmpTkeConfig = new Tencentcloud.MonitorTmpTkeConfig("fooMonitorTmpTkeConfig", new()
{
InstanceId = fooMonitorTmpInstance.MonitorTmpInstanceId,
ClusterType = clusterType,
ClusterId = example.KubernetesClusterId,
RawJobs = new[]
{
new Tencentcloud.Inputs.MonitorTmpTkeConfigRawJobArgs
{
Name = "raw_jobs_001",
Config = @"your config for raw_jobs_001
",
},
},
ServiceMonitors = new[]
{
new Tencentcloud.Inputs.MonitorTmpTkeConfigServiceMonitorArgs
{
Name = "kube-system/service-monitor-001",
Config = @"apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: service-monitor-001
namespace: kube-system
",
},
},
PodMonitors = new[]
{
new Tencentcloud.Inputs.MonitorTmpTkeConfigPodMonitorArgs
{
Name = "mynamespace/pod-monitor-001",
Config = @"apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
name: pod-monitor-001
namespace: mynamespace
",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.tencentcloud.TencentcloudFunctions;
import com.pulumi.tencentcloud.inputs.GetVpcSubnetsArgs;
import com.pulumi.tencentcloud.SecurityGroup;
import com.pulumi.tencentcloud.inputs.GetImagesArgs;
import com.pulumi.tencentcloud.SecurityGroupLiteRule;
import com.pulumi.tencentcloud.SecurityGroupLiteRuleArgs;
import com.pulumi.tencentcloud.KubernetesCluster;
import com.pulumi.tencentcloud.KubernetesClusterArgs;
import com.pulumi.tencentcloud.inputs.KubernetesClusterWorkerConfigArgs;
import com.pulumi.tencentcloud.MonitorTmpInstance;
import com.pulumi.tencentcloud.MonitorTmpInstanceArgs;
import com.pulumi.tencentcloud.MonitorTmpTkeClusterAgent;
import com.pulumi.tencentcloud.MonitorTmpTkeClusterAgentArgs;
import com.pulumi.tencentcloud.inputs.MonitorTmpTkeClusterAgentAgentsArgs;
import com.pulumi.tencentcloud.MonitorTmpTkeConfig;
import com.pulumi.tencentcloud.MonitorTmpTkeConfigArgs;
import com.pulumi.tencentcloud.inputs.MonitorTmpTkeConfigRawJobArgs;
import com.pulumi.tencentcloud.inputs.MonitorTmpTkeConfigServiceMonitorArgs;
import com.pulumi.tencentcloud.inputs.MonitorTmpTkeConfigPodMonitorArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var defaultInstanceType = config.get("defaultInstanceType").orElse("SA1.MEDIUM2");
final var availabilityZoneFirst = config.get("availabilityZoneFirst").orElse("ap-guangzhou-3");
final var availabilityZoneSecond = config.get("availabilityZoneSecond").orElse("ap-guangzhou-4");
final var exampleClusterCidr = config.get("exampleClusterCidr").orElse("10.31.0.0/16");
final var vpcOne = TencentcloudFunctions.getVpcSubnets(GetVpcSubnetsArgs.builder()
.isDefault(true)
.availabilityZone(availabilityZoneFirst)
.build());
final var firstVpcId = vpcOne.applyValue(getVpcSubnetsResult -> getVpcSubnetsResult.instanceLists()[0].vpcId());
final var firstSubnetId = vpcOne.applyValue(getVpcSubnetsResult -> getVpcSubnetsResult.instanceLists()[0].subnetId());
final var vpcTwo = TencentcloudFunctions.getVpcSubnets(GetVpcSubnetsArgs.builder()
.isDefault(true)
.availabilityZone(availabilityZoneSecond)
.build());
final var secondVpcId = vpcTwo.applyValue(getVpcSubnetsResult -> getVpcSubnetsResult.instanceLists()[0].vpcId());
final var secondSubnetId = vpcTwo.applyValue(getVpcSubnetsResult -> getVpcSubnetsResult.instanceLists()[0].subnetId());
var sg = new SecurityGroup("sg");
final var sgId = sg.securityGroupId();
final var default = TencentcloudFunctions.getImages(GetImagesArgs.builder()
.imageTypes("PUBLIC_IMAGE")
.imageNameRegex("Final")
.build());
final var imageId = default_.imageId();
var sgRule = new SecurityGroupLiteRule("sgRule", SecurityGroupLiteRuleArgs.builder()
.securityGroupId(sg.securityGroupId())
.ingresses(
"ACCEPT#10.0.0.0/16#ALL#ALL",
"ACCEPT#172.16.0.0/22#ALL#ALL",
"DROP#0.0.0.0/0#ALL#ALL")
.egresses("ACCEPT#172.16.0.0/22#ALL#ALL")
.build());
var example = new KubernetesCluster("example", KubernetesClusterArgs.builder()
.vpcId(firstVpcId)
.clusterCidr(exampleClusterCidr)
.clusterMaxPodNum(32)
.clusterName("tf_example_cluster")
.clusterDesc("example for tke cluster")
.clusterMaxServiceNum(32)
.clusterInternet(false)
.clusterInternetSecurityGroup(sgId)
.clusterVersion("1.22.5")
.clusterDeployType("MANAGED_CLUSTER")
.workerConfigs(
KubernetesClusterWorkerConfigArgs.builder()
.count(1)
.availabilityZone(availabilityZoneFirst)
.instanceType(defaultInstanceType)
.systemDiskType("CLOUD_SSD")
.systemDiskSize(60)
.internetChargeType("TRAFFIC_POSTPAID_BY_HOUR")
.internetMaxBandwidthOut(100)
.publicIpAssigned(true)
.subnetId(firstSubnetId)
.imgId(imageId)
.dataDisks(KubernetesClusterWorkerConfigDataDiskArgs.builder()
.diskType("CLOUD_PREMIUM")
.diskSize(50)
.build())
.enhancedSecurityService(false)
.enhancedMonitorService(false)
.userData("dGVzdA==")
.password("ZZXXccvv1212")
.build(),
KubernetesClusterWorkerConfigArgs.builder()
.count(1)
.availabilityZone(availabilityZoneSecond)
.instanceType(defaultInstanceType)
.systemDiskType("CLOUD_SSD")
.systemDiskSize(60)
.internetChargeType("TRAFFIC_POSTPAID_BY_HOUR")
.internetMaxBandwidthOut(100)
.publicIpAssigned(true)
.subnetId(secondSubnetId)
.dataDisks(KubernetesClusterWorkerConfigDataDiskArgs.builder()
.diskType("CLOUD_PREMIUM")
.diskSize(50)
.build())
.enhancedSecurityService(false)
.enhancedMonitorService(false)
.userData("dGVzdA==")
.camRoleName("CVM_QcsRole")
.password("ZZXXccvv1212")
.build())
.labels(Map.ofEntries(
Map.entry("test1", "test1"),
Map.entry("test2", "test2")
))
.build());
final var zone = config.get("zone").orElse("ap-guangzhou");
final var clusterType = config.get("clusterType").orElse("tke");
var fooMonitorTmpInstance = new MonitorTmpInstance("fooMonitorTmpInstance", MonitorTmpInstanceArgs.builder()
.instanceName("tf-tmp-instance")
.vpcId(firstVpcId)
.subnetId(firstSubnetId)
.dataRetentionTime(30)
.zone(availabilityZoneSecond)
.tags(Map.of("createdBy", "terraform"))
.build());
// tmp tke bind
var fooMonitorTmpTkeClusterAgent = new MonitorTmpTkeClusterAgent("fooMonitorTmpTkeClusterAgent", MonitorTmpTkeClusterAgentArgs.builder()
.instanceId(fooMonitorTmpInstance.monitorTmpInstanceId())
.agents(MonitorTmpTkeClusterAgentAgentsArgs.builder()
.region(zone)
.clusterType(clusterType)
.clusterId(example.kubernetesClusterId())
.enableExternal(false)
.build())
.build());
var fooMonitorTmpTkeConfig = new MonitorTmpTkeConfig("fooMonitorTmpTkeConfig", MonitorTmpTkeConfigArgs.builder()
.instanceId(fooMonitorTmpInstance.monitorTmpInstanceId())
.clusterType(clusterType)
.clusterId(example.kubernetesClusterId())
.rawJobs(MonitorTmpTkeConfigRawJobArgs.builder()
.name("raw_jobs_001")
.config("""
your config for raw_jobs_001
""")
.build())
.serviceMonitors(MonitorTmpTkeConfigServiceMonitorArgs.builder()
.name("kube-system/service-monitor-001")
.config("""
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: service-monitor-001
namespace: kube-system
""")
.build())
.podMonitors(MonitorTmpTkeConfigPodMonitorArgs.builder()
.name("mynamespace/pod-monitor-001")
.config("""
apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
name: pod-monitor-001
namespace: mynamespace
""")
.build())
.build());
}
}
configuration:
defaultInstanceType:
type: string
default: SA1.MEDIUM2
availabilityZoneFirst:
type: string
default: ap-guangzhou-3
availabilityZoneSecond:
type: string
default: ap-guangzhou-4
exampleClusterCidr:
type: string
default: 10.31.0.0/16
# create monitor
zone:
type: string
default: ap-guangzhou
clusterType:
type: string
default: tke
resources:
sg:
type: tencentcloud:SecurityGroup
sgRule:
type: tencentcloud:SecurityGroupLiteRule
properties:
securityGroupId: ${sg.securityGroupId}
ingresses:
- ACCEPT#10.0.0.0/16#ALL#ALL
- ACCEPT#172.16.0.0/22#ALL#ALL
- DROP#0.0.0.0/0#ALL#ALL
egresses:
- ACCEPT#172.16.0.0/22#ALL#ALL
example:
type: tencentcloud:KubernetesCluster
properties:
vpcId: ${firstVpcId}
clusterCidr: ${exampleClusterCidr}
clusterMaxPodNum: 32
clusterName: tf_example_cluster
clusterDesc: example for tke cluster
clusterMaxServiceNum: 32
clusterInternet: false
clusterInternetSecurityGroup: ${sgId}
clusterVersion: 1.22.5
clusterDeployType: MANAGED_CLUSTER
workerConfigs:
- count: 1
availabilityZone: ${availabilityZoneFirst}
instanceType: ${defaultInstanceType}
systemDiskType: CLOUD_SSD
systemDiskSize: 60
internetChargeType: TRAFFIC_POSTPAID_BY_HOUR
internetMaxBandwidthOut: 100
publicIpAssigned: true
subnetId: ${firstSubnetId}
imgId: ${imageId}
dataDisks:
- diskType: CLOUD_PREMIUM
diskSize: 50
enhancedSecurityService: false
enhancedMonitorService: false
userData: dGVzdA==
password: ZZXXccvv1212
- count: 1
availabilityZone: ${availabilityZoneSecond}
instanceType: ${defaultInstanceType}
systemDiskType: CLOUD_SSD
systemDiskSize: 60
internetChargeType: TRAFFIC_POSTPAID_BY_HOUR
internetMaxBandwidthOut: 100
publicIpAssigned: true
subnetId: ${secondSubnetId}
dataDisks:
- diskType: CLOUD_PREMIUM
diskSize: 50
enhancedSecurityService: false
enhancedMonitorService: false
userData: dGVzdA==
camRoleName: CVM_QcsRole
password: ZZXXccvv1212
labels:
test1: test1
test2: test2
fooMonitorTmpInstance:
type: tencentcloud:MonitorTmpInstance
properties:
instanceName: tf-tmp-instance
vpcId: ${firstVpcId}
subnetId: ${firstSubnetId}
dataRetentionTime: 30
zone: ${availabilityZoneSecond}
tags:
createdBy: terraform
# tmp tke bind
fooMonitorTmpTkeClusterAgent:
type: tencentcloud:MonitorTmpTkeClusterAgent
properties:
instanceId: ${fooMonitorTmpInstance.monitorTmpInstanceId}
agents:
region: ${zone}
clusterType: ${clusterType}
clusterId: ${example.kubernetesClusterId}
enableExternal: false
fooMonitorTmpTkeConfig:
type: tencentcloud:MonitorTmpTkeConfig
properties:
instanceId: ${fooMonitorTmpInstance.monitorTmpInstanceId}
clusterType: ${clusterType}
clusterId: ${example.kubernetesClusterId}
rawJobs:
- name: raw_jobs_001
config: |
your config for raw_jobs_001
serviceMonitors:
- name: kube-system/service-monitor-001
config: |
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: service-monitor-001
namespace: kube-system
podMonitors:
- name: mynamespace/pod-monitor-001
config: |
apiVersion: monitoring.coreos.com/v1
kind: PodMonitor
metadata:
name: pod-monitor-001
namespace: mynamespace
variables:
firstVpcId: ${vpcOne.instanceLists[0].vpcId}
firstSubnetId: ${vpcOne.instanceLists[0].subnetId}
secondVpcId: ${vpcTwo.instanceLists[0].vpcId}
secondSubnetId: ${vpcTwo.instanceLists[0].subnetId}
sgId: ${sg.securityGroupId}
imageId: ${default.imageId}
vpcOne:
fn::invoke:
function: tencentcloud:getVpcSubnets
arguments:
isDefault: true
availabilityZone: ${availabilityZoneFirst}
vpcTwo:
fn::invoke:
function: tencentcloud:getVpcSubnets
arguments:
isDefault: true
availabilityZone: ${availabilityZoneSecond}
default:
fn::invoke:
function: tencentcloud:getImages
arguments:
imageTypes:
- PUBLIC_IMAGE
imageNameRegex: Final
Create MonitorTmpTkeConfig Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new MonitorTmpTkeConfig(name: string, args: MonitorTmpTkeConfigArgs, opts?: CustomResourceOptions);
@overload
def MonitorTmpTkeConfig(resource_name: str,
args: MonitorTmpTkeConfigArgs,
opts: Optional[ResourceOptions] = None)
@overload
def MonitorTmpTkeConfig(resource_name: str,
opts: Optional[ResourceOptions] = None,
cluster_id: Optional[str] = None,
cluster_type: Optional[str] = None,
instance_id: Optional[str] = None,
monitor_tmp_tke_config_id: Optional[str] = None,
pod_monitors: Optional[Sequence[MonitorTmpTkeConfigPodMonitorArgs]] = None,
raw_jobs: Optional[Sequence[MonitorTmpTkeConfigRawJobArgs]] = None,
service_monitors: Optional[Sequence[MonitorTmpTkeConfigServiceMonitorArgs]] = None)
func NewMonitorTmpTkeConfig(ctx *Context, name string, args MonitorTmpTkeConfigArgs, opts ...ResourceOption) (*MonitorTmpTkeConfig, error)
public MonitorTmpTkeConfig(string name, MonitorTmpTkeConfigArgs args, CustomResourceOptions? opts = null)
public MonitorTmpTkeConfig(String name, MonitorTmpTkeConfigArgs args)
public MonitorTmpTkeConfig(String name, MonitorTmpTkeConfigArgs args, CustomResourceOptions options)
type: tencentcloud:MonitorTmpTkeConfig
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args MonitorTmpTkeConfigArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args MonitorTmpTkeConfigArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args MonitorTmpTkeConfigArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args MonitorTmpTkeConfigArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args MonitorTmpTkeConfigArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
MonitorTmpTkeConfig Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The MonitorTmpTkeConfig resource accepts the following input properties:
- Cluster
Id string - ID of cluster.
- Cluster
Type string - Type of cluster.
- Instance
Id string - ID of instance.
- Monitor
Tmp stringTke Config Id - ID of the resource.
- Pod
Monitors List<MonitorTmp Tke Config Pod Monitor> - Configuration of the pod monitors.
- Raw
Jobs List<MonitorTmp Tke Config Raw Job> - Configuration of the native prometheus job.
- Service
Monitors List<MonitorTmp Tke Config Service Monitor> - Configuration of the service monitors.
- Cluster
Id string - ID of cluster.
- Cluster
Type string - Type of cluster.
- Instance
Id string - ID of instance.
- Monitor
Tmp stringTke Config Id - ID of the resource.
- Pod
Monitors []MonitorTmp Tke Config Pod Monitor Args - Configuration of the pod monitors.
- Raw
Jobs []MonitorTmp Tke Config Raw Job Args - Configuration of the native prometheus job.
- Service
Monitors []MonitorTmp Tke Config Service Monitor Args - Configuration of the service monitors.
- cluster
Id String - ID of cluster.
- cluster
Type String - Type of cluster.
- instance
Id String - ID of instance.
- monitor
Tmp StringTke Config Id - ID of the resource.
- pod
Monitors List<MonitorTmp Tke Config Pod Monitor> - Configuration of the pod monitors.
- raw
Jobs List<MonitorTmp Tke Config Raw Job> - Configuration of the native prometheus job.
- service
Monitors List<MonitorTmp Tke Config Service Monitor> - Configuration of the service monitors.
- cluster
Id string - ID of cluster.
- cluster
Type string - Type of cluster.
- instance
Id string - ID of instance.
- monitor
Tmp stringTke Config Id - ID of the resource.
- pod
Monitors MonitorTmp Tke Config Pod Monitor[] - Configuration of the pod monitors.
- raw
Jobs MonitorTmp Tke Config Raw Job[] - Configuration of the native prometheus job.
- service
Monitors MonitorTmp Tke Config Service Monitor[] - Configuration of the service monitors.
- cluster_
id str - ID of cluster.
- cluster_
type str - Type of cluster.
- instance_
id str - ID of instance.
- monitor_
tmp_ strtke_ config_ id - ID of the resource.
- pod_
monitors Sequence[MonitorTmp Tke Config Pod Monitor Args] - Configuration of the pod monitors.
- raw_
jobs Sequence[MonitorTmp Tke Config Raw Job Args] - Configuration of the native prometheus job.
- service_
monitors Sequence[MonitorTmp Tke Config Service Monitor Args] - Configuration of the service monitors.
- cluster
Id String - ID of cluster.
- cluster
Type String - Type of cluster.
- instance
Id String - ID of instance.
- monitor
Tmp StringTke Config Id - ID of the resource.
- pod
Monitors List<Property Map> - Configuration of the pod monitors.
- raw
Jobs List<Property Map> - Configuration of the native prometheus job.
- service
Monitors List<Property Map> - Configuration of the service monitors.
Outputs
All input properties are implicitly available as output properties. Additionally, the MonitorTmpTkeConfig resource produces the following output properties:
Look up Existing MonitorTmpTkeConfig Resource
Get an existing MonitorTmpTkeConfig resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: MonitorTmpTkeConfigState, opts?: CustomResourceOptions): MonitorTmpTkeConfig
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
cluster_id: Optional[str] = None,
cluster_type: Optional[str] = None,
config: Optional[str] = None,
instance_id: Optional[str] = None,
monitor_tmp_tke_config_id: Optional[str] = None,
pod_monitors: Optional[Sequence[MonitorTmpTkeConfigPodMonitorArgs]] = None,
raw_jobs: Optional[Sequence[MonitorTmpTkeConfigRawJobArgs]] = None,
service_monitors: Optional[Sequence[MonitorTmpTkeConfigServiceMonitorArgs]] = None) -> MonitorTmpTkeConfig
func GetMonitorTmpTkeConfig(ctx *Context, name string, id IDInput, state *MonitorTmpTkeConfigState, opts ...ResourceOption) (*MonitorTmpTkeConfig, error)
public static MonitorTmpTkeConfig Get(string name, Input<string> id, MonitorTmpTkeConfigState? state, CustomResourceOptions? opts = null)
public static MonitorTmpTkeConfig get(String name, Output<String> id, MonitorTmpTkeConfigState state, CustomResourceOptions options)
resources: _: type: tencentcloud:MonitorTmpTkeConfig get: id: ${id}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Cluster
Id string - ID of cluster.
- Cluster
Type string - Type of cluster.
- Config string
- Global configuration.
- Instance
Id string - ID of instance.
- Monitor
Tmp stringTke Config Id - ID of the resource.
- Pod
Monitors List<MonitorTmp Tke Config Pod Monitor> - Configuration of the pod monitors.
- Raw
Jobs List<MonitorTmp Tke Config Raw Job> - Configuration of the native prometheus job.
- Service
Monitors List<MonitorTmp Tke Config Service Monitor> - Configuration of the service monitors.
- Cluster
Id string - ID of cluster.
- Cluster
Type string - Type of cluster.
- Config string
- Global configuration.
- Instance
Id string - ID of instance.
- Monitor
Tmp stringTke Config Id - ID of the resource.
- Pod
Monitors []MonitorTmp Tke Config Pod Monitor Args - Configuration of the pod monitors.
- Raw
Jobs []MonitorTmp Tke Config Raw Job Args - Configuration of the native prometheus job.
- Service
Monitors []MonitorTmp Tke Config Service Monitor Args - Configuration of the service monitors.
- cluster
Id String - ID of cluster.
- cluster
Type String - Type of cluster.
- config String
- Global configuration.
- instance
Id String - ID of instance.
- monitor
Tmp StringTke Config Id - ID of the resource.
- pod
Monitors List<MonitorTmp Tke Config Pod Monitor> - Configuration of the pod monitors.
- raw
Jobs List<MonitorTmp Tke Config Raw Job> - Configuration of the native prometheus job.
- service
Monitors List<MonitorTmp Tke Config Service Monitor> - Configuration of the service monitors.
- cluster
Id string - ID of cluster.
- cluster
Type string - Type of cluster.
- config string
- Global configuration.
- instance
Id string - ID of instance.
- monitor
Tmp stringTke Config Id - ID of the resource.
- pod
Monitors MonitorTmp Tke Config Pod Monitor[] - Configuration of the pod monitors.
- raw
Jobs MonitorTmp Tke Config Raw Job[] - Configuration of the native prometheus job.
- service
Monitors MonitorTmp Tke Config Service Monitor[] - Configuration of the service monitors.
- cluster_
id str - ID of cluster.
- cluster_
type str - Type of cluster.
- config str
- Global configuration.
- instance_
id str - ID of instance.
- monitor_
tmp_ strtke_ config_ id - ID of the resource.
- pod_
monitors Sequence[MonitorTmp Tke Config Pod Monitor Args] - Configuration of the pod monitors.
- raw_
jobs Sequence[MonitorTmp Tke Config Raw Job Args] - Configuration of the native prometheus job.
- service_
monitors Sequence[MonitorTmp Tke Config Service Monitor Args] - Configuration of the service monitors.
- cluster
Id String - ID of cluster.
- cluster
Type String - Type of cluster.
- config String
- Global configuration.
- instance
Id String - ID of instance.
- monitor
Tmp StringTke Config Id - ID of the resource.
- pod
Monitors List<Property Map> - Configuration of the pod monitors.
- raw
Jobs List<Property Map> - Configuration of the native prometheus job.
- service
Monitors List<Property Map> - Configuration of the service monitors.
Supporting Types
MonitorTmpTkeConfigPodMonitor, MonitorTmpTkeConfigPodMonitorArgs
- Config string
- Config.
- Name string
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- Template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- Config string
- Config.
- Name string
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- Template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- config String
- Config.
- name String
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- template
Id String - Used for output parameters, if the configuration comes from a template, it is the template id.
- config string
- Config.
- name string
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- config str
- Config.
- name str
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- template_
id str - Used for output parameters, if the configuration comes from a template, it is the template id.
- config String
- Config.
- name String
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- template
Id String - Used for output parameters, if the configuration comes from a template, it is the template id.
MonitorTmpTkeConfigRawJob, MonitorTmpTkeConfigRawJobArgs
- Config string
- Config.
- Name string
- Name.
- Template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- Config string
- Config.
- Name string
- Name.
- Template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- config String
- Config.
- name String
- Name.
- template
Id String - Used for output parameters, if the configuration comes from a template, it is the template id.
- config string
- Config.
- name string
- Name.
- template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- config str
- Config.
- name str
- Name.
- template_
id str - Used for output parameters, if the configuration comes from a template, it is the template id.
- config String
- Config.
- name String
- Name.
- template
Id String - Used for output parameters, if the configuration comes from a template, it is the template id.
MonitorTmpTkeConfigServiceMonitor, MonitorTmpTkeConfigServiceMonitorArgs
- Config string
- Config.
- Name string
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- Template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- Config string
- Config.
- Name string
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- Template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- config String
- Config.
- name String
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- template
Id String - Used for output parameters, if the configuration comes from a template, it is the template id.
- config string
- Config.
- name string
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- template
Id string - Used for output parameters, if the configuration comes from a template, it is the template id.
- config str
- Config.
- name str
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- template_
id str - Used for output parameters, if the configuration comes from a template, it is the template id.
- config String
- Config.
- name String
- Name. The naming rule is: namespace/name. If you don't have any namespace, use the default namespace: kube-system, otherwise use the specified one.
- template
Id String - Used for output parameters, if the configuration comes from a template, it is the template id.
Package Details
- Repository
- tencentcloud tencentcloudstack/terraform-provider-tencentcloud
- License
- Notes
- This Pulumi package is based on the
tencentcloud
Terraform Provider.