Sono disponibili altri esempi AWS SDK nel repository AWS Doc SDK Examples. GitHub
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzare CreateDomain con un AWS SDK
Gli esempi di codice seguenti mostrano come utilizzare CreateDomain.
Gli esempi di operazioni sono estratti di codice da programmi più grandi e devono essere eseguiti nel contesto. È possibile visualizzare questa operazione nel contesto nel seguente esempio di codice:
- Java
-
- SDK per Java 2.x
-
/**
* Creates a new OpenSearch domain asynchronously.
* @param domainName the name of the new OpenSearch domain to create
* @return a {@link CompletableFuture} containing the domain ID of the newly created domain
*/
public CompletableFuture<String> createNewDomainAsync(String domainName) {
ClusterConfig clusterConfig = ClusterConfig.builder()
.dedicatedMasterEnabled(true)
.dedicatedMasterCount(3)
.dedicatedMasterType("t2.small.search")
.instanceType("t2.small.search")
.instanceCount(5)
.build();
EBSOptions ebsOptions = EBSOptions.builder()
.ebsEnabled(true)
.volumeSize(10)
.volumeType(VolumeType.GP2)
.build();
NodeToNodeEncryptionOptions encryptionOptions = NodeToNodeEncryptionOptions.builder()
.enabled(true)
.build();
CreateDomainRequest domainRequest = CreateDomainRequest.builder()
.domainName(domainName)
.engineVersion("OpenSearch_1.0")
.clusterConfig(clusterConfig)
.ebsOptions(ebsOptions)
.nodeToNodeEncryptionOptions(encryptionOptions)
.build();
logger.info("Sending domain creation request...");
return getAsyncClient().createDomain(domainRequest)
.handle( (createResponse, throwable) -> {
if (createResponse != null) {
logger.info("Domain status is {}", createResponse.domainStatus().changeProgressDetails().configChangeStatusAsString());
logger.info("Domain Id is {}", createResponse.domainStatus().domainId());
return createResponse.domainStatus().domainId();
}
throw new RuntimeException("Failed to create domain", throwable);
});
}
- Kotlin
-
- SDK per Kotlin
-
suspend fun createNewDomain(domainNameVal: String?) {
val clusterConfigOb =
ClusterConfig {
dedicatedMasterEnabled = true
dedicatedMasterCount = 3
dedicatedMasterType = OpenSearchPartitionInstanceType.fromValue("t2.small.search")
instanceType = OpenSearchPartitionInstanceType.fromValue("t2.small.search")
instanceCount = 5
}
val ebsOptionsOb =
EbsOptions {
ebsEnabled = true
volumeSize = 10
volumeType = VolumeType.Gp2
}
val encryptionOptionsOb =
NodeToNodeEncryptionOptions {
enabled = true
}
val request =
CreateDomainRequest {
domainName = domainNameVal
engineVersion = "OpenSearch_1.0"
clusterConfig = clusterConfigOb
ebsOptions = ebsOptionsOb
nodeToNodeEncryptionOptions = encryptionOptionsOb
}
println("Sending domain creation request...")
OpenSearchClient.fromEnvironment { region = "us-east-1" }.use { searchClient ->
val createResponse = searchClient.createDomain(request)
println("Domain status is ${createResponse.domainStatus}")
println("Domain Id is ${createResponse.domainStatus?.domainId}")
}
}