Package com.pulumi.aws.finspace
Class KxCluster
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.finspace.KxCluster
-
public class KxCluster extends com.pulumi.resources.CustomResourceResource for managing an AWS FinSpace Kx Cluster. ## Example Usage ### Basic Usage
## Import Using `pulumi import`, import an AWS FinSpace Kx Cluster using the `id` (environment ID and cluster name, comma-delimited). For example: ```sh $ pulumi import aws:finspace/kxCluster:KxCluster example n3ceo7wqxoxcti5tujqwzs,my-tf-kx-cluster ```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.KxClusterCodeArgs; import com.pulumi.aws.finspace.inputs.KxClusterCacheStorageConfigurationArgs; import com.pulumi.aws.finspace.inputs.KxClusterDatabaseArgs; import com.pulumi.resources.CustomResourceOptions; import com.pulumi.resources.CustomTimeouts; import java.util.ArrayList; import java.util.Arrays; 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() .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()) .code(KxClusterCodeArgs.builder() .s3Bucket(testAwsS3Bucket.id()) .s3Key(object.key()) .build()) .cacheStorageConfigurations(KxClusterCacheStorageConfigurationArgs.builder() .type("CACHE_1000") .size(1200) .build()) .databases(KxClusterDatabaseArgs.builder() .cacheConfiguration(Arrays.asList(Map.ofEntries( Map.entry("cacheType", "CACHE_1000"), Map.entry("dbPaths", "/") ))) .databaseName(exampleAwsFinspaceKxDatabase.name()) .build()) .name("my-tf-kx-cluster") .environmentId(exampleAwsFinspaceKxEnvironment.id()) .type("HDB") .releaseLabel("1.0") .azMode("SINGLE") .availabilityZoneId("use1-az2") .build(), CustomResourceOptions.builder() .customTimeouts(CustomTimeouts.builder() .create(CustomTimeouts.parseTimeoutString("18h")) .update(CustomTimeouts.parseTimeoutString("18h")) .build()) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description KxCluster(java.lang.String name)KxCluster(java.lang.String name, KxClusterArgs args)KxCluster(java.lang.String name, KxClusterArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.lang.String>arn()com.pulumi.core.Output<java.util.Optional<KxClusterAutoScalingConfiguration>>autoScalingConfiguration()com.pulumi.core.Output<java.util.Optional<java.lang.String>>availabilityZoneId()com.pulumi.core.Output<java.lang.String>azMode()com.pulumi.core.Output<java.util.Optional<java.util.List<KxClusterCacheStorageConfiguration>>>cacheStorageConfigurations()com.pulumi.core.Output<java.util.Optional<KxClusterCapacityConfiguration>>capacityConfiguration()com.pulumi.core.Output<java.util.Optional<KxClusterCode>>code()com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>commandLineArguments()com.pulumi.core.Output<java.lang.String>createdTimestamp()com.pulumi.core.Output<java.util.Optional<java.util.List<KxClusterDatabase>>>databases()com.pulumi.core.Output<java.util.Optional<java.lang.String>>description()com.pulumi.core.Output<java.lang.String>environmentId()com.pulumi.core.Output<java.util.Optional<java.lang.String>>executionRole()static KxClusterget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, KxClusterState state, com.pulumi.resources.CustomResourceOptions options)Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.util.Optional<java.lang.String>>initializationScript()com.pulumi.core.Output<java.lang.String>lastModifiedTimestamp()com.pulumi.core.Output<java.lang.String>name()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.lang.String>releaseLabel()com.pulumi.core.Output<java.util.Optional<KxClusterSavedownStorageConfiguration>>savedownStorageConfiguration()com.pulumi.core.Output<java.util.Optional<KxClusterScalingGroupConfiguration>>scalingGroupConfiguration()com.pulumi.core.Output<java.lang.String>status()com.pulumi.core.Output<java.lang.String>statusReason()com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>tags()com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>>tagsAll()com.pulumi.core.Output<java.util.Optional<java.util.List<KxClusterTickerplantLogConfiguration>>>tickerplantLogConfigurations()com.pulumi.core.Output<java.lang.String>type()com.pulumi.core.Output<KxClusterVpcConfiguration>vpcConfiguration()
-
-
-
Constructor Detail
-
KxCluster
public KxCluster(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
KxCluster
public KxCluster(java.lang.String name, KxClusterArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
KxCluster
public KxCluster(java.lang.String name, KxClusterArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.options- A bag of options that control this resource's behavior.
-
-
Method Detail
-
arn
public com.pulumi.core.Output<java.lang.String> arn()
- Returns:
- ARN identifier of the KX cluster.
-
autoScalingConfiguration
public com.pulumi.core.Output<java.util.Optional<KxClusterAutoScalingConfiguration>> autoScalingConfiguration()
- Returns:
- Configuration based on which FinSpace will scale in or scale out nodes in your cluster. See `autoScalingConfiguration` Block.
-
availabilityZoneId
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> availabilityZoneId()
- Returns:
- Availability zone identifiers for the requested regions. Required when `azMode` is set to SINGLE.
-
azMode
public com.pulumi.core.Output<java.lang.String> azMode()
- Returns:
- Number of availability zones to assign per cluster. Valid values are `SINGLE` (assigns one availability zone per cluster) and `MULTI` (assigns all the availability zones per cluster).
-
cacheStorageConfigurations
public com.pulumi.core.Output<java.util.Optional<java.util.List<KxClusterCacheStorageConfiguration>>> cacheStorageConfigurations()
- Returns:
- 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 `cacheStorageConfigurations` Block.
-
capacityConfiguration
public com.pulumi.core.Output<java.util.Optional<KxClusterCapacityConfiguration>> capacityConfiguration()
- Returns:
- Structure for the metadata of a cluster. Includes information like the CPUs needed, memory of instances, and number of instances. See `capacityConfiguration` Block.
-
code
public com.pulumi.core.Output<java.util.Optional<KxClusterCode>> code()
- Returns:
- 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` Block.
-
commandLineArguments
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> commandLineArguments()
- Returns:
- List of key-value pairs to make available inside the cluster.
-
createdTimestamp
public com.pulumi.core.Output<java.lang.String> createdTimestamp()
- Returns:
- 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.
-
databases
public com.pulumi.core.Output<java.util.Optional<java.util.List<KxClusterDatabase>>> databases()
- Returns:
- KX database that will be available for querying. See `database` Block.
-
description
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
- Returns:
- Description of the cluster.
-
environmentId
public com.pulumi.core.Output<java.lang.String> environmentId()
- Returns:
- Unique identifier for the KX environment.
-
executionRole
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> executionRole()
- Returns:
- IAM role that defines a set of permissions associated with a cluster. These permissions are assumed when a cluster attempts to access another cluster.
-
initializationScript
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> initializationScript()
- Returns:
- 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.
-
lastModifiedTimestamp
public com.pulumi.core.Output<java.lang.String> lastModifiedTimestamp()
- Returns:
- 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.
-
name
public com.pulumi.core.Output<java.lang.String> name()
- Returns:
- Unique name for the cluster that you want to create.
-
region
public com.pulumi.core.Output<java.lang.String> region()
- Returns:
- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
-
releaseLabel
public com.pulumi.core.Output<java.lang.String> releaseLabel()
- Returns:
- Version of FinSpace Managed kdb to run.
-
savedownStorageConfiguration
public com.pulumi.core.Output<java.util.Optional<KxClusterSavedownStorageConfiguration>> savedownStorageConfiguration()
- Returns:
- 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 `savedownStorageConfiguration` Block.
-
scalingGroupConfiguration
public com.pulumi.core.Output<java.util.Optional<KxClusterScalingGroupConfiguration>> scalingGroupConfiguration()
- Returns:
- Structure that stores the configuration details of a scaling group. See `scalingGroupConfiguration` Block.
-
status
public com.pulumi.core.Output<java.lang.String> status()
- Returns:
- Status of the cluster.
-
statusReason
public com.pulumi.core.Output<java.lang.String> statusReason()
- Returns:
- Reason for the cluster status.
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Key-value mapping of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
-
tagsAll
public com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tagsAll()
- Returns:
- Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
-
tickerplantLogConfigurations
public com.pulumi.core.Output<java.util.Optional<java.util.List<KxClusterTickerplantLogConfiguration>>> tickerplantLogConfigurations()
- Returns:
- 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. See `tickerplantLogConfiguration` Block.
-
type
public com.pulumi.core.Output<java.lang.String> type()
- Returns:
- Type of KDB database. Valid values are `HDB` (Historical Database), `RDB` (Realtime Database, which requires the `savedownStorageConfiguration` parameter), `GATEWAY`, `GP` (general purpose), and `Tickerplant`.
-
vpcConfiguration
public com.pulumi.core.Output<KxClusterVpcConfiguration> vpcConfiguration()
- Returns:
- Configuration details about the network where the Privatelink endpoint of the cluster resides. See `vpcConfiguration` Block. The following arguments are optional:
-
get
public static KxCluster get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable KxClusterState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name- The _unique_ name of the resulting resource.id- The _unique_ provider ID of the resource to lookup.state-options- Optional settings to control the behavior of the CustomResource.
-
-