Package com.pulumi.aws.opensearch
Class ServerlessCollection
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.opensearch.ServerlessCollection
-
public class ServerlessCollection extends com.pulumi.resources.CustomResourceManages an AWS OpenSearch Serverless Collection. > **NOTE:** An `aws.opensearch.ServerlessCollection` must have encryption configured either by an applicable encryption security policy or by setting `encryptionConfig` directly on the resource. > **NOTE:** An `aws.opensearch.ServerlessCollection` is not accessible without configuring an applicable network security policy. Data cannot be accessed without configuring an applicable data access policy. ## Example Usage ### Basic Usage
### With a Collection Group and Direct Encryption Configurationpackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.opensearch.ServerlessSecurityPolicy; import com.pulumi.aws.opensearch.ServerlessSecurityPolicyArgs; import com.pulumi.aws.opensearch.ServerlessCollection; import com.pulumi.aws.opensearch.ServerlessCollectionArgs; import static com.pulumi.codegen.internal.Serialization.*; import com.pulumi.resources.CustomResourceOptions; 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 ServerlessSecurityPolicy("example", ServerlessSecurityPolicyArgs.builder() .name("example") .type("encryption") .policy(serializeJson( jsonObject( jsonProperty("Rules", jsonArray(jsonObject( jsonProperty("Resource", jsonArray("collection/example")), jsonProperty("ResourceType", "collection") ))), jsonProperty("AWSOwnedKey", true) ))) .build()); var exampleServerlessCollection = new ServerlessCollection("exampleServerlessCollection", ServerlessCollectionArgs.builder() .name("example") .build(), CustomResourceOptions.builder() .dependsOn(example) .build()); } }
## Import ### Identity Schema #### Required * `id` (String) Unique identifier for the collection. #### Optional * `accountId` (String) AWS Account where this resource is managed. * `region` (String) Region where this resource is managed. Using `pulumi import`, import OpenSearchServerless Collection using the `id`. For example: ```sh $ pulumi import aws:opensearch/serverlessCollection:ServerlessCollection example example ```package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.kms.Key; import com.pulumi.aws.kms.KeyArgs; import com.pulumi.aws.opensearch.ServerlessCollectionGroup; import com.pulumi.aws.opensearch.ServerlessCollectionGroupArgs; import com.pulumi.aws.opensearch.ServerlessCollection; import com.pulumi.aws.opensearch.ServerlessCollectionArgs; import com.pulumi.aws.opensearch.inputs.ServerlessCollectionEncryptionConfigArgs; 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 Key("example", KeyArgs.builder() .description("example") .deletionWindowInDays(7) .build()); var exampleServerlessCollectionGroup = new ServerlessCollectionGroup("exampleServerlessCollectionGroup", ServerlessCollectionGroupArgs.builder() .name("example-group") .standbyReplicas("ENABLED") .build()); var exampleServerlessCollection = new ServerlessCollection("exampleServerlessCollection", ServerlessCollectionArgs.builder() .encryptionConfigs(ServerlessCollectionEncryptionConfigArgs.builder() .kmsKeyArn(example.arn()) .build()) .name("example") .type("SEARCH") .collectionGroupName(exampleServerlessCollectionGroup.name()) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description ServerlessCollection(java.lang.String name)ServerlessCollection(java.lang.String name, ServerlessCollectionArgs args)ServerlessCollection(java.lang.String name, ServerlessCollectionArgs 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.lang.String>collectionEndpoint()com.pulumi.core.Output<java.util.Optional<java.lang.String>>collectionGroupName()com.pulumi.core.Output<java.lang.String>dashboardEndpoint()com.pulumi.core.Output<java.util.Optional<java.lang.String>>description()com.pulumi.core.Output<java.util.List<ServerlessCollectionEncryptionConfig>>encryptionConfigs()static ServerlessCollectionget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, ServerlessCollectionState 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.lang.String>kmsKeyArn()com.pulumi.core.Output<java.lang.String>name()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.lang.String>standbyReplicas()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<ServerlessCollectionTimeouts>>timeouts()com.pulumi.core.Output<java.lang.String>type()com.pulumi.core.Output<java.util.List<ServerlessCollectionVectorOption>>vectorOptions()
-
-
-
Constructor Detail
-
ServerlessCollection
public ServerlessCollection(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
ServerlessCollection
public ServerlessCollection(java.lang.String name, @Nullable ServerlessCollectionArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
ServerlessCollection
public ServerlessCollection(java.lang.String name, @Nullable ServerlessCollectionArgs 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 of the collection.
-
collectionEndpoint
public com.pulumi.core.Output<java.lang.String> collectionEndpoint()
- Returns:
- Collection-specific endpoint used to submit index, search, and data upload requests to an OpenSearch Serverless collection.
-
collectionGroupName
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> collectionGroupName()
- Returns:
- Name of the collection group to associate with this collection.
-
dashboardEndpoint
public com.pulumi.core.Output<java.lang.String> dashboardEndpoint()
- Returns:
- Collection-specific endpoint used to access OpenSearch Dashboards.
-
description
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
- Returns:
- Description of the collection.
-
encryptionConfigs
public com.pulumi.core.Output<java.util.List<ServerlessCollectionEncryptionConfig>> encryptionConfigs()
- Returns:
- Configuration block for direct collection encryption settings. See `encryptionConfig` below for details.
-
kmsKeyArn
public com.pulumi.core.Output<java.lang.String> kmsKeyArn()
- Returns:
- ARN of the Amazon Web Services KMS key used to encrypt the collection.
-
name
public com.pulumi.core.Output<java.lang.String> name()
- Returns:
- Name of the collection. The following arguments are optional:
-
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.
-
standbyReplicas
public com.pulumi.core.Output<java.lang.String> standbyReplicas()
- Returns:
- Whether standby replicas should be used for a collection. One of `ENABLED` or `DISABLED`. Defaults to `ENABLED`.
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Map of tags assigned to the resource. 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.
-
timeouts
public com.pulumi.core.Output<java.util.Optional<ServerlessCollectionTimeouts>> timeouts()
-
type
public com.pulumi.core.Output<java.lang.String> type()
- Returns:
- Type of collection. One of `SEARCH`, `TIMESERIES`, or `VECTORSEARCH`. Defaults to `TIMESERIES`.
-
vectorOptions
public com.pulumi.core.Output<java.util.List<ServerlessCollectionVectorOption>> vectorOptions()
- Returns:
- Configuration block for vector search options. Only valid when `type` is `VECTORSEARCH`. See `vectorOptions` below for details.
-
get
public static ServerlessCollection get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable ServerlessCollectionState 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.
-
-