Kx Cluster Args
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
Constructors
Properties
Configuration based on which FinSpace will scale in or scale out nodes in your cluster. See auto_scaling_configuration.
The availability zone identifiers for the requested regions. Required when az_mode
is set to SINGLE.
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.
Structure for the metadata of a cluster. Includes information like the CPUs needed, memory of instances, and number of instances. See capacity_configuration.
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.
List of key-value pairs to make available inside the cluster.
KX database that will be available for querying. Defined below.
Description of the cluster.
Unique identifier for the KX environment.
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.
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.
Version of FinSpace Managed kdb to run.
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.
The structure that stores the configuration details of a scaling group.
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.
Configuration details about the network where the Privatelink endpoint of the cluster resides. See vpc_configuration. The following arguments are optional: