1. Packages
  2. Alicloud Provider
  3. API Docs
  4. cs
  5. ServerlessKubernetes
Alibaba Cloud v3.62.1 published on Monday, Sep 16, 2024 by Pulumi

alicloud.cs.ServerlessKubernetes

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.62.1 published on Monday, Sep 16, 2024 by Pulumi

    This resource will help you to manager a Serverless Kubernetes Cluster, see What is serverless kubernetes. The cluster is same as container service created by web console.

    NOTE: Available since v1.58.0.

    NOTE: Serverless Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster. A Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the VPC, you can set new_nat_gateway to “true” to create one automatically.

    NOTE: Creating serverless kubernetes cluster need to install several packages and it will cost about 5 minutes. Please be patient.

    NOTE: The provider supports to download kube config, client certificate, client key and cluster ca certificate after creating cluster successfully, and you can put them into the specified location, like ‘~/.kube/config’.

    NOTE: If you want to manage serverless Kubernetes, you can use Kubernetes Provider.

    NOTE: You need to activate several other products and confirm Authorization Policy used by Container Service before using this resource. Please refer to the Authorization management and Cluster management sections in the Document Center.

    NOTE: From version 1.162.0, support for creating professional serverless cluster.

    NOTE: From version 1.229.1, support to migrate basic serverless cluster to professional serverless cluster.

    Example Usage

    Basic Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    
    const config = new pulumi.Config();
    const name = config.get("name") || "ask-example-pro";
    const default = alicloud.getZones({
        availableResourceCreation: "VSwitch",
    });
    const defaultNetwork = new alicloud.vpc.Network("default", {
        vpcName: name,
        cidrBlock: "10.2.0.0/21",
    });
    const defaultSwitch = new alicloud.vpc.Switch("default", {
        vswitchName: name,
        vpcId: defaultNetwork.id,
        cidrBlock: "10.2.1.0/24",
        zoneId: _default.then(_default => _default.zones?.[0]?.id),
    });
    const serverless = new alicloud.cs.ServerlessKubernetes("serverless", {
        namePrefix: name,
        clusterSpec: "ack.pro.small",
        vpcId: defaultNetwork.id,
        vswitchIds: [defaultSwitch.id],
        newNatGateway: true,
        endpointPublicAccessEnabled: true,
        deletionProtection: false,
        loadBalancerSpec: "slb.s2.small",
        timeZone: "Asia/Shanghai",
        serviceCidr: "172.21.0.0/20",
        serviceDiscoveryTypes: ["PrivateZone"],
        loggingType: "SLS",
        tags: {
            "k-aa": "v-aa",
            "k-bb": "v-aa",
        },
        addons: [
            {
                name: "alb-ingress-controller",
            },
            {
                name: "metrics-server",
            },
            {
                name: "knative",
            },
            {
                name: "arms-prometheus",
            },
        ],
    });
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    config = pulumi.Config()
    name = config.get("name")
    if name is None:
        name = "ask-example-pro"
    default = alicloud.get_zones(available_resource_creation="VSwitch")
    default_network = alicloud.vpc.Network("default",
        vpc_name=name,
        cidr_block="10.2.0.0/21")
    default_switch = alicloud.vpc.Switch("default",
        vswitch_name=name,
        vpc_id=default_network.id,
        cidr_block="10.2.1.0/24",
        zone_id=default.zones[0].id)
    serverless = alicloud.cs.ServerlessKubernetes("serverless",
        name_prefix=name,
        cluster_spec="ack.pro.small",
        vpc_id=default_network.id,
        vswitch_ids=[default_switch.id],
        new_nat_gateway=True,
        endpoint_public_access_enabled=True,
        deletion_protection=False,
        load_balancer_spec="slb.s2.small",
        time_zone="Asia/Shanghai",
        service_cidr="172.21.0.0/20",
        service_discovery_types=["PrivateZone"],
        logging_type="SLS",
        tags={
            "k-aa": "v-aa",
            "k-bb": "v-aa",
        },
        addons=[
            {
                "name": "alb-ingress-controller",
            },
            {
                "name": "metrics-server",
            },
            {
                "name": "knative",
            },
            {
                "name": "arms-prometheus",
            },
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cs"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
    	"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, "")
    		name := "ask-example-pro"
    		if param := cfg.Get("name"); param != "" {
    			name = param
    		}
    		_default, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
    			AvailableResourceCreation: pulumi.StringRef("VSwitch"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
    			VpcName:   pulumi.String(name),
    			CidrBlock: pulumi.String("10.2.0.0/21"),
    		})
    		if err != nil {
    			return err
    		}
    		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
    			VswitchName: pulumi.String(name),
    			VpcId:       defaultNetwork.ID(),
    			CidrBlock:   pulumi.String("10.2.1.0/24"),
    			ZoneId:      pulumi.String(_default.Zones[0].Id),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = cs.NewServerlessKubernetes(ctx, "serverless", &cs.ServerlessKubernetesArgs{
    			NamePrefix:  pulumi.String(name),
    			ClusterSpec: pulumi.String("ack.pro.small"),
    			VpcId:       defaultNetwork.ID(),
    			VswitchIds: pulumi.StringArray{
    				defaultSwitch.ID(),
    			},
    			NewNatGateway:               pulumi.Bool(true),
    			EndpointPublicAccessEnabled: pulumi.Bool(true),
    			DeletionProtection:          pulumi.Bool(false),
    			LoadBalancerSpec:            pulumi.String("slb.s2.small"),
    			TimeZone:                    pulumi.String("Asia/Shanghai"),
    			ServiceCidr:                 pulumi.String("172.21.0.0/20"),
    			ServiceDiscoveryTypes: pulumi.StringArray{
    				pulumi.String("PrivateZone"),
    			},
    			LoggingType: pulumi.String("SLS"),
    			Tags: pulumi.StringMap{
    				"k-aa": pulumi.String("v-aa"),
    				"k-bb": pulumi.String("v-aa"),
    			},
    			Addons: cs.ServerlessKubernetesAddonArray{
    				&cs.ServerlessKubernetesAddonArgs{
    					Name: pulumi.String("alb-ingress-controller"),
    				},
    				&cs.ServerlessKubernetesAddonArgs{
    					Name: pulumi.String("metrics-server"),
    				},
    				&cs.ServerlessKubernetesAddonArgs{
    					Name: pulumi.String("knative"),
    				},
    				&cs.ServerlessKubernetesAddonArgs{
    					Name: pulumi.String("arms-prometheus"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var name = config.Get("name") ?? "ask-example-pro";
        var @default = AliCloud.GetZones.Invoke(new()
        {
            AvailableResourceCreation = "VSwitch",
        });
    
        var defaultNetwork = new AliCloud.Vpc.Network("default", new()
        {
            VpcName = name,
            CidrBlock = "10.2.0.0/21",
        });
    
        var defaultSwitch = new AliCloud.Vpc.Switch("default", new()
        {
            VswitchName = name,
            VpcId = defaultNetwork.Id,
            CidrBlock = "10.2.1.0/24",
            ZoneId = @default.Apply(@default => @default.Apply(getZonesResult => getZonesResult.Zones[0]?.Id)),
        });
    
        var serverless = new AliCloud.CS.ServerlessKubernetes("serverless", new()
        {
            NamePrefix = name,
            ClusterSpec = "ack.pro.small",
            VpcId = defaultNetwork.Id,
            VswitchIds = new[]
            {
                defaultSwitch.Id,
            },
            NewNatGateway = true,
            EndpointPublicAccessEnabled = true,
            DeletionProtection = false,
            LoadBalancerSpec = "slb.s2.small",
            TimeZone = "Asia/Shanghai",
            ServiceCidr = "172.21.0.0/20",
            ServiceDiscoveryTypes = new[]
            {
                "PrivateZone",
            },
            LoggingType = "SLS",
            Tags = 
            {
                { "k-aa", "v-aa" },
                { "k-bb", "v-aa" },
            },
            Addons = new[]
            {
                new AliCloud.CS.Inputs.ServerlessKubernetesAddonArgs
                {
                    Name = "alb-ingress-controller",
                },
                new AliCloud.CS.Inputs.ServerlessKubernetesAddonArgs
                {
                    Name = "metrics-server",
                },
                new AliCloud.CS.Inputs.ServerlessKubernetesAddonArgs
                {
                    Name = "knative",
                },
                new AliCloud.CS.Inputs.ServerlessKubernetesAddonArgs
                {
                    Name = "arms-prometheus",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.alicloud.AlicloudFunctions;
    import com.pulumi.alicloud.inputs.GetZonesArgs;
    import com.pulumi.alicloud.vpc.Network;
    import com.pulumi.alicloud.vpc.NetworkArgs;
    import com.pulumi.alicloud.vpc.Switch;
    import com.pulumi.alicloud.vpc.SwitchArgs;
    import com.pulumi.alicloud.cs.ServerlessKubernetes;
    import com.pulumi.alicloud.cs.ServerlessKubernetesArgs;
    import com.pulumi.alicloud.cs.inputs.ServerlessKubernetesAddonArgs;
    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 name = config.get("name").orElse("ask-example-pro");
            final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()
                .availableResourceCreation("VSwitch")
                .build());
    
            var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
                .vpcName(name)
                .cidrBlock("10.2.0.0/21")
                .build());
    
            var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
                .vswitchName(name)
                .vpcId(defaultNetwork.id())
                .cidrBlock("10.2.1.0/24")
                .zoneId(default_.zones()[0].id())
                .build());
    
            var serverless = new ServerlessKubernetes("serverless", ServerlessKubernetesArgs.builder()
                .namePrefix(name)
                .clusterSpec("ack.pro.small")
                .vpcId(defaultNetwork.id())
                .vswitchIds(defaultSwitch.id())
                .newNatGateway(true)
                .endpointPublicAccessEnabled(true)
                .deletionProtection(false)
                .loadBalancerSpec("slb.s2.small")
                .timeZone("Asia/Shanghai")
                .serviceCidr("172.21.0.0/20")
                .serviceDiscoveryTypes("PrivateZone")
                .loggingType("SLS")
                .tags(Map.ofEntries(
                    Map.entry("k-aa", "v-aa"),
                    Map.entry("k-bb", "v-aa")
                ))
                .addons(            
                    ServerlessKubernetesAddonArgs.builder()
                        .name("alb-ingress-controller")
                        .build(),
                    ServerlessKubernetesAddonArgs.builder()
                        .name("metrics-server")
                        .build(),
                    ServerlessKubernetesAddonArgs.builder()
                        .name("knative")
                        .build(),
                    ServerlessKubernetesAddonArgs.builder()
                        .name("arms-prometheus")
                        .build())
                .build());
    
        }
    }
    
    configuration:
      name:
        type: string
        default: ask-example-pro
    resources:
      defaultNetwork:
        type: alicloud:vpc:Network
        name: default
        properties:
          vpcName: ${name}
          cidrBlock: 10.2.0.0/21
      defaultSwitch:
        type: alicloud:vpc:Switch
        name: default
        properties:
          vswitchName: ${name}
          vpcId: ${defaultNetwork.id}
          cidrBlock: 10.2.1.0/24
          zoneId: ${default.zones[0].id}
      serverless:
        type: alicloud:cs:ServerlessKubernetes
        properties:
          namePrefix: ${name}
          clusterSpec: ack.pro.small
          vpcId: ${defaultNetwork.id}
          vswitchIds:
            - ${defaultSwitch.id}
          newNatGateway: true
          endpointPublicAccessEnabled: true
          deletionProtection: false
          loadBalancerSpec: slb.s2.small
          timeZone: Asia/Shanghai
          serviceCidr: 172.21.0.0/20
          serviceDiscoveryTypes:
            - PrivateZone
          loggingType: SLS
          tags:
            k-aa: v-aa
            k-bb: v-aa
          addons:
            - name: alb-ingress-controller
            - name: metrics-server
            - name: knative
            - name: arms-prometheus
    variables:
      default:
        fn::invoke:
          Function: alicloud:getZones
          Arguments:
            availableResourceCreation: VSwitch
    

    Create ServerlessKubernetes Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ServerlessKubernetes(name: string, args?: ServerlessKubernetesArgs, opts?: CustomResourceOptions);
    @overload
    def ServerlessKubernetes(resource_name: str,
                             args: Optional[ServerlessKubernetesArgs] = None,
                             opts: Optional[ResourceOptions] = None)
    
    @overload
    def ServerlessKubernetes(resource_name: str,
                             opts: Optional[ResourceOptions] = None,
                             addons: Optional[Sequence[ServerlessKubernetesAddonArgs]] = None,
                             client_cert: Optional[str] = None,
                             client_key: Optional[str] = None,
                             cluster_ca_cert: Optional[str] = None,
                             cluster_spec: Optional[str] = None,
                             custom_san: Optional[str] = None,
                             delete_options: Optional[Sequence[ServerlessKubernetesDeleteOptionArgs]] = None,
                             deletion_protection: Optional[bool] = None,
                             enable_rrsa: Optional[bool] = None,
                             endpoint_public_access_enabled: Optional[bool] = None,
                             kube_config: Optional[str] = None,
                             load_balancer_spec: Optional[str] = None,
                             logging_type: Optional[str] = None,
                             name: Optional[str] = None,
                             name_prefix: Optional[str] = None,
                             new_nat_gateway: Optional[bool] = None,
                             private_zone: Optional[bool] = None,
                             resource_group_id: Optional[str] = None,
                             retain_resources: Optional[Sequence[str]] = None,
                             security_group_id: Optional[str] = None,
                             service_cidr: Optional[str] = None,
                             service_discovery_types: Optional[Sequence[str]] = None,
                             sls_project_name: Optional[str] = None,
                             tags: Optional[Mapping[str, str]] = None,
                             time_zone: Optional[str] = None,
                             version: Optional[str] = None,
                             vpc_id: Optional[str] = None,
                             vswitch_ids: Optional[Sequence[str]] = None,
                             zone_id: Optional[str] = None)
    func NewServerlessKubernetes(ctx *Context, name string, args *ServerlessKubernetesArgs, opts ...ResourceOption) (*ServerlessKubernetes, error)
    public ServerlessKubernetes(string name, ServerlessKubernetesArgs? args = null, CustomResourceOptions? opts = null)
    public ServerlessKubernetes(String name, ServerlessKubernetesArgs args)
    public ServerlessKubernetes(String name, ServerlessKubernetesArgs args, CustomResourceOptions options)
    
    type: alicloud:cs:ServerlessKubernetes
    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 ServerlessKubernetesArgs
    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 ServerlessKubernetesArgs
    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 ServerlessKubernetesArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ServerlessKubernetesArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ServerlessKubernetesArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var serverlessKubernetesResource = new AliCloud.CS.ServerlessKubernetes("serverlessKubernetesResource", new()
    {
        Addons = new[]
        {
            new AliCloud.CS.Inputs.ServerlessKubernetesAddonArgs
            {
                Config = "string",
                Disabled = false,
                Name = "string",
                Version = "string",
            },
        },
        ClientCert = "string",
        ClientKey = "string",
        ClusterCaCert = "string",
        ClusterSpec = "string",
        CustomSan = "string",
        DeleteOptions = new[]
        {
            new AliCloud.CS.Inputs.ServerlessKubernetesDeleteOptionArgs
            {
                DeleteMode = "string",
                ResourceType = "string",
            },
        },
        DeletionProtection = false,
        EnableRrsa = false,
        EndpointPublicAccessEnabled = false,
        Name = "string",
        NamePrefix = "string",
        NewNatGateway = false,
        ResourceGroupId = "string",
        RetainResources = new[]
        {
            "string",
        },
        SecurityGroupId = "string",
        ServiceCidr = "string",
        ServiceDiscoveryTypes = new[]
        {
            "string",
        },
        Tags = 
        {
            { "string", "string" },
        },
        TimeZone = "string",
        Version = "string",
        VpcId = "string",
        VswitchIds = new[]
        {
            "string",
        },
        ZoneId = "string",
    });
    
    example, err := cs.NewServerlessKubernetes(ctx, "serverlessKubernetesResource", &cs.ServerlessKubernetesArgs{
    	Addons: cs.ServerlessKubernetesAddonArray{
    		&cs.ServerlessKubernetesAddonArgs{
    			Config:   pulumi.String("string"),
    			Disabled: pulumi.Bool(false),
    			Name:     pulumi.String("string"),
    			Version:  pulumi.String("string"),
    		},
    	},
    	ClientCert:    pulumi.String("string"),
    	ClientKey:     pulumi.String("string"),
    	ClusterCaCert: pulumi.String("string"),
    	ClusterSpec:   pulumi.String("string"),
    	CustomSan:     pulumi.String("string"),
    	DeleteOptions: cs.ServerlessKubernetesDeleteOptionArray{
    		&cs.ServerlessKubernetesDeleteOptionArgs{
    			DeleteMode:   pulumi.String("string"),
    			ResourceType: pulumi.String("string"),
    		},
    	},
    	DeletionProtection:          pulumi.Bool(false),
    	EnableRrsa:                  pulumi.Bool(false),
    	EndpointPublicAccessEnabled: pulumi.Bool(false),
    	Name:                        pulumi.String("string"),
    	NamePrefix:                  pulumi.String("string"),
    	NewNatGateway:               pulumi.Bool(false),
    	ResourceGroupId:             pulumi.String("string"),
    	RetainResources: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	SecurityGroupId: pulumi.String("string"),
    	ServiceCidr:     pulumi.String("string"),
    	ServiceDiscoveryTypes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	TimeZone: pulumi.String("string"),
    	Version:  pulumi.String("string"),
    	VpcId:    pulumi.String("string"),
    	VswitchIds: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	ZoneId: pulumi.String("string"),
    })
    
    var serverlessKubernetesResource = new ServerlessKubernetes("serverlessKubernetesResource", ServerlessKubernetesArgs.builder()
        .addons(ServerlessKubernetesAddonArgs.builder()
            .config("string")
            .disabled(false)
            .name("string")
            .version("string")
            .build())
        .clientCert("string")
        .clientKey("string")
        .clusterCaCert("string")
        .clusterSpec("string")
        .customSan("string")
        .deleteOptions(ServerlessKubernetesDeleteOptionArgs.builder()
            .deleteMode("string")
            .resourceType("string")
            .build())
        .deletionProtection(false)
        .enableRrsa(false)
        .endpointPublicAccessEnabled(false)
        .name("string")
        .namePrefix("string")
        .newNatGateway(false)
        .resourceGroupId("string")
        .retainResources("string")
        .securityGroupId("string")
        .serviceCidr("string")
        .serviceDiscoveryTypes("string")
        .tags(Map.of("string", "string"))
        .timeZone("string")
        .version("string")
        .vpcId("string")
        .vswitchIds("string")
        .zoneId("string")
        .build());
    
    serverless_kubernetes_resource = alicloud.cs.ServerlessKubernetes("serverlessKubernetesResource",
        addons=[alicloud.cs.ServerlessKubernetesAddonArgs(
            config="string",
            disabled=False,
            name="string",
            version="string",
        )],
        client_cert="string",
        client_key="string",
        cluster_ca_cert="string",
        cluster_spec="string",
        custom_san="string",
        delete_options=[alicloud.cs.ServerlessKubernetesDeleteOptionArgs(
            delete_mode="string",
            resource_type="string",
        )],
        deletion_protection=False,
        enable_rrsa=False,
        endpoint_public_access_enabled=False,
        name="string",
        name_prefix="string",
        new_nat_gateway=False,
        resource_group_id="string",
        retain_resources=["string"],
        security_group_id="string",
        service_cidr="string",
        service_discovery_types=["string"],
        tags={
            "string": "string",
        },
        time_zone="string",
        version="string",
        vpc_id="string",
        vswitch_ids=["string"],
        zone_id="string")
    
    const serverlessKubernetesResource = new alicloud.cs.ServerlessKubernetes("serverlessKubernetesResource", {
        addons: [{
            config: "string",
            disabled: false,
            name: "string",
            version: "string",
        }],
        clientCert: "string",
        clientKey: "string",
        clusterCaCert: "string",
        clusterSpec: "string",
        customSan: "string",
        deleteOptions: [{
            deleteMode: "string",
            resourceType: "string",
        }],
        deletionProtection: false,
        enableRrsa: false,
        endpointPublicAccessEnabled: false,
        name: "string",
        namePrefix: "string",
        newNatGateway: false,
        resourceGroupId: "string",
        retainResources: ["string"],
        securityGroupId: "string",
        serviceCidr: "string",
        serviceDiscoveryTypes: ["string"],
        tags: {
            string: "string",
        },
        timeZone: "string",
        version: "string",
        vpcId: "string",
        vswitchIds: ["string"],
        zoneId: "string",
    });
    
    type: alicloud:cs:ServerlessKubernetes
    properties:
        addons:
            - config: string
              disabled: false
              name: string
              version: string
        clientCert: string
        clientKey: string
        clusterCaCert: string
        clusterSpec: string
        customSan: string
        deleteOptions:
            - deleteMode: string
              resourceType: string
        deletionProtection: false
        enableRrsa: false
        endpointPublicAccessEnabled: false
        name: string
        namePrefix: string
        newNatGateway: false
        resourceGroupId: string
        retainResources:
            - string
        securityGroupId: string
        serviceCidr: string
        serviceDiscoveryTypes:
            - string
        tags:
            string: string
        timeZone: string
        version: string
        vpcId: string
        vswitchIds:
            - string
        zoneId: string
    

    ServerlessKubernetes Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The ServerlessKubernetes resource accepts the following input properties:

    Addons List<Pulumi.AliCloud.CS.Inputs.ServerlessKubernetesAddon>
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    ClientCert string
    The path of client certificate, like ~/.kube/client-cert.pem.
    ClientKey string
    The path of client key, like ~/.kube/client-key.pem.
    ClusterCaCert string
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    ClusterSpec string
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    CustomSan string

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    DeleteOptions List<Pulumi.AliCloud.CS.Inputs.ServerlessKubernetesDeleteOption>
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    DeletionProtection bool
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    EnableRrsa bool
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    EndpointPublicAccessEnabled bool
    Whether to create internet eip for API Server. Default to false.
    KubeConfig string
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    LoadBalancerSpec string
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    LoggingType string
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    Name string
    The kubernetes cluster's name. It is the only in one Alicloud account.
    NamePrefix string
    NewNatGateway bool
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    PrivateZone bool
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    ResourceGroupId string
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    RetainResources List<string>
    SecurityGroupId string
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    ServiceCidr string
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    ServiceDiscoveryTypes List<string>
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    SlsProjectName string
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    Tags Dictionary<string, string>
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    TimeZone string
    The time zone of the cluster.
    Version string
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    VpcId string
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    VswitchIds List<string>
    The vswitches where new kubernetes cluster will be located.
    ZoneId string
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    Addons []ServerlessKubernetesAddonArgs
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    ClientCert string
    The path of client certificate, like ~/.kube/client-cert.pem.
    ClientKey string
    The path of client key, like ~/.kube/client-key.pem.
    ClusterCaCert string
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    ClusterSpec string
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    CustomSan string

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    DeleteOptions []ServerlessKubernetesDeleteOptionArgs
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    DeletionProtection bool
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    EnableRrsa bool
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    EndpointPublicAccessEnabled bool
    Whether to create internet eip for API Server. Default to false.
    KubeConfig string
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    LoadBalancerSpec string
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    LoggingType string
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    Name string
    The kubernetes cluster's name. It is the only in one Alicloud account.
    NamePrefix string
    NewNatGateway bool
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    PrivateZone bool
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    ResourceGroupId string
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    RetainResources []string
    SecurityGroupId string
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    ServiceCidr string
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    ServiceDiscoveryTypes []string
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    SlsProjectName string
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    Tags map[string]string
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    TimeZone string
    The time zone of the cluster.
    Version string
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    VpcId string
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    VswitchIds []string
    The vswitches where new kubernetes cluster will be located.
    ZoneId string
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    addons List<ServerlessKubernetesAddon>
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    clientCert String
    The path of client certificate, like ~/.kube/client-cert.pem.
    clientKey String
    The path of client key, like ~/.kube/client-key.pem.
    clusterCaCert String
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    clusterSpec String
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    customSan String

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    deleteOptions List<ServerlessKubernetesDeleteOption>
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    deletionProtection Boolean
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    enableRrsa Boolean
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    endpointPublicAccessEnabled Boolean
    Whether to create internet eip for API Server. Default to false.
    kubeConfig String
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    loadBalancerSpec String
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    loggingType String
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    name String
    The kubernetes cluster's name. It is the only in one Alicloud account.
    namePrefix String
    newNatGateway Boolean
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    privateZone Boolean
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    resourceGroupId String
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    retainResources List<String>
    securityGroupId String
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    serviceCidr String
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    serviceDiscoveryTypes List<String>
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    slsProjectName String
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    tags Map<String,String>
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    timeZone String
    The time zone of the cluster.
    version String
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    vpcId String
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    vswitchIds List<String>
    The vswitches where new kubernetes cluster will be located.
    zoneId String
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    addons ServerlessKubernetesAddon[]
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    clientCert string
    The path of client certificate, like ~/.kube/client-cert.pem.
    clientKey string
    The path of client key, like ~/.kube/client-key.pem.
    clusterCaCert string
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    clusterSpec string
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    customSan string

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    deleteOptions ServerlessKubernetesDeleteOption[]
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    deletionProtection boolean
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    enableRrsa boolean
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    endpointPublicAccessEnabled boolean
    Whether to create internet eip for API Server. Default to false.
    kubeConfig string
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    loadBalancerSpec string
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    loggingType string
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    name string
    The kubernetes cluster's name. It is the only in one Alicloud account.
    namePrefix string
    newNatGateway boolean
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    privateZone boolean
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    resourceGroupId string
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    retainResources string[]
    securityGroupId string
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    serviceCidr string
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    serviceDiscoveryTypes string[]
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    slsProjectName string
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    tags {[key: string]: string}
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    timeZone string
    The time zone of the cluster.
    version string
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    vpcId string
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    vswitchIds string[]
    The vswitches where new kubernetes cluster will be located.
    zoneId string
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    addons Sequence[ServerlessKubernetesAddonArgs]
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    client_cert str
    The path of client certificate, like ~/.kube/client-cert.pem.
    client_key str
    The path of client key, like ~/.kube/client-key.pem.
    cluster_ca_cert str
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    cluster_spec str
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    custom_san str

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    delete_options Sequence[ServerlessKubernetesDeleteOptionArgs]
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    deletion_protection bool
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    enable_rrsa bool
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    endpoint_public_access_enabled bool
    Whether to create internet eip for API Server. Default to false.
    kube_config str
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    load_balancer_spec str
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    logging_type str
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    name str
    The kubernetes cluster's name. It is the only in one Alicloud account.
    name_prefix str
    new_nat_gateway bool
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    private_zone bool
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    resource_group_id str
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    retain_resources Sequence[str]
    security_group_id str
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    service_cidr str
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    service_discovery_types Sequence[str]
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    sls_project_name str
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    tags Mapping[str, str]
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    time_zone str
    The time zone of the cluster.
    version str
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    vpc_id str
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    vswitch_ids Sequence[str]
    The vswitches where new kubernetes cluster will be located.
    zone_id str
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    addons List<Property Map>
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    clientCert String
    The path of client certificate, like ~/.kube/client-cert.pem.
    clientKey String
    The path of client key, like ~/.kube/client-key.pem.
    clusterCaCert String
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    clusterSpec String
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    customSan String

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    deleteOptions List<Property Map>
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    deletionProtection Boolean
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    enableRrsa Boolean
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    endpointPublicAccessEnabled Boolean
    Whether to create internet eip for API Server. Default to false.
    kubeConfig String
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    loadBalancerSpec String
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    loggingType String
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    name String
    The kubernetes cluster's name. It is the only in one Alicloud account.
    namePrefix String
    newNatGateway Boolean
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    privateZone Boolean
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    resourceGroupId String
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    retainResources List<String>
    securityGroupId String
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    serviceCidr String
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    serviceDiscoveryTypes List<String>
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    slsProjectName String
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    tags Map<String>
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    timeZone String
    The time zone of the cluster.
    version String
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    vpcId String
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    vswitchIds List<String>
    The vswitches where new kubernetes cluster will be located.
    zoneId String
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ServerlessKubernetes resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    RrsaMetadata Pulumi.AliCloud.CS.Outputs.ServerlessKubernetesRrsaMetadata
    Nested attribute containing RRSA related data for your cluster.
    Id string
    The provider-assigned unique ID for this managed resource.
    RrsaMetadata ServerlessKubernetesRrsaMetadata
    Nested attribute containing RRSA related data for your cluster.
    id String
    The provider-assigned unique ID for this managed resource.
    rrsaMetadata ServerlessKubernetesRrsaMetadata
    Nested attribute containing RRSA related data for your cluster.
    id string
    The provider-assigned unique ID for this managed resource.
    rrsaMetadata ServerlessKubernetesRrsaMetadata
    Nested attribute containing RRSA related data for your cluster.
    id str
    The provider-assigned unique ID for this managed resource.
    rrsa_metadata ServerlessKubernetesRrsaMetadata
    Nested attribute containing RRSA related data for your cluster.
    id String
    The provider-assigned unique ID for this managed resource.
    rrsaMetadata Property Map
    Nested attribute containing RRSA related data for your cluster.

    Look up Existing ServerlessKubernetes Resource

    Get an existing ServerlessKubernetes 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?: ServerlessKubernetesState, opts?: CustomResourceOptions): ServerlessKubernetes
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            addons: Optional[Sequence[ServerlessKubernetesAddonArgs]] = None,
            client_cert: Optional[str] = None,
            client_key: Optional[str] = None,
            cluster_ca_cert: Optional[str] = None,
            cluster_spec: Optional[str] = None,
            custom_san: Optional[str] = None,
            delete_options: Optional[Sequence[ServerlessKubernetesDeleteOptionArgs]] = None,
            deletion_protection: Optional[bool] = None,
            enable_rrsa: Optional[bool] = None,
            endpoint_public_access_enabled: Optional[bool] = None,
            kube_config: Optional[str] = None,
            load_balancer_spec: Optional[str] = None,
            logging_type: Optional[str] = None,
            name: Optional[str] = None,
            name_prefix: Optional[str] = None,
            new_nat_gateway: Optional[bool] = None,
            private_zone: Optional[bool] = None,
            resource_group_id: Optional[str] = None,
            retain_resources: Optional[Sequence[str]] = None,
            rrsa_metadata: Optional[ServerlessKubernetesRrsaMetadataArgs] = None,
            security_group_id: Optional[str] = None,
            service_cidr: Optional[str] = None,
            service_discovery_types: Optional[Sequence[str]] = None,
            sls_project_name: Optional[str] = None,
            tags: Optional[Mapping[str, str]] = None,
            time_zone: Optional[str] = None,
            version: Optional[str] = None,
            vpc_id: Optional[str] = None,
            vswitch_ids: Optional[Sequence[str]] = None,
            zone_id: Optional[str] = None) -> ServerlessKubernetes
    func GetServerlessKubernetes(ctx *Context, name string, id IDInput, state *ServerlessKubernetesState, opts ...ResourceOption) (*ServerlessKubernetes, error)
    public static ServerlessKubernetes Get(string name, Input<string> id, ServerlessKubernetesState? state, CustomResourceOptions? opts = null)
    public static ServerlessKubernetes get(String name, Output<String> id, ServerlessKubernetesState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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.
    The following state arguments are supported:
    Addons List<Pulumi.AliCloud.CS.Inputs.ServerlessKubernetesAddon>
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    ClientCert string
    The path of client certificate, like ~/.kube/client-cert.pem.
    ClientKey string
    The path of client key, like ~/.kube/client-key.pem.
    ClusterCaCert string
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    ClusterSpec string
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    CustomSan string

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    DeleteOptions List<Pulumi.AliCloud.CS.Inputs.ServerlessKubernetesDeleteOption>
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    DeletionProtection bool
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    EnableRrsa bool
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    EndpointPublicAccessEnabled bool
    Whether to create internet eip for API Server. Default to false.
    KubeConfig string
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    LoadBalancerSpec string
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    LoggingType string
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    Name string
    The kubernetes cluster's name. It is the only in one Alicloud account.
    NamePrefix string
    NewNatGateway bool
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    PrivateZone bool
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    ResourceGroupId string
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    RetainResources List<string>
    RrsaMetadata Pulumi.AliCloud.CS.Inputs.ServerlessKubernetesRrsaMetadata
    Nested attribute containing RRSA related data for your cluster.
    SecurityGroupId string
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    ServiceCidr string
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    ServiceDiscoveryTypes List<string>
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    SlsProjectName string
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    Tags Dictionary<string, string>
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    TimeZone string
    The time zone of the cluster.
    Version string
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    VpcId string
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    VswitchIds List<string>
    The vswitches where new kubernetes cluster will be located.
    ZoneId string
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    Addons []ServerlessKubernetesAddonArgs
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    ClientCert string
    The path of client certificate, like ~/.kube/client-cert.pem.
    ClientKey string
    The path of client key, like ~/.kube/client-key.pem.
    ClusterCaCert string
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    ClusterSpec string
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    CustomSan string

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    DeleteOptions []ServerlessKubernetesDeleteOptionArgs
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    DeletionProtection bool
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    EnableRrsa bool
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    EndpointPublicAccessEnabled bool
    Whether to create internet eip for API Server. Default to false.
    KubeConfig string
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    LoadBalancerSpec string
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    LoggingType string
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    Name string
    The kubernetes cluster's name. It is the only in one Alicloud account.
    NamePrefix string
    NewNatGateway bool
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    PrivateZone bool
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    ResourceGroupId string
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    RetainResources []string
    RrsaMetadata ServerlessKubernetesRrsaMetadataArgs
    Nested attribute containing RRSA related data for your cluster.
    SecurityGroupId string
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    ServiceCidr string
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    ServiceDiscoveryTypes []string
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    SlsProjectName string
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    Tags map[string]string
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    TimeZone string
    The time zone of the cluster.
    Version string
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    VpcId string
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    VswitchIds []string
    The vswitches where new kubernetes cluster will be located.
    ZoneId string
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    addons List<ServerlessKubernetesAddon>
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    clientCert String
    The path of client certificate, like ~/.kube/client-cert.pem.
    clientKey String
    The path of client key, like ~/.kube/client-key.pem.
    clusterCaCert String
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    clusterSpec String
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    customSan String

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    deleteOptions List<ServerlessKubernetesDeleteOption>
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    deletionProtection Boolean
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    enableRrsa Boolean
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    endpointPublicAccessEnabled Boolean
    Whether to create internet eip for API Server. Default to false.
    kubeConfig String
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    loadBalancerSpec String
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    loggingType String
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    name String
    The kubernetes cluster's name. It is the only in one Alicloud account.
    namePrefix String
    newNatGateway Boolean
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    privateZone Boolean
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    resourceGroupId String
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    retainResources List<String>
    rrsaMetadata ServerlessKubernetesRrsaMetadata
    Nested attribute containing RRSA related data for your cluster.
    securityGroupId String
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    serviceCidr String
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    serviceDiscoveryTypes List<String>
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    slsProjectName String
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    tags Map<String,String>
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    timeZone String
    The time zone of the cluster.
    version String
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    vpcId String
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    vswitchIds List<String>
    The vswitches where new kubernetes cluster will be located.
    zoneId String
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    addons ServerlessKubernetesAddon[]
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    clientCert string
    The path of client certificate, like ~/.kube/client-cert.pem.
    clientKey string
    The path of client key, like ~/.kube/client-key.pem.
    clusterCaCert string
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    clusterSpec string
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    customSan string

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    deleteOptions ServerlessKubernetesDeleteOption[]
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    deletionProtection boolean
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    enableRrsa boolean
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    endpointPublicAccessEnabled boolean
    Whether to create internet eip for API Server. Default to false.
    kubeConfig string
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    loadBalancerSpec string
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    loggingType string
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    name string
    The kubernetes cluster's name. It is the only in one Alicloud account.
    namePrefix string
    newNatGateway boolean
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    privateZone boolean
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    resourceGroupId string
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    retainResources string[]
    rrsaMetadata ServerlessKubernetesRrsaMetadata
    Nested attribute containing RRSA related data for your cluster.
    securityGroupId string
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    serviceCidr string
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    serviceDiscoveryTypes string[]
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    slsProjectName string
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    tags {[key: string]: string}
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    timeZone string
    The time zone of the cluster.
    version string
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    vpcId string
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    vswitchIds string[]
    The vswitches where new kubernetes cluster will be located.
    zoneId string
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    addons Sequence[ServerlessKubernetesAddonArgs]
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    client_cert str
    The path of client certificate, like ~/.kube/client-cert.pem.
    client_key str
    The path of client key, like ~/.kube/client-key.pem.
    cluster_ca_cert str
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    cluster_spec str
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    custom_san str

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    delete_options Sequence[ServerlessKubernetesDeleteOptionArgs]
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    deletion_protection bool
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    enable_rrsa bool
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    endpoint_public_access_enabled bool
    Whether to create internet eip for API Server. Default to false.
    kube_config str
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    load_balancer_spec str
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    logging_type str
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    name str
    The kubernetes cluster's name. It is the only in one Alicloud account.
    name_prefix str
    new_nat_gateway bool
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    private_zone bool
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    resource_group_id str
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    retain_resources Sequence[str]
    rrsa_metadata ServerlessKubernetesRrsaMetadataArgs
    Nested attribute containing RRSA related data for your cluster.
    security_group_id str
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    service_cidr str
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    service_discovery_types Sequence[str]
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    sls_project_name str
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    tags Mapping[str, str]
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    time_zone str
    The time zone of the cluster.
    version str
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    vpc_id str
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    vswitch_ids Sequence[str]
    The vswitches where new kubernetes cluster will be located.
    zone_id str
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.
    addons List<Property Map>
    You can specific network plugin, log component, ingress component and so on. See addons below. Only works for Create Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
    clientCert String
    The path of client certificate, like ~/.kube/client-cert.pem.
    clientKey String
    The path of client key, like ~/.kube/client-key.pem.
    clusterCaCert String
    The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem
    clusterSpec String
    The cluster specifications of serverless kubernetes cluster, which can be empty. Valid values:

    • ack.standard: Standard serverless clusters.
    • ack.pro.small: Professional serverless clusters.
    customSan String

    Customize the certificate SAN, multiple IP or domain names are separated by English commas (,).

    NOTE: Make sure you have specified all certificate SANs before updating. Updating this field will lead APIServer to restart.

    Removed params

    deleteOptions List<Property Map>
    Delete options, only work for deleting resource. Make sure you have run pulumi up to make the configuration applied. See delete_options below.
    deletionProtection Boolean
    Whether enable the deletion protection or not.

    • true: Enable deletion protection.
    • false: Disable deletion protection.
    enableRrsa Boolean
    Whether to enable cluster to support RRSA for version 1.22.3+. Default to false. Once the RRSA function is turned on, it is not allowed to turn off. If your cluster has enabled this function, please manually modify your tf file and add the rrsa configuration to the file, learn more RAM Roles for Service Accounts.
    endpointPublicAccessEnabled Boolean
    Whether to create internet eip for API Server. Default to false.
    kubeConfig String
    The path of kube config, like ~/.kube/config.

    Deprecated: Field 'kube_config' has been deprecated from provider version 1.187.0. New DataSource 'alicloud_cs_cluster_credential' manage your cluster's kube config.

    loadBalancerSpec String
    The cluster api server load balance instance specification, default slb.s2.small. For more information on how to select a LB instance specification, see SLB instance overview.

    Deprecated: Field 'load_balancer_spec' has been deprecated from provider version 1.229.1. The load balancer has been changed to PayByCLCU so that no spec is need anymore.

    loggingType String
    Enable log service, Valid value SLS.

    Deprecated: Field 'logging_type' has been deprecated from provider version 1.229.1. Please use addons alibaba-log-controller to enable logging.

    name String
    The kubernetes cluster's name. It is the only in one Alicloud account.
    namePrefix String
    newNatGateway Boolean
    Whether to create a new nat gateway while creating kubernetes cluster. SNAT must be configured when a new VPC is automatically created. Default is true.
    privateZone Boolean
    Has been deprecated from provider version 1.123.1. PrivateZone is used as the enumeration value of service_discovery_types.

    Deprecated: Field 'private_zone' has been deprecated from provider version 1.123.1. New field 'service_discovery_types' replace it.

    resourceGroupId String
    The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.
    retainResources List<String>
    rrsaMetadata Property Map
    Nested attribute containing RRSA related data for your cluster.
    securityGroupId String
    The ID of the security group to which the ECS instances in the cluster belong. If it is not specified, a new Security group will be built.
    serviceCidr String
    CIDR block of the service network. The specified CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. The CIDR block cannot be modified after the cluster is created.
    serviceDiscoveryTypes List<String>
    Service discovery type. Only works for Create Operation. If the value is empty, it means that service discovery is not enabled. Valid values are CoreDNS and PrivateZone.
    slsProjectName String
    If you use an existing SLS project, you must specify sls_project_name.

    Deprecated: Field 'sls_project_name' has been deprecated from provider version 1.229.1. Please use the field config of addons alibaba-log-controller to specify log project name.

    tags Map<String>
    Default nil, A map of tags assigned to the kubernetes cluster and work nodes.
    timeZone String
    The time zone of the cluster.
    version String
    Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used.
    vpcId String
    The vpc where new kubernetes cluster will be located. Specify one vpc's id, if it is not specified, a new VPC will be built.
    vswitchIds List<String>
    The vswitches where new kubernetes cluster will be located.
    zoneId String
    When creating a cluster using automatic VPC creation, you need to specify the zone where the VPC is located.

    Supporting Types

    ServerlessKubernetesAddon, ServerlessKubernetesAddonArgs

    Config string
    The ACK add-on configurations. For more config information, see cs_kubernetes_addon_metadata.
    Disabled bool

    Disables the automatic installation of a component. Default is false.

    The following example is the definition of addons block, The type of this field is list:

    # install nginx ingress, conflict with ALB ingress
    addons {
    name = "nginx-ingress-controller"
    # use internet
    config = "{\"IngressSlbNetworkType\":\"internet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    # if use intranet, detail below.
    # config = "{\"IngressSlbNetworkType\":\"intranet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    }
    # install ALB ingress, conflict with nginx ingress
    addons {
    name = "alb-ingress-controller"
    }
    # install metric server
    addons {
    name = "metrics-server"
    }
    # install knative
    addons {
    name = "knative"
    }
    # install prometheus
    addons {
    name = "arms-prometheus"
    }
    
    Name string
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    Version string
    It specifies the version of the component.
    Config string
    The ACK add-on configurations. For more config information, see cs_kubernetes_addon_metadata.
    Disabled bool

    Disables the automatic installation of a component. Default is false.

    The following example is the definition of addons block, The type of this field is list:

    # install nginx ingress, conflict with ALB ingress
    addons {
    name = "nginx-ingress-controller"
    # use internet
    config = "{\"IngressSlbNetworkType\":\"internet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    # if use intranet, detail below.
    # config = "{\"IngressSlbNetworkType\":\"intranet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    }
    # install ALB ingress, conflict with nginx ingress
    addons {
    name = "alb-ingress-controller"
    }
    # install metric server
    addons {
    name = "metrics-server"
    }
    # install knative
    addons {
    name = "knative"
    }
    # install prometheus
    addons {
    name = "arms-prometheus"
    }
    
    Name string
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    Version string
    It specifies the version of the component.
    config String
    The ACK add-on configurations. For more config information, see cs_kubernetes_addon_metadata.
    disabled Boolean

    Disables the automatic installation of a component. Default is false.

    The following example is the definition of addons block, The type of this field is list:

    # install nginx ingress, conflict with ALB ingress
    addons {
    name = "nginx-ingress-controller"
    # use internet
    config = "{\"IngressSlbNetworkType\":\"internet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    # if use intranet, detail below.
    # config = "{\"IngressSlbNetworkType\":\"intranet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    }
    # install ALB ingress, conflict with nginx ingress
    addons {
    name = "alb-ingress-controller"
    }
    # install metric server
    addons {
    name = "metrics-server"
    }
    # install knative
    addons {
    name = "knative"
    }
    # install prometheus
    addons {
    name = "arms-prometheus"
    }
    
    name String
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    version String
    It specifies the version of the component.
    config string
    The ACK add-on configurations. For more config information, see cs_kubernetes_addon_metadata.
    disabled boolean

    Disables the automatic installation of a component. Default is false.

    The following example is the definition of addons block, The type of this field is list:

    # install nginx ingress, conflict with ALB ingress
    addons {
    name = "nginx-ingress-controller"
    # use internet
    config = "{\"IngressSlbNetworkType\":\"internet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    # if use intranet, detail below.
    # config = "{\"IngressSlbNetworkType\":\"intranet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    }
    # install ALB ingress, conflict with nginx ingress
    addons {
    name = "alb-ingress-controller"
    }
    # install metric server
    addons {
    name = "metrics-server"
    }
    # install knative
    addons {
    name = "knative"
    }
    # install prometheus
    addons {
    name = "arms-prometheus"
    }
    
    name string
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    version string
    It specifies the version of the component.
    config str
    The ACK add-on configurations. For more config information, see cs_kubernetes_addon_metadata.
    disabled bool

    Disables the automatic installation of a component. Default is false.

    The following example is the definition of addons block, The type of this field is list:

    # install nginx ingress, conflict with ALB ingress
    addons {
    name = "nginx-ingress-controller"
    # use internet
    config = "{\"IngressSlbNetworkType\":\"internet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    # if use intranet, detail below.
    # config = "{\"IngressSlbNetworkType\":\"intranet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    }
    # install ALB ingress, conflict with nginx ingress
    addons {
    name = "alb-ingress-controller"
    }
    # install metric server
    addons {
    name = "metrics-server"
    }
    # install knative
    addons {
    name = "knative"
    }
    # install prometheus
    addons {
    name = "arms-prometheus"
    }
    
    name str
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    version str
    It specifies the version of the component.
    config String
    The ACK add-on configurations. For more config information, see cs_kubernetes_addon_metadata.
    disabled Boolean

    Disables the automatic installation of a component. Default is false.

    The following example is the definition of addons block, The type of this field is list:

    # install nginx ingress, conflict with ALB ingress
    addons {
    name = "nginx-ingress-controller"
    # use internet
    config = "{\"IngressSlbNetworkType\":\"internet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    # if use intranet, detail below.
    # config = "{\"IngressSlbNetworkType\":\"intranet",\"IngressSlbSpec\":\"slb.s2.small\"}"
    }
    # install ALB ingress, conflict with nginx ingress
    addons {
    name = "alb-ingress-controller"
    }
    # install metric server
    addons {
    name = "metrics-server"
    }
    # install knative
    addons {
    name = "knative"
    }
    # install prometheus
    addons {
    name = "arms-prometheus"
    }
    
    name String
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    version String
    It specifies the version of the component.

    ServerlessKubernetesDeleteOption, ServerlessKubernetesDeleteOptionArgs

    DeleteMode string
    The deletion mode of the cluster. Different resources may have different default behavior, see resource_type for details. Valid values:
    ResourceType string
    The type of resources that are created by cluster. Valid values:

    • SLB: SLB resources created by the Nginx Ingress Service, default behavior is to delete, option to retain is available.
    • ALB: ALB resources created by the ALB Ingress Controller, default behavior is to retain, option to delete is available.
    • SLS_Data: SLS Project used by the cluster logging feature, default behavior is to retain, option to delete is available.
    • SLS_ControlPlane: SLS Project used for the managed cluster control plane logs, default behavior is to retain, option to delete is available.
    • PrivateZone: PrivateZone resources created by the cluster, default behavior is to retain, option to delete is available.
    ...
    // Specify delete_options as below when deleting cluster
    // delete SLB resources created by the Nginx Ingress Service
    delete_options {
    delete_mode = "delete"
    resource_type = "SLB"
    }
    // delete ALB resources created by the ALB Ingress Controller
    delete_options {
    delete_mode = "delete"
    resource_type = "ALB"
    }
    // delete SLS Project used by the cluster logging feature
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_Data"
    }
    // delete SLS Project used for the managed cluster control plane logs
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_ControlPlane"
    }
    // delete PrivateZone resources created by the cluster
    delete_options {
    delete_mode = "delete"
    resource_type = "PrivateZone"
    }
    
    DeleteMode string
    The deletion mode of the cluster. Different resources may have different default behavior, see resource_type for details. Valid values:
    ResourceType string
    The type of resources that are created by cluster. Valid values:

    • SLB: SLB resources created by the Nginx Ingress Service, default behavior is to delete, option to retain is available.
    • ALB: ALB resources created by the ALB Ingress Controller, default behavior is to retain, option to delete is available.
    • SLS_Data: SLS Project used by the cluster logging feature, default behavior is to retain, option to delete is available.
    • SLS_ControlPlane: SLS Project used for the managed cluster control plane logs, default behavior is to retain, option to delete is available.
    • PrivateZone: PrivateZone resources created by the cluster, default behavior is to retain, option to delete is available.
    ...
    // Specify delete_options as below when deleting cluster
    // delete SLB resources created by the Nginx Ingress Service
    delete_options {
    delete_mode = "delete"
    resource_type = "SLB"
    }
    // delete ALB resources created by the ALB Ingress Controller
    delete_options {
    delete_mode = "delete"
    resource_type = "ALB"
    }
    // delete SLS Project used by the cluster logging feature
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_Data"
    }
    // delete SLS Project used for the managed cluster control plane logs
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_ControlPlane"
    }
    // delete PrivateZone resources created by the cluster
    delete_options {
    delete_mode = "delete"
    resource_type = "PrivateZone"
    }
    
    deleteMode String
    The deletion mode of the cluster. Different resources may have different default behavior, see resource_type for details. Valid values:
    resourceType String
    The type of resources that are created by cluster. Valid values:

    • SLB: SLB resources created by the Nginx Ingress Service, default behavior is to delete, option to retain is available.
    • ALB: ALB resources created by the ALB Ingress Controller, default behavior is to retain, option to delete is available.
    • SLS_Data: SLS Project used by the cluster logging feature, default behavior is to retain, option to delete is available.
    • SLS_ControlPlane: SLS Project used for the managed cluster control plane logs, default behavior is to retain, option to delete is available.
    • PrivateZone: PrivateZone resources created by the cluster, default behavior is to retain, option to delete is available.
    ...
    // Specify delete_options as below when deleting cluster
    // delete SLB resources created by the Nginx Ingress Service
    delete_options {
    delete_mode = "delete"
    resource_type = "SLB"
    }
    // delete ALB resources created by the ALB Ingress Controller
    delete_options {
    delete_mode = "delete"
    resource_type = "ALB"
    }
    // delete SLS Project used by the cluster logging feature
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_Data"
    }
    // delete SLS Project used for the managed cluster control plane logs
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_ControlPlane"
    }
    // delete PrivateZone resources created by the cluster
    delete_options {
    delete_mode = "delete"
    resource_type = "PrivateZone"
    }
    
    deleteMode string
    The deletion mode of the cluster. Different resources may have different default behavior, see resource_type for details. Valid values:
    resourceType string
    The type of resources that are created by cluster. Valid values:

    • SLB: SLB resources created by the Nginx Ingress Service, default behavior is to delete, option to retain is available.
    • ALB: ALB resources created by the ALB Ingress Controller, default behavior is to retain, option to delete is available.
    • SLS_Data: SLS Project used by the cluster logging feature, default behavior is to retain, option to delete is available.
    • SLS_ControlPlane: SLS Project used for the managed cluster control plane logs, default behavior is to retain, option to delete is available.
    • PrivateZone: PrivateZone resources created by the cluster, default behavior is to retain, option to delete is available.
    ...
    // Specify delete_options as below when deleting cluster
    // delete SLB resources created by the Nginx Ingress Service
    delete_options {
    delete_mode = "delete"
    resource_type = "SLB"
    }
    // delete ALB resources created by the ALB Ingress Controller
    delete_options {
    delete_mode = "delete"
    resource_type = "ALB"
    }
    // delete SLS Project used by the cluster logging feature
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_Data"
    }
    // delete SLS Project used for the managed cluster control plane logs
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_ControlPlane"
    }
    // delete PrivateZone resources created by the cluster
    delete_options {
    delete_mode = "delete"
    resource_type = "PrivateZone"
    }
    
    delete_mode str
    The deletion mode of the cluster. Different resources may have different default behavior, see resource_type for details. Valid values:
    resource_type str
    The type of resources that are created by cluster. Valid values:

    • SLB: SLB resources created by the Nginx Ingress Service, default behavior is to delete, option to retain is available.
    • ALB: ALB resources created by the ALB Ingress Controller, default behavior is to retain, option to delete is available.
    • SLS_Data: SLS Project used by the cluster logging feature, default behavior is to retain, option to delete is available.
    • SLS_ControlPlane: SLS Project used for the managed cluster control plane logs, default behavior is to retain, option to delete is available.
    • PrivateZone: PrivateZone resources created by the cluster, default behavior is to retain, option to delete is available.
    ...
    // Specify delete_options as below when deleting cluster
    // delete SLB resources created by the Nginx Ingress Service
    delete_options {
    delete_mode = "delete"
    resource_type = "SLB"
    }
    // delete ALB resources created by the ALB Ingress Controller
    delete_options {
    delete_mode = "delete"
    resource_type = "ALB"
    }
    // delete SLS Project used by the cluster logging feature
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_Data"
    }
    // delete SLS Project used for the managed cluster control plane logs
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_ControlPlane"
    }
    // delete PrivateZone resources created by the cluster
    delete_options {
    delete_mode = "delete"
    resource_type = "PrivateZone"
    }
    
    deleteMode String
    The deletion mode of the cluster. Different resources may have different default behavior, see resource_type for details. Valid values:
    resourceType String
    The type of resources that are created by cluster. Valid values:

    • SLB: SLB resources created by the Nginx Ingress Service, default behavior is to delete, option to retain is available.
    • ALB: ALB resources created by the ALB Ingress Controller, default behavior is to retain, option to delete is available.
    • SLS_Data: SLS Project used by the cluster logging feature, default behavior is to retain, option to delete is available.
    • SLS_ControlPlane: SLS Project used for the managed cluster control plane logs, default behavior is to retain, option to delete is available.
    • PrivateZone: PrivateZone resources created by the cluster, default behavior is to retain, option to delete is available.
    ...
    // Specify delete_options as below when deleting cluster
    // delete SLB resources created by the Nginx Ingress Service
    delete_options {
    delete_mode = "delete"
    resource_type = "SLB"
    }
    // delete ALB resources created by the ALB Ingress Controller
    delete_options {
    delete_mode = "delete"
    resource_type = "ALB"
    }
    // delete SLS Project used by the cluster logging feature
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_Data"
    }
    // delete SLS Project used for the managed cluster control plane logs
    delete_options {
    delete_mode = "delete"
    resource_type = "SLS_ControlPlane"
    }
    // delete PrivateZone resources created by the cluster
    delete_options {
    delete_mode = "delete"
    resource_type = "PrivateZone"
    }
    

    ServerlessKubernetesRrsaMetadata, ServerlessKubernetesRrsaMetadataArgs

    Enabled bool
    Whether the RRSA feature has been enabled.
    RamOidcProviderArn string
    The arn of OIDC provider that was registered in RAM.
    RamOidcProviderName string
    The name of OIDC Provider that was registered in RAM.
    RrsaOidcIssuerUrl string
    The issuer URL of RRSA OIDC Token.
    Enabled bool
    Whether the RRSA feature has been enabled.
    RamOidcProviderArn string
    The arn of OIDC provider that was registered in RAM.
    RamOidcProviderName string
    The name of OIDC Provider that was registered in RAM.
    RrsaOidcIssuerUrl string
    The issuer URL of RRSA OIDC Token.
    enabled Boolean
    Whether the RRSA feature has been enabled.
    ramOidcProviderArn String
    The arn of OIDC provider that was registered in RAM.
    ramOidcProviderName String
    The name of OIDC Provider that was registered in RAM.
    rrsaOidcIssuerUrl String
    The issuer URL of RRSA OIDC Token.
    enabled boolean
    Whether the RRSA feature has been enabled.
    ramOidcProviderArn string
    The arn of OIDC provider that was registered in RAM.
    ramOidcProviderName string
    The name of OIDC Provider that was registered in RAM.
    rrsaOidcIssuerUrl string
    The issuer URL of RRSA OIDC Token.
    enabled bool
    Whether the RRSA feature has been enabled.
    ram_oidc_provider_arn str
    The arn of OIDC provider that was registered in RAM.
    ram_oidc_provider_name str
    The name of OIDC Provider that was registered in RAM.
    rrsa_oidc_issuer_url str
    The issuer URL of RRSA OIDC Token.
    enabled Boolean
    Whether the RRSA feature has been enabled.
    ramOidcProviderArn String
    The arn of OIDC provider that was registered in RAM.
    ramOidcProviderName String
    The name of OIDC Provider that was registered in RAM.
    rrsaOidcIssuerUrl String
    The issuer URL of RRSA OIDC Token.

    Import

    Serverless Kubernetes cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of pulumi preview.

    $ pulumi import alicloud:cs/serverlessKubernetes:ServerlessKubernetes main ce4273f9156874b46bb
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the alicloud Terraform Provider.
    alicloud logo
    Alibaba Cloud v3.62.1 published on Monday, Sep 16, 2024 by Pulumi