1. Packages
  2. Alibaba Cloud
  3. API Docs
  4. cs
  5. ServerlessKubernetes
Alibaba Cloud v3.51.0 published on Saturday, Mar 23, 2024 by Pulumi

alicloud.cs.ServerlessKubernetes

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.51.0 published on Saturday, Mar 23, 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.

    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";
    const defaultZones = alicloud.getZones({
        availableResourceCreation: "VSwitch",
    });
    const defaultNetwork = new alicloud.vpc.Network("defaultNetwork", {
        vpcName: name,
        cidrBlock: "10.1.0.0/21",
    });
    const defaultSwitch = new alicloud.vpc.Switch("defaultSwitch", {
        vswitchName: name,
        vpcId: defaultNetwork.id,
        cidrBlock: "10.1.1.0/24",
        zoneId: defaultZones.then(defaultZones => defaultZones.zones?.[0]?.id),
    });
    const serverless = new alicloud.cs.ServerlessKubernetes("serverless", {
        namePrefix: name,
        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",
            },
        ],
    });
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    config = pulumi.Config()
    name = config.get("name")
    if name is None:
        name = "ask-example"
    default_zones = alicloud.get_zones(available_resource_creation="VSwitch")
    default_network = alicloud.vpc.Network("defaultNetwork",
        vpc_name=name,
        cidr_block="10.1.0.0/21")
    default_switch = alicloud.vpc.Switch("defaultSwitch",
        vswitch_name=name,
        vpc_id=default_network.id,
        cidr_block="10.1.1.0/24",
        zone_id=default_zones.zones[0].id)
    serverless = alicloud.cs.ServerlessKubernetes("serverless",
        name_prefix=name,
        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=[
            alicloud.cs.ServerlessKubernetesAddonArgs(
                name="alb-ingress-controller",
            ),
            alicloud.cs.ServerlessKubernetesAddonArgs(
                name="metrics-server",
            ),
            alicloud.cs.ServerlessKubernetesAddonArgs(
                name="knative",
            ),
        ])
    
    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"
    		if param := cfg.Get("name"); param != "" {
    			name = param
    		}
    		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
    			AvailableResourceCreation: pulumi.StringRef("VSwitch"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
    			VpcName:   pulumi.String(name),
    			CidrBlock: pulumi.String("10.1.0.0/21"),
    		})
    		if err != nil {
    			return err
    		}
    		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
    			VswitchName: pulumi.String(name),
    			VpcId:       defaultNetwork.ID(),
    			CidrBlock:   pulumi.String("10.1.1.0/24"),
    			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = cs.NewServerlessKubernetes(ctx, "serverless", &cs.ServerlessKubernetesArgs{
    			NamePrefix: pulumi.String(name),
    			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.Map{
    				"k-aa": pulumi.Any("v-aa"),
    				"k-bb": pulumi.Any("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"),
    				},
    			},
    		})
    		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";
        var defaultZones = AliCloud.GetZones.Invoke(new()
        {
            AvailableResourceCreation = "VSwitch",
        });
    
        var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new()
        {
            VpcName = name,
            CidrBlock = "10.1.0.0/21",
        });
    
        var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new()
        {
            VswitchName = name,
            VpcId = defaultNetwork.Id,
            CidrBlock = "10.1.1.0/24",
            ZoneId = defaultZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
        });
    
        var serverless = new AliCloud.CS.ServerlessKubernetes("serverless", new()
        {
            NamePrefix = name,
            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",
                },
            },
        });
    
    });
    
    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");
            final var defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
                .availableResourceCreation("VSwitch")
                .build());
    
            var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()        
                .vpcName(name)
                .cidrBlock("10.1.0.0/21")
                .build());
    
            var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()        
                .vswitchName(name)
                .vpcId(defaultNetwork.id())
                .cidrBlock("10.1.1.0/24")
                .zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                .build());
    
            var serverless = new ServerlessKubernetes("serverless", ServerlessKubernetesArgs.builder()        
                .namePrefix(name)
                .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())
                .build());
    
        }
    }
    
    configuration:
      name:
        type: string
        default: ask-example
    resources:
      defaultNetwork:
        type: alicloud:vpc:Network
        properties:
          vpcName: ${name}
          cidrBlock: 10.1.0.0/21
      defaultSwitch:
        type: alicloud:vpc:Switch
        properties:
          vswitchName: ${name}
          vpcId: ${defaultNetwork.id}
          cidrBlock: 10.1.1.0/24
          zoneId: ${defaultZones.zones[0].id}
      serverless:
        type: alicloud:cs:ServerlessKubernetes
        properties:
          namePrefix: ${name}
          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
          # Enable log service, A project named k8s-log-{ClusterID} will be automatically created
          loggingType: SLS # Select an existing sls project
          #   # sls_project_name             = ""
          # tags
          tags:
            k-aa: v-aa
            k-bb: v-aa
          # addons
          addons:
            - name: alb-ingress-controller
            - name: metrics-server
            - name: knative
    variables:
      defaultZones:
        fn::invoke:
          Function: alicloud:getZones
          Arguments:
            availableResourceCreation: VSwitch
    

    Create ServerlessKubernetes Resource

    new ServerlessKubernetes(name: string, args: ServerlessKubernetesArgs, opts?: CustomResourceOptions);
    @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,
                             create_v2_cluster: Optional[bool] = None,
                             deletion_protection: Optional[bool] = None,
                             enable_rrsa: Optional[bool] = None,
                             endpoint_public_access_enabled: Optional[bool] = None,
                             force_update: 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, Any]] = None,
                             time_zone: Optional[str] = None,
                             version: Optional[str] = None,
                             vpc_id: Optional[str] = None,
                             vswitch_id: Optional[str] = None,
                             vswitch_ids: Optional[Sequence[str]] = None,
                             zone_id: Optional[str] = None)
    @overload
    def ServerlessKubernetes(resource_name: str,
                             args: ServerlessKubernetesArgs,
                             opts: Optional[ResourceOptions] = None)
    func NewServerlessKubernetes(ctx *Context, name string, args ServerlessKubernetesArgs, opts ...ResourceOption) (*ServerlessKubernetes, error)
    public ServerlessKubernetes(string name, ServerlessKubernetesArgs args, 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.
    
    
    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.

    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:

    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.
    Addons List<Pulumi.AliCloud.CS.Inputs.ServerlessKubernetesAddon>
    You can specific network plugin,log component,ingress component and so on. See addons below.
    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.
    CreateV2Cluster bool

    whether to create a v2 version cluster.

    Removed params

    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.
    ForceUpdate bool
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    LoggingType string
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    Tags Dictionary<string, object>
    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.
    VswitchId string
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    Addons []ServerlessKubernetesAddonArgs
    You can specific network plugin,log component,ingress component and so on. See addons below.
    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.
    CreateV2Cluster bool

    whether to create a v2 version cluster.

    Removed params

    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.
    ForceUpdate bool
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    LoggingType string
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    Tags map[string]interface{}
    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.
    VswitchId string
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    addons List<ServerlessKubernetesAddon>
    You can specific network plugin,log component,ingress component and so on. See addons below.
    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.
    createV2Cluster Boolean

    whether to create a v2 version cluster.

    Removed params

    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.
    forceUpdate Boolean
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    loggingType String
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    tags Map<String,Object>
    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.
    vswitchId String
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    addons ServerlessKubernetesAddon[]
    You can specific network plugin,log component,ingress component and so on. See addons below.
    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.
    createV2Cluster boolean

    whether to create a v2 version cluster.

    Removed params

    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.
    forceUpdate boolean
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    loggingType string
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    tags {[key: string]: any}
    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.
    vswitchId string
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    addons Sequence[ServerlessKubernetesAddonArgs]
    You can specific network plugin,log component,ingress component and so on. See addons below.
    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.
    create_v2_cluster bool

    whether to create a v2 version cluster.

    Removed params

    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.
    force_update bool
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    logging_type str
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    tags Mapping[str, Any]
    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.
    vswitch_id str
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    addons List<Property Map>
    You can specific network plugin,log component,ingress component and so on. See addons below.
    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.
    createV2Cluster Boolean

    whether to create a v2 version cluster.

    Removed params

    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.
    forceUpdate Boolean
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    loggingType String
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    tags Map<Any>
    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.
    vswitchId String
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    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,
            create_v2_cluster: Optional[bool] = None,
            deletion_protection: Optional[bool] = None,
            enable_rrsa: Optional[bool] = None,
            endpoint_public_access_enabled: Optional[bool] = None,
            force_update: 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, Any]] = None,
            time_zone: Optional[str] = None,
            version: Optional[str] = None,
            vpc_id: Optional[str] = None,
            vswitch_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.
    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.
    CreateV2Cluster bool

    whether to create a v2 version cluster.

    Removed params

    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.
    ForceUpdate bool
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    LoggingType string
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    Tags Dictionary<string, object>
    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.
    VswitchId string
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    CreateV2Cluster bool

    whether to create a v2 version cluster.

    Removed params

    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.
    ForceUpdate bool
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    LoggingType string
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    Tags map[string]interface{}
    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.
    VswitchId string
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    createV2Cluster Boolean

    whether to create a v2 version cluster.

    Removed params

    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.
    forceUpdate Boolean
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    loggingType String
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    tags Map<String,Object>
    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.
    vswitchId String
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    createV2Cluster boolean

    whether to create a v2 version cluster.

    Removed params

    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.
    forceUpdate boolean
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    loggingType string
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    tags {[key: string]: any}
    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.
    vswitchId string
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    create_v2_cluster bool

    whether to create a v2 version cluster.

    Removed params

    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.
    force_update bool
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    logging_type str
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    tags Mapping[str, Any]
    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_id str
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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.
    createV2Cluster Boolean

    whether to create a v2 version cluster.

    Removed params

    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.
    forceUpdate Boolean
    Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.
    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.
    loggingType String
    Enable log service, Valid value SLS.
    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. See rrsa_metadata below.
    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. 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.
    tags Map<Any>
    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.
    vswitchId String
    The vswitch where new kubernetes cluster will be located. Specify one vswitch's id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

    Deprecated:Field 'vswitch_id' has been deprecated from provider version 1.91.0. New field 'vswitch_ids' replace it.

    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.
    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:

    Name string
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    Config string
    The ACK add-on configurations.
    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:

    Name string
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    config String
    The ACK add-on configurations.
    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:

    name String
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    config string
    The ACK add-on configurations.
    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:

    name string
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    config str
    The ACK add-on configurations.
    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:

    name str
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.
    config String
    The ACK add-on configurations.
    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:

    name String
    Name of the ACK add-on. The name must match one of the names returned by DescribeAddons.

    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
    

    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.51.0 published on Saturday, Mar 23, 2024 by Pulumi