KxCluster

class KxCluster : KotlinCustomResource

Resource for managing an AWS FinSpace Kx Cluster.

Example Usage

Basic Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.finspace.KxCluster;
import com.pulumi.aws.finspace.KxClusterArgs;
import com.pulumi.aws.finspace.inputs.KxClusterCapacityConfigurationArgs;
import com.pulumi.aws.finspace.inputs.KxClusterVpcConfigurationArgs;
import com.pulumi.aws.finspace.inputs.KxClusterCacheStorageConfigurationArgs;
import com.pulumi.aws.finspace.inputs.KxClusterDatabaseArgs;
import com.pulumi.aws.finspace.inputs.KxClusterCodeArgs;
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) {
var example = new KxCluster("example", KxClusterArgs.builder()
.name("my-tf-kx-cluster")
.environmentId(exampleAwsFinspaceKxEnvironment.id())
.type("HDB")
.releaseLabel("1.0")
.azMode("SINGLE")
.availabilityZoneId("use1-az2")
.capacityConfiguration(KxClusterCapacityConfigurationArgs.builder()
.nodeType("kx.s.2xlarge")
.nodeCount(2)
.build())
.vpcConfiguration(KxClusterVpcConfigurationArgs.builder()
.vpcId(test.id())
.securityGroupIds(exampleAwsSecurityGroup.id())
.subnetIds(exampleAwsSubnet.id())
.ipAddressType("IP_V4")
.build())
.cacheStorageConfigurations(KxClusterCacheStorageConfigurationArgs.builder()
.type("CACHE_1000")
.size(1200)
.build())
.databases(KxClusterDatabaseArgs.builder()
.databaseName(exampleAwsFinspaceKxDatabase.name())
.cacheConfiguration(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
.build())
.code(KxClusterCodeArgs.builder()
.s3Bucket(testAwsS3Bucket.id())
.s3Key(object.key())
.build())
.build());
}
}
resources:
example:
type: aws:finspace:KxCluster
properties:
name: my-tf-kx-cluster
environmentId: ${exampleAwsFinspaceKxEnvironment.id}
type: HDB
releaseLabel: '1.0'
azMode: SINGLE
availabilityZoneId: use1-az2
capacityConfiguration:
nodeType: kx.s.2xlarge
nodeCount: 2
vpcConfiguration:
vpcId: ${test.id}
securityGroupIds:
- ${exampleAwsSecurityGroup.id}
subnetIds:
- ${exampleAwsSubnet.id}
ipAddressType: IP_V4
cacheStorageConfigurations:
- type: CACHE_1000
size: 1200
databases:
- databaseName: ${exampleAwsFinspaceKxDatabase.name}
cacheConfiguration:
- cacheType: CACHE_1000
dbPaths: /
code:
s3Bucket: ${testAwsS3Bucket.id}
s3Key: ${object.key}

Import

Using pulumi import, import an AWS FinSpace Kx Cluster using the id (environment ID and cluster name, comma-delimited). For example:

$ pulumi import aws:finspace/kxCluster:KxCluster example n3ceo7wqxoxcti5tujqwzs,my-tf-kx-cluster

Properties

Link copied to clipboard
val arn: Output<String>

Amazon Resource Name (ARN) identifier of the KX cluster.

Link copied to clipboard

Configuration based on which FinSpace will scale in or scale out nodes in your cluster. See auto_scaling_configuration.

Link copied to clipboard

The availability zone identifiers for the requested regions. Required when az_mode is set to SINGLE.

Link copied to clipboard
val azMode: Output<String>

The number of availability zones you want to assign per cluster. This can be one of the following:

Link copied to clipboard

Configurations for a read only cache storage associated with a cluster. This cache will be stored as an FSx Lustre that reads from the S3 store. See cache_storage_configuration.

Link copied to clipboard

Structure for the metadata of a cluster. Includes information like the CPUs needed, memory of instances, and number of instances. See capacity_configuration.

Link copied to clipboard
val code: Output<KxClusterCode>?

Details of the custom code that you want to use inside a cluster when analyzing data. Consists of the S3 source bucket, location, object version, and the relative path from where the custom code is loaded into the cluster. See code.

Link copied to clipboard

List of key-value pairs to make available inside the cluster.

Link copied to clipboard

Timestamp at which the cluster is created in FinSpace. Value determined as epoch time in seconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000.

Link copied to clipboard

KX database that will be available for querying. Defined below.

Link copied to clipboard
val description: Output<String>?

Description of the cluster.

Link copied to clipboard
val environmentId: Output<String>

Unique identifier for the KX environment.

Link copied to clipboard
val executionRole: Output<String>?

An IAM role that defines a set of permissions associated with a cluster. These permissions are assumed when a cluster attempts to access another cluster.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

Path to Q program that will be run at launch of a cluster. This is a relative path within .zip file that contains the custom code, which will be loaded on the cluster. It must include the file name itself. For example, somedir/init.q.

Link copied to clipboard

Last timestamp at which the cluster was updated in FinSpace. Value determined as epoch time in seconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000.

Link copied to clipboard
val name: Output<String>

Unique name for the cluster that you want to create.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val releaseLabel: Output<String>

Version of FinSpace Managed kdb to run.

Link copied to clipboard

Size and type of the temporary storage that is used to hold data during the savedown process. This parameter is required when you choose type as RDB. All the data written to this storage space is lost when the cluster node is restarted. See savedown_storage_configuration.

Link copied to clipboard

The structure that stores the configuration details of a scaling group.

Link copied to clipboard
val status: Output<String>
Link copied to clipboard
val statusReason: Output<String>
Link copied to clipboard
val tags: Output<Map<String, String>>?

Key-value mapping of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val tagsAll: Output<Map<String, String>>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Link copied to clipboard

A configuration to store Tickerplant logs. It consists of a list of volumes that will be mounted to your cluster. For the cluster type Tickerplant , the location of the TP volume on the cluster will be available by using the global variable .aws.tp_log_path.

Link copied to clipboard
val type: Output<String>

Type of KDB database. The following types are available:

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard

Configuration details about the network where the Privatelink endpoint of the cluster resides. See vpc_configuration. The following arguments are optional: