Package com.pulumi.aws.odb
Class CloudVmCluster
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.odb.CloudVmCluster
-
public class CloudVmCluster extends com.pulumi.resources.CustomResourceTerraform to manage cloud vm cluster resource in AWS for Oracle Database@AWS. If underlying odb network and cloud exadata infrastructure is shared, ARN must be used while creating VM cluster. You can find out more about Oracle Database@AWS from [User Guide](https://docs.aws.amazon.com/odb/latest/UserGuide/what-is-odb.html). ## Example Usage ### Basic Usage
### With Optional Argumentspackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.odb.CloudVmCluster; import com.pulumi.aws.odb.CloudVmClusterArgs; import com.pulumi.aws.odb.inputs.CloudVmClusterDataCollectionOptionsArgs; 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 withMinimumParameter = new CloudVmCluster("withMinimumParameter", CloudVmClusterArgs.builder() .dataCollectionOptions(CloudVmClusterDataCollectionOptionsArgs.builder() .isDiagnosticsEventsEnabled(false) .isHealthMonitoringEnabled(false) .isIncidentLogsEnabled(false) .build()) .displayName("my_vm_cluster") .cloudExadataInfrastructureId("<aws_odb_cloud_exadata_infrastructure_id>") .cpuCoreCount(6) .giVersion("23.0.0.0") .hostnamePrefix("apollo12") .sshPublicKeys("public-ssh-key") .odbNetworkId("<aws_odb_network_id>") .isLocalBackupEnabled(true) .isSparseDiskgroupEnabled(true) .licenseModel("LICENSE_INCLUDED") .dataStorageSizeInTbs(20.0) .dbServers( "db-server-1", "db-server-2") .dbNodeStorageSizeInGbs(120) .memorySizeInGbs(60) .build()); } }
### With GI Version Tagpackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.odb.CloudVmCluster; import com.pulumi.aws.odb.CloudVmClusterArgs; import com.pulumi.aws.odb.inputs.CloudVmClusterDataCollectionOptionsArgs; 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 withAllParameters = new CloudVmCluster("withAllParameters", CloudVmClusterArgs.builder() .dataCollectionOptions(CloudVmClusterDataCollectionOptionsArgs.builder() .isDiagnosticsEventsEnabled(true) .isHealthMonitoringEnabled(true) .isIncidentLogsEnabled(true) .build()) .displayName("my_vm_cluster") .cloudExadataInfrastructureId("<aws_odb_cloud_exadata_infrastructure_id>") .cpuCoreCount(6) .giVersion("23.0.0.0") .hostnamePrefix("apollo12") .sshPublicKeys("my-ssh-key") .odbNetworkId("<aws_odb_network_id>") .isLocalBackupEnabled(true) .isSparseDiskgroupEnabled(true) .licenseModel("LICENSE_INCLUDED") .dataStorageSizeInTbs(20.0) .dbServers( "my-dbserver-1", "my-db-server-2") .dbNodeStorageSizeInGbs(120) .memorySizeInGbs(60) .clusterName("julia-13") .timezone("UTC") .scanListenerPortTcp(1521) .tags(Map.of("env", "dev")) .build()); } }
## Import Using `pulumi import`, import cloud vm cluster using the `id`. For example: ```sh $ pulumi import aws:odb/cloudVmCluster:CloudVmCluster example example ```package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.odb.CloudVmCluster; import com.pulumi.aws.odb.CloudVmClusterArgs; import com.pulumi.aws.odb.inputs.CloudVmClusterDataCollectionOptionsArgs; 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 giVersionTagExample = new CloudVmCluster("giVersionTagExample", CloudVmClusterArgs.builder() .dataCollectionOptions(CloudVmClusterDataCollectionOptionsArgs.builder() .isDiagnosticsEventsEnabled(true) .isHealthMonitoringEnabled(true) .isIncidentLogsEnabled(true) .build()) .displayName("my_vm_cluster") .cloudExadataInfrastructureId("<aws_odb_cloud_exadata_infrastructure_id>") .cpuCoreCount(6) .giVersion("23.0.0.0") .hostnamePrefix("apollo12") .sshPublicKeys("my-ssh-key") .odbNetworkId("<aws_odb_network_id>") .isLocalBackupEnabled(true) .isSparseDiskgroupEnabled(true) .licenseModel("LICENSE_INCLUDED") .dataStorageSizeInTbs(20.0) .dbServers( "my-dbserver-1", "my-db-server-2") .dbNodeStorageSizeInGbs(120) .memorySizeInGbs(60) .clusterName("julia-13") .timezone("UTC") .scanListenerPortTcp(1521) .tags(Map.of("odb:input_gi_version", "23.0.0.0")) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description CloudVmCluster(java.lang.String name)CloudVmCluster(java.lang.String name, CloudVmClusterArgs args)CloudVmCluster(java.lang.String name, CloudVmClusterArgs 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>cloudExadataInfrastructureArn()com.pulumi.core.Output<java.lang.String>cloudExadataInfrastructureId()com.pulumi.core.Output<java.lang.String>clusterName()com.pulumi.core.Output<java.lang.String>computeModel()com.pulumi.core.Output<java.lang.Integer>cpuCoreCount()com.pulumi.core.Output<java.lang.String>createdAt()com.pulumi.core.Output<CloudVmClusterDataCollectionOptions>dataCollectionOptions()com.pulumi.core.Output<java.lang.Double>dataStorageSizeInTbs()com.pulumi.core.Output<java.lang.Integer>dbNodeStorageSizeInGbs()com.pulumi.core.Output<java.util.List<java.lang.String>>dbServers()com.pulumi.core.Output<java.lang.String>diskRedundancy()com.pulumi.core.Output<java.lang.String>displayName()com.pulumi.core.Output<java.lang.String>domain()static CloudVmClusterget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, CloudVmClusterState 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>giVersion()com.pulumi.core.Output<java.lang.String>giVersionComputed()com.pulumi.core.Output<java.lang.String>hostnamePrefix()com.pulumi.core.Output<java.lang.String>hostnamePrefixComputed()com.pulumi.core.Output<java.util.List<CloudVmClusterIormConfigCache>>iormConfigCaches()com.pulumi.core.Output<java.lang.Boolean>isLocalBackupEnabled()com.pulumi.core.Output<java.lang.Boolean>isSparseDiskgroupEnabled()com.pulumi.core.Output<java.lang.String>lastUpdateHistoryEntryId()com.pulumi.core.Output<java.lang.String>licenseModel()com.pulumi.core.Output<java.lang.Integer>listenerPort()com.pulumi.core.Output<java.lang.Integer>memorySizeInGbs()com.pulumi.core.Output<java.lang.Integer>nodeCount()com.pulumi.core.Output<java.lang.String>ocid()com.pulumi.core.Output<java.lang.String>ociResourceAnchorName()com.pulumi.core.Output<java.lang.String>ociUrl()com.pulumi.core.Output<java.lang.String>odbNetworkArn()com.pulumi.core.Output<java.lang.String>odbNetworkId()com.pulumi.core.Output<java.lang.Double>percentProgress()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.lang.String>scanDnsName()com.pulumi.core.Output<java.lang.String>scanDnsRecordId()com.pulumi.core.Output<java.util.List<java.lang.String>>scanIpIds()com.pulumi.core.Output<java.lang.Integer>scanListenerPortTcp()com.pulumi.core.Output<java.lang.String>shape()com.pulumi.core.Output<java.util.List<java.lang.String>>sshPublicKeys()com.pulumi.core.Output<java.lang.String>status()com.pulumi.core.Output<java.lang.String>statusReason()com.pulumi.core.Output<java.lang.Integer>storageSizeInGbs()com.pulumi.core.Output<java.lang.String>systemVersion()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<CloudVmClusterTimeouts>>timeouts()com.pulumi.core.Output<java.lang.String>timezone()com.pulumi.core.Output<java.util.List<java.lang.String>>vipIds()
-
-
-
Constructor Detail
-
CloudVmCluster
public CloudVmCluster(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
CloudVmCluster
public CloudVmCluster(java.lang.String name, CloudVmClusterArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
CloudVmCluster
public CloudVmCluster(java.lang.String name, CloudVmClusterArgs 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 for the cloud vm cluster.
-
cloudExadataInfrastructureArn
public com.pulumi.core.Output<java.lang.String> cloudExadataInfrastructureArn()
- Returns:
- ARN of the Exadata infrastructure for this VM cluster. Changing this will create a new resource. Either the combination of cloudExadataInfrastructureId and odbNetworkId or cloudExadataInfrastructureArn and odbNetworkArn must be used.
-
cloudExadataInfrastructureId
public com.pulumi.core.Output<java.lang.String> cloudExadataInfrastructureId()
- Returns:
- Unique identifier of the Exadata infrastructure for this VM cluster. Changing this will create a new resource. Either the combination of cloudExadataInfrastructureId and odbNetworkId or cloudExadataInfrastructureArn and odbNetworkArn must be used.
-
clusterName
public com.pulumi.core.Output<java.lang.String> clusterName()
- Returns:
- Name of the Grid Infrastructure (GI) cluster. Changing this will create a new resource.
-
computeModel
public com.pulumi.core.Output<java.lang.String> computeModel()
- Returns:
- Compute model used when the instance is created or cloned — either ECPU or OCPU. ECPU is a virtualized compute unit; OCPU is a physical processor core with hyper-threading.
-
cpuCoreCount
public com.pulumi.core.Output<java.lang.Integer> cpuCoreCount()
- Returns:
- Number of CPU cores to enable on the VM cluster. Changing this will create a new resource.
-
createdAt
public com.pulumi.core.Output<java.lang.String> createdAt()
- Returns:
- Timestamp when the VM cluster was created.
-
dataCollectionOptions
public com.pulumi.core.Output<CloudVmClusterDataCollectionOptions> dataCollectionOptions()
- Returns:
- Set of preferences for the various diagnostic collection options for the VM cluster. See `dataCollectionOptions` Block below. Changing this will create a new resource.
-
dataStorageSizeInTbs
public com.pulumi.core.Output<java.lang.Double> dataStorageSizeInTbs()
- Returns:
- Size of the data disk group, in terabytes (TBs), to allocate for the VM cluster. Changing this will create a new resource.
-
dbNodeStorageSizeInGbs
public com.pulumi.core.Output<java.lang.Integer> dbNodeStorageSizeInGbs()
- Returns:
- Amount of local node storage, in gigabytes (GBs), to allocate for the VM cluster. Changing this will create a new resource.
-
dbServers
public com.pulumi.core.Output<java.util.List<java.lang.String>> dbServers()
- Returns:
- List of database servers for the VM cluster. Changing this will create a new resource.
-
diskRedundancy
public com.pulumi.core.Output<java.lang.String> diskRedundancy()
- Returns:
- Type of redundancy for the VM cluster: NORMAL (2-way) or HIGH (3-way).
-
displayName
public com.pulumi.core.Output<java.lang.String> displayName()
- Returns:
- User-friendly name for the VM cluster. Changing this will create a new resource.
-
domain
public com.pulumi.core.Output<java.lang.String> domain()
- Returns:
- Domain name associated with the VM cluster.
-
giVersion
public com.pulumi.core.Output<java.lang.String> giVersion()
- Returns:
- Valid Oracle Grid Infrastructure (GI) software version. To get valid values, use the ListGiVersions operation for the Exadata infrastructure shape. Example: `19.0.0.0`. Changing this creates a new resource. Prefer to provide `odb:input_gi_version` tag. If `odb:input_gi_version` tag is provided, its value must exactly match `giVersion`, otherwise Terraform returns an error. See the `With GI Version Tag` example above.
-
giVersionComputed
public com.pulumi.core.Output<java.lang.String> giVersionComputed()
- Returns:
- Complete software version of Oracle Grid Infrastructure (GI).
-
hostnamePrefix
public com.pulumi.core.Output<java.lang.String> hostnamePrefix()
- Returns:
- Host name prefix for the VM cluster. Constraints: - Can't be "localhost" or "hostname". - Can't contain "-version". - Maximum length of the combined hostname and domain is 63 characters. - Hostname must be unique within the subnet. Changing this will create a new resource.
-
hostnamePrefixComputed
public com.pulumi.core.Output<java.lang.String> hostnamePrefixComputed()
- Returns:
- Host name for the VM cluster. Constraints: - Can't be "localhost" or "hostname". - Can't contain "-version". - Maximum length of the combined hostname and domain is 63 characters. - Hostname must be unique within the subnet.
-
iormConfigCaches
public com.pulumi.core.Output<java.util.List<CloudVmClusterIormConfigCache>> iormConfigCaches()
- Returns:
- Exadata IORM (I/O Resource Manager) configuration cache details for the VM cluster. See `iormConfigCache` Block below.
-
isLocalBackupEnabled
public com.pulumi.core.Output<java.lang.Boolean> isLocalBackupEnabled()
- Returns:
- Whether to enable database backups to local Exadata storage for the VM cluster. Changing this will create a new resource.
-
isSparseDiskgroupEnabled
public com.pulumi.core.Output<java.lang.Boolean> isSparseDiskgroupEnabled()
- Returns:
- Whether to create a sparse disk group for the VM cluster. Changing this will create a new resource.
-
lastUpdateHistoryEntryId
public com.pulumi.core.Output<java.lang.String> lastUpdateHistoryEntryId()
- Returns:
- OCID of the most recent maintenance update history entry.
-
licenseModel
public com.pulumi.core.Output<java.lang.String> licenseModel()
- Returns:
- Oracle license model to apply to the VM cluster. Default: LICENSE_INCLUDED. Changing this will create a new resource.
-
listenerPort
public com.pulumi.core.Output<java.lang.Integer> listenerPort()
- Returns:
- Listener port number configured on the VM cluster.
-
memorySizeInGbs
public com.pulumi.core.Output<java.lang.Integer> memorySizeInGbs()
- Returns:
- Amount of memory, in gigabytes (GBs), to allocate for the VM cluster. Changing this will create a new resource.
-
nodeCount
public com.pulumi.core.Output<java.lang.Integer> nodeCount()
- Returns:
- Total number of nodes in the VM cluster.
-
ociResourceAnchorName
public com.pulumi.core.Output<java.lang.String> ociResourceAnchorName()
- Returns:
- Name of the OCI resource anchor associated with the VM cluster.
-
ociUrl
public com.pulumi.core.Output<java.lang.String> ociUrl()
- Returns:
- HTTPS link to the VM cluster resource in OCI.
-
ocid
public com.pulumi.core.Output<java.lang.String> ocid()
- Returns:
- OCID (Oracle Cloud Identifier) of the VM cluster.
-
odbNetworkArn
public com.pulumi.core.Output<java.lang.String> odbNetworkArn()
- Returns:
- ARN of the ODB network for the VM cluster. Changing this will create a new resource. Either the combination of cloudExadataInfrastructureId and odbNetworkId or cloudExadataInfrastructureArn and odbNetworkArn must be used.
-
odbNetworkId
public com.pulumi.core.Output<java.lang.String> odbNetworkId()
- Returns:
- Unique identifier of the ODB network for the VM cluster. Changing this will create a new resource. Either the combination of cloudExadataInfrastructureId and odbNetworkId or cloudExadataInfrastructureArn and odbNetworkArn must be used.
-
percentProgress
public com.pulumi.core.Output<java.lang.Double> percentProgress()
- Returns:
- Percentage of progress made on the current operation for the VM cluster.
-
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.
-
scanDnsName
public com.pulumi.core.Output<java.lang.String> scanDnsName()
- Returns:
- Fully qualified domain name (FQDN) for the SCAN IP addresses associated with the VM cluster.
-
scanDnsRecordId
public com.pulumi.core.Output<java.lang.String> scanDnsRecordId()
- Returns:
- OCID of the DNS record for the SCAN IPs linked to the VM cluster.
-
scanIpIds
public com.pulumi.core.Output<java.util.List<java.lang.String>> scanIpIds()
- Returns:
- List of OCIDs for SCAN IP addresses associated with the VM cluster.
-
scanListenerPortTcp
public com.pulumi.core.Output<java.lang.Integer> scanListenerPortTcp()
- Returns:
- Port number for TCP connections to the single client access name (SCAN) listener. Valid values: 1024–8999, except 2484, 6100, 6200, 7060, 7070, 7085, and 7879. Default: 1521. Changing this will create a new resource.
-
shape
public com.pulumi.core.Output<java.lang.String> shape()
- Returns:
- Hardware model name of the Exadata infrastructure running the VM cluster.
-
sshPublicKeys
public com.pulumi.core.Output<java.util.List<java.lang.String>> sshPublicKeys()
- Returns:
- Public key portion of one or more key pairs used for SSH access to the VM cluster. Changing this will create a new resource. The following arguments are optional:
-
status
public com.pulumi.core.Output<java.lang.String> status()
- Returns:
- Current lifecycle status of the VM cluster.
-
statusReason
public com.pulumi.core.Output<java.lang.String> statusReason()
- Returns:
- Additional information regarding the current status of the VM cluster.
-
storageSizeInGbs
public com.pulumi.core.Output<java.lang.Integer> storageSizeInGbs()
- Returns:
- Local node storage allocated to the VM cluster, in gigabytes (GB).
-
systemVersion
public com.pulumi.core.Output<java.lang.String> systemVersion()
- Returns:
- Operating system version of the image chosen for the VM cluster.
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Map of tags to assign to the exadata infrastructure. 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:
- Combined set of user-defined and provider-defined tags.
-
timeouts
public com.pulumi.core.Output<java.util.Optional<CloudVmClusterTimeouts>> timeouts()
-
timezone
public com.pulumi.core.Output<java.lang.String> timezone()
- Returns:
- Configured time zone of the VM cluster. Changing this will create a new resource.
-
vipIds
public com.pulumi.core.Output<java.util.List<java.lang.String>> vipIds()
- Returns:
- Virtual IP (VIP) addresses assigned to the VM cluster. CRS assigns one VIP per node for failover support.
-
get
public static CloudVmCluster get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable CloudVmClusterState 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.
-
-