getInstanceClasses

This data source provides the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance classes resource available info of Alibaba Cloud.

NOTE: Available since v1.49.0.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const resources = alicloud.getZones({
availableResourceCreation: "KVStore",
});
const resourcesGetInstanceClasses = resources.then(resources => alicloud.kvstore.getInstanceClasses({
zoneId: resources.zones?.[0]?.id,
instanceChargeType: "PrePaid",
engine: "Redis",
engineVersion: "5.0",
outputFile: "./classes.txt",
}));
export const firstKvstoreInstanceClass = resourcesGetInstanceClasses.then(resourcesGetInstanceClasses => resourcesGetInstanceClasses.instanceClasses);
import pulumi
import pulumi_alicloud as alicloud
resources = alicloud.get_zones(available_resource_creation="KVStore")
resources_get_instance_classes = alicloud.kvstore.get_instance_classes(zone_id=resources.zones[0].id,
instance_charge_type="PrePaid",
engine="Redis",
engine_version="5.0",
output_file="./classes.txt")
pulumi.export("firstKvstoreInstanceClass", resources_get_instance_classes.instance_classes)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var resources = AliCloud.GetZones.Invoke(new()
{
AvailableResourceCreation = "KVStore",
});
var resourcesGetInstanceClasses = AliCloud.KVStore.GetInstanceClasses.Invoke(new()
{
ZoneId = resources.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
InstanceChargeType = "PrePaid",
Engine = "Redis",
EngineVersion = "5.0",
OutputFile = "./classes.txt",
});
return new Dictionary<string, object?>
{
["firstKvstoreInstanceClass"] = resourcesGetInstanceClasses.Apply(getInstanceClassesResult => getInstanceClassesResult.InstanceClasses),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/kvstore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
resources, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
AvailableResourceCreation: pulumi.StringRef("KVStore"),
}, nil)
if err != nil {
return err
}
resourcesGetInstanceClasses, err := kvstore.GetInstanceClasses(ctx, &kvstore.GetInstanceClassesArgs{
ZoneId: resources.Zones[0].Id,
InstanceChargeType: pulumi.StringRef("PrePaid"),
Engine: pulumi.StringRef("Redis"),
EngineVersion: pulumi.StringRef("5.0"),
OutputFile: pulumi.StringRef("./classes.txt"),
}, nil)
if err != nil {
return err
}
ctx.Export("firstKvstoreInstanceClass", resourcesGetInstanceClasses.InstanceClasses)
return nil
})
}
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.kvstore.KvstoreFunctions;
import com.pulumi.alicloud.kvstore.inputs.GetInstanceClassesArgs;
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 resources = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("KVStore")
.build());
final var resourcesGetInstanceClasses = KvstoreFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()
.zoneId(resources.zones()[0].id())
.instanceChargeType("PrePaid")
.engine("Redis")
.engineVersion("5.0")
.outputFile("./classes.txt")
.build());
ctx.export("firstKvstoreInstanceClass", resourcesGetInstanceClasses.instanceClasses());
}
}
variables:
resources:
fn::invoke:
function: alicloud:getZones
arguments:
availableResourceCreation: KVStore
resourcesGetInstanceClasses:
fn::invoke:
function: alicloud:kvstore:getInstanceClasses
arguments:
zoneId: ${resources.zones[0].id}
instanceChargeType: PrePaid
engine: Redis
engineVersion: '5.0'
outputFile: ./classes.txt
outputs:
firstKvstoreInstanceClass: ${resourcesGetInstanceClasses.instanceClasses}

Return

A collection of values returned by getInstanceClasses.

Parameters

argument

A collection of arguments for invoking getInstanceClasses.


suspend fun getInstanceClasses(architecture: String? = null, editionType: String? = null, engine: String? = null, engineVersion: String? = null, instanceChargeType: String? = null, nodeType: String? = null, outputFile: String? = null, packageType: String? = null, performanceType: String? = null, productType: String? = null, seriesType: String? = null, shardNumber: Int? = null, sortedBy: String? = null, storageType: String? = null, zoneId: String): GetInstanceClassesResult

Return

A collection of values returned by getInstanceClasses.

Parameters

architecture

The Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance system architecture required by the user. Valid values: standard, cluster and rwsplit.

editionType

The Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance edition type required by the user. Valid values: Community and Enterprise.

engine

Database type. Options are Redis, Memcache. Default to Redis.

engineVersion

Database version required by the user. Value options of Redis can refer to the latest docs detail info EngineVersion. Value of Memcache should be empty.

instanceChargeType

Filter the results by charge type. Valid values: PrePaid and PostPaid. Default to PrePaid.

nodeType

The Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance node type required by the user. Valid values: double, single, readone, readthree and readfive.

outputFile

File name where to save data source results (after running pulumi up).

packageType

It has been deprecated from 1.68.0.

performanceType

It has been deprecated from 1.68.0.

productType

The type of the service. Valid values:

  • Local: a Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance with a local disk.

  • OnECS: a Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance with a standard disk. This type is available only on the Alibaba Cloud China site.

seriesType

The Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance series type required by the user. Valid values: enhanced_performance_type and hybrid_storage.

shardNumber

The number of shard.Valid values: 1, 2, 4, 8, 16, 32, 64, 128, 256.

sortedBy
storageType

It has been deprecated from 1.68.0.

zoneId

The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.

See also


Return

A collection of values returned by getInstanceClasses.

Parameters

argument

Builder for com.pulumi.alicloud.kvstore.kotlin.inputs.GetInstanceClassesPlainArgs.

See also