Class DatastoreCluster
The vsphere..DatastoreCluster resource can be used to create and manage
datastore clusters. This can be used to create groups of datastores with a
shared management interface, allowing for resource control and load balancing
through Storage DRS.
For more information on vSphere datastore clusters and Storage DRS, see this page.
NOTE: This resource requires vCenter and is not available on direct ESXi connections.
NOTE: Storage DRS requires a vSphere Enterprise Plus license.
Inherited Members
Namespace: Pulumi.VSphere
Assembly: Pulumi.VSphere.dll
Syntax
public class DatastoreCluster : CustomResource
Constructors
View SourceDatastoreCluster(String, DatastoreClusterArgs, CustomResourceOptions)
Create a DatastoreCluster resource with the given unique name, arguments, and options.
Declaration
public DatastoreCluster(string name, DatastoreClusterArgs args, CustomResourceOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | name | The unique name of the resource |
| DatastoreClusterArgs | args | The arguments used to populate this resource's properties |
| CustomResourceOptions | options | A bag of options that control this resource's behavior |
Properties
View SourceCustomAttributes
A map of custom attribute ids to attribute value strings to set for the datastore cluster. See [here][docs-setting-custom-attributes] for a reference on how to set values for custom attributes.
Declaration
public Output<ImmutableDictionary<string, string>> CustomAttributes { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Collections.Immutable.ImmutableDictionary<System.String, System.String>> |
DatacenterId
The managed object ID of the datacenter to create the datastore cluster in. Forces a new resource if changed.
Declaration
public Output<string> DatacenterId { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
Folder
The relative path to a folder to put this datastore
cluster in. This is a path relative to the datacenter you are deploying the
datastore to. Example: for the dc1 datacenter, and a provided folder of
foo/bar, The provider will place a datastore cluster named
datastore-cluster-test in a datastore folder located at
/dc1/datastore/foo/bar, with the final inventory path being
/dc1/datastore/foo/bar/datastore-cluster-test.
Declaration
public Output<string> Folder { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
Name
The name of the datastore cluster.
Declaration
public Output<string> Name { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SdrsAdvancedOptions
A key/value map of advanced Storage DRS settings that are not exposed via the provider or the vSphere client.
Declaration
public Output<ImmutableDictionary<string, string>> SdrsAdvancedOptions { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Collections.Immutable.ImmutableDictionary<System.String, System.String>> |
SdrsAutomationLevel
The global automation level for all
virtual machines in this datastore cluster. Default: manual.
Declaration
public Output<string> SdrsAutomationLevel { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SdrsDefaultIntraVmAffinity
When true, all disks in a
single virtual machine will be kept on the same datastore. Default: true.
Declaration
public Output<bool?> SdrsDefaultIntraVmAffinity { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Boolean>> |
SdrsEnabled
Enable Storage DRS for this datastore cluster.
Default: false.
Declaration
public Output<bool?> SdrsEnabled { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Boolean>> |
SdrsFreeSpaceThreshold
The free space threshold to use.
When set to utilization, drs_space_utilization_threshold is used, and
when set to freeSpace, drs_free_space_threshold is used. Default:
utilization.
Declaration
public Output<int?> SdrsFreeSpaceThreshold { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
SdrsFreeSpaceThresholdMode
The free space threshold to use. When set to utilization, drs_space_utilization_threshold is used, and when set to freeSpace, drs_free_space_threshold is used.
Declaration
public Output<string> SdrsFreeSpaceThresholdMode { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SdrsFreeSpaceUtilizationDifference
The threshold, in
percent, of difference between space utilization in datastores before storage
DRS makes decisions to balance the space. Default: 5 percent.
Declaration
public Output<int?> SdrsFreeSpaceUtilizationDifference { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
SdrsIoBalanceAutomationLevel
Overrides the default automation settings when correcting I/O load imbalances.
Declaration
public Output<string> SdrsIoBalanceAutomationLevel { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SdrsIoLatencyThreshold
The I/O latency threshold, in
milliseconds, that storage DRS uses to make recommendations to move disks
from this datastore. Default: 15 seconds.
Declaration
public Output<int?> SdrsIoLatencyThreshold { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
SdrsIoLoadBalanceEnabled
Enable I/O load balancing for
this datastore cluster. Default: true.
Declaration
public Output<bool?> SdrsIoLoadBalanceEnabled { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Boolean>> |
SdrsIoLoadImbalanceThreshold
The difference between load
in datastores in the cluster before storage DRS makes recommendations to
balance the load. Default: 5 percent.
Declaration
public Output<int?> SdrsIoLoadImbalanceThreshold { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
SdrsIoReservableIopsThreshold
The threshold of reservable
IOPS of all virtual machines on the datastore before storage DRS makes
recommendations to move VMs off of a datastore. Note that this setting should
only be set if sdrs_io_reservable_percent_threshold cannot make an accurate
estimate of the capacity of the datastores in your cluster, and should be set
to roughly 50-60% of the worst case peak performance of the backing LUNs.
Declaration
public Output<int?> SdrsIoReservableIopsThreshold { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
SdrsIoReservablePercentThreshold
The threshold, in
percent, of actual estimated performance of the datastore (in IOPS) that
storage DRS uses to make recommendations to move VMs off of a datastore when
the total reservable IOPS exceeds the threshold. Default: 60 percent.
Declaration
public Output<int?> SdrsIoReservablePercentThreshold { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
SdrsIoReservableThresholdMode
The reservable IOPS
threshold setting to use, sdrs_io_reservable_percent_threshold in the event
of automatic, or sdrs_io_reservable_iops_threshold in the event of
manual. Default: automatic.
Declaration
public Output<string> SdrsIoReservableThresholdMode { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SdrsLoadBalanceInterval
The storage DRS poll interval, in
minutes. Default: 480 minutes.
Declaration
public Output<int?> SdrsLoadBalanceInterval { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
SdrsPolicyEnforcementAutomationLevel
Overrides the default automation settings when correcting storage and VM policy violations.
Declaration
public Output<string> SdrsPolicyEnforcementAutomationLevel { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SdrsRuleEnforcementAutomationLevel
Overrides the default automation settings when correcting affinity rule violations.
Declaration
public Output<string> SdrsRuleEnforcementAutomationLevel { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SdrsSpaceBalanceAutomationLevel
Overrides the default automation settings when correcting disk space imbalances.
Declaration
public Output<string> SdrsSpaceBalanceAutomationLevel { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SdrsSpaceUtilizationThreshold
The threshold, in percent of used space, that storage DRS uses to make decisions to migrate VMs out of a datastore.
Declaration
public Output<int?> SdrsSpaceUtilizationThreshold { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
SdrsVmEvacuationAutomationLevel
Overrides the default automation settings when generating recommendations for datastore evacuation.
Declaration
public Output<string> SdrsVmEvacuationAutomationLevel { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
Tags
The IDs of any tags to attach to this resource.
Declaration
public Output<ImmutableArray<string>> Tags { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Collections.Immutable.ImmutableArray<System.String>> |
Methods
View SourceGet(String, Input<String>, DatastoreClusterState, CustomResourceOptions)
Get an existing DatastoreCluster resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
Declaration
public static DatastoreCluster Get(string name, Input<string> id, DatastoreClusterState state = null, CustomResourceOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | name | The unique name of the resulting resource. |
| Input<System.String> | id | The unique provider ID of the resource to lookup. |
| DatastoreClusterState | state | Any extra arguments used during the lookup. |
| CustomResourceOptions | options | A bag of options that control this resource's behavior |
Returns
| Type | Description |
|---|---|
| DatastoreCluster |