published on Tuesday, May 26, 2026 by Piers Karsenbarg
published on Tuesday, May 26, 2026 by Piers Karsenbarg
Provides Nutanix resource to create storage policy
Note: Once
encryptionStateis explicitly set toENABLED, it cannot be reverted back to a system-derived value.
If compression_state, encryption_state, or replicationFactor are intended to be system-derived, ensure that the qosSpec block is included.
Example
Complete Example with All Fields
import * as pulumi from "@pulumi/pulumi";
import * as nutanix from "@pierskarsenbarg/nutanix";
const example = new nutanix.StoragePolicyV2("example", {
name: "my-storage-policy",
compressionSpecs: [{
compressionState: "POSTPROCESS",
}],
encryptionSpecs: [{
encryptionState: "ENABLED",
}],
qosSpecs: [{
throttledIops: 1000,
}],
faultToleranceSpecs: [{
replicationFactor: "THREE",
}],
categoryExtIds: [
"4d552748-e119-540a-b06c-3c6f0d213fa2",
"5e663859-f220-651b-c17d-4d7f0e324fb3",
],
});
import pulumi
import pulumi_nutanix as nutanix
example = nutanix.StoragePolicyV2("example",
name="my-storage-policy",
compression_specs=[{
"compression_state": "POSTPROCESS",
}],
encryption_specs=[{
"encryption_state": "ENABLED",
}],
qos_specs=[{
"throttled_iops": 1000,
}],
fault_tolerance_specs=[{
"replication_factor": "THREE",
}],
category_ext_ids=[
"4d552748-e119-540a-b06c-3c6f0d213fa2",
"5e663859-f220-651b-c17d-4d7f0e324fb3",
])
package main
import (
"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := nutanix.NewStoragePolicyV2(ctx, "example", &nutanix.StoragePolicyV2Args{
Name: pulumi.String("my-storage-policy"),
CompressionSpecs: nutanix.StoragePolicyV2CompressionSpecArray{
&nutanix.StoragePolicyV2CompressionSpecArgs{
CompressionState: pulumi.String("POSTPROCESS"),
},
},
EncryptionSpecs: nutanix.StoragePolicyV2EncryptionSpecArray{
&nutanix.StoragePolicyV2EncryptionSpecArgs{
EncryptionState: pulumi.String("ENABLED"),
},
},
QosSpecs: nutanix.StoragePolicyV2QosSpecArray{
&nutanix.StoragePolicyV2QosSpecArgs{
ThrottledIops: pulumi.Int(1000),
},
},
FaultToleranceSpecs: nutanix.StoragePolicyV2FaultToleranceSpecArray{
&nutanix.StoragePolicyV2FaultToleranceSpecArgs{
ReplicationFactor: pulumi.String("THREE"),
},
},
CategoryExtIds: pulumi.StringArray{
pulumi.String("4d552748-e119-540a-b06c-3c6f0d213fa2"),
pulumi.String("5e663859-f220-651b-c17d-4d7f0e324fb3"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nutanix = PiersKarsenbarg.Nutanix;
return await Deployment.RunAsync(() =>
{
var example = new Nutanix.StoragePolicyV2("example", new()
{
Name = "my-storage-policy",
CompressionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2CompressionSpecArgs
{
CompressionState = "POSTPROCESS",
},
},
EncryptionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2EncryptionSpecArgs
{
EncryptionState = "ENABLED",
},
},
QosSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2QosSpecArgs
{
ThrottledIops = 1000,
},
},
FaultToleranceSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2FaultToleranceSpecArgs
{
ReplicationFactor = "THREE",
},
},
CategoryExtIds = new[]
{
"4d552748-e119-540a-b06c-3c6f0d213fa2",
"5e663859-f220-651b-c17d-4d7f0e324fb3",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.nutanix.StoragePolicyV2;
import com.pulumi.nutanix.StoragePolicyV2Args;
import com.pulumi.nutanix.inputs.StoragePolicyV2CompressionSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2EncryptionSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2QosSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2FaultToleranceSpecArgs;
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 StoragePolicyV2("example", StoragePolicyV2Args.builder()
.name("my-storage-policy")
.compressionSpecs(StoragePolicyV2CompressionSpecArgs.builder()
.compressionState("POSTPROCESS")
.build())
.encryptionSpecs(StoragePolicyV2EncryptionSpecArgs.builder()
.encryptionState("ENABLED")
.build())
.qosSpecs(StoragePolicyV2QosSpecArgs.builder()
.throttledIops(1000)
.build())
.faultToleranceSpecs(StoragePolicyV2FaultToleranceSpecArgs.builder()
.replicationFactor("THREE")
.build())
.categoryExtIds(
"4d552748-e119-540a-b06c-3c6f0d213fa2",
"5e663859-f220-651b-c17d-4d7f0e324fb3")
.build());
}
}
resources:
example:
type: nutanix:StoragePolicyV2
properties:
name: my-storage-policy
compressionSpecs:
- compressionState: POSTPROCESS
encryptionSpecs:
- encryptionState: ENABLED
qosSpecs:
- throttledIops: 1000
faultToleranceSpecs:
- replicationFactor: THREE
categoryExtIds:
- 4d552748-e119-540a-b06c-3c6f0d213fa2
- 5e663859-f220-651b-c17d-4d7f0e324fb3
pulumi {
required_providers {
nutanix = {
source = "pulumi/nutanix"
}
}
}
resource "nutanix_storagepolicyv2" "example" {
name = "my-storage-policy"
compression_specs {
compression_state = "POSTPROCESS"
}
# Required: Compression state
# Valid values: "DISABLED", "POSTPROCESS", "INLINE", "SYSTEM_DERIVED"
encryption_specs {
encryption_state = "ENABLED"
}
# Required: Encryption state
# Valid values: "SYSTEM_DERIVED", "ENABLED"
# Note: Once set to "ENABLED", it cannot be reverted
qos_specs {
throttled_iops = 1000
}
# Required: Throttled IOPS (range: 100 to 2147483647)
fault_tolerance_specs {
replication_factor = "THREE"
}
# Required: Replication factor
# Valid values: "SYSTEM_DERIVED", "TWO", "THREE"
# TWO = Original + 1 copy, THREE = Original + 2 copies
category_ext_ids = ["4d552748-e119-540a-b06c-3c6f0d213fa2", "5e663859-f220-651b-c17d-4d7f0e324fb3"]
}
Minimal Example with System-Derived Values
import * as pulumi from "@pulumi/pulumi";
import * as nutanix from "@pierskarsenbarg/nutanix";
const minimal = new nutanix.StoragePolicyV2("minimal", {
name: "minimal-storage-policy",
qosSpecs: [{
throttledIops: 100,
}],
compressionSpecs: [{
compressionState: "SYSTEM_DERIVED",
}],
encryptionSpecs: [{
encryptionState: "SYSTEM_DERIVED",
}],
faultToleranceSpecs: [{
replicationFactor: "SYSTEM_DERIVED",
}],
});
import pulumi
import pulumi_nutanix as nutanix
minimal = nutanix.StoragePolicyV2("minimal",
name="minimal-storage-policy",
qos_specs=[{
"throttled_iops": 100,
}],
compression_specs=[{
"compression_state": "SYSTEM_DERIVED",
}],
encryption_specs=[{
"encryption_state": "SYSTEM_DERIVED",
}],
fault_tolerance_specs=[{
"replication_factor": "SYSTEM_DERIVED",
}])
package main
import (
"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := nutanix.NewStoragePolicyV2(ctx, "minimal", &nutanix.StoragePolicyV2Args{
Name: pulumi.String("minimal-storage-policy"),
QosSpecs: nutanix.StoragePolicyV2QosSpecArray{
&nutanix.StoragePolicyV2QosSpecArgs{
ThrottledIops: pulumi.Int(100),
},
},
CompressionSpecs: nutanix.StoragePolicyV2CompressionSpecArray{
&nutanix.StoragePolicyV2CompressionSpecArgs{
CompressionState: pulumi.String("SYSTEM_DERIVED"),
},
},
EncryptionSpecs: nutanix.StoragePolicyV2EncryptionSpecArray{
&nutanix.StoragePolicyV2EncryptionSpecArgs{
EncryptionState: pulumi.String("SYSTEM_DERIVED"),
},
},
FaultToleranceSpecs: nutanix.StoragePolicyV2FaultToleranceSpecArray{
&nutanix.StoragePolicyV2FaultToleranceSpecArgs{
ReplicationFactor: pulumi.String("SYSTEM_DERIVED"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nutanix = PiersKarsenbarg.Nutanix;
return await Deployment.RunAsync(() =>
{
var minimal = new Nutanix.StoragePolicyV2("minimal", new()
{
Name = "minimal-storage-policy",
QosSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2QosSpecArgs
{
ThrottledIops = 100,
},
},
CompressionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2CompressionSpecArgs
{
CompressionState = "SYSTEM_DERIVED",
},
},
EncryptionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2EncryptionSpecArgs
{
EncryptionState = "SYSTEM_DERIVED",
},
},
FaultToleranceSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2FaultToleranceSpecArgs
{
ReplicationFactor = "SYSTEM_DERIVED",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.nutanix.StoragePolicyV2;
import com.pulumi.nutanix.StoragePolicyV2Args;
import com.pulumi.nutanix.inputs.StoragePolicyV2QosSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2CompressionSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2EncryptionSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2FaultToleranceSpecArgs;
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 minimal = new StoragePolicyV2("minimal", StoragePolicyV2Args.builder()
.name("minimal-storage-policy")
.qosSpecs(StoragePolicyV2QosSpecArgs.builder()
.throttledIops(100)
.build())
.compressionSpecs(StoragePolicyV2CompressionSpecArgs.builder()
.compressionState("SYSTEM_DERIVED")
.build())
.encryptionSpecs(StoragePolicyV2EncryptionSpecArgs.builder()
.encryptionState("SYSTEM_DERIVED")
.build())
.faultToleranceSpecs(StoragePolicyV2FaultToleranceSpecArgs.builder()
.replicationFactor("SYSTEM_DERIVED")
.build())
.build());
}
}
resources:
minimal:
type: nutanix:StoragePolicyV2
properties:
name: minimal-storage-policy
qosSpecs:
- throttledIops: 100
compressionSpecs:
- compressionState: SYSTEM_DERIVED
encryptionSpecs:
- encryptionState: SYSTEM_DERIVED
faultToleranceSpecs:
- replicationFactor: SYSTEM_DERIVED
pulumi {
required_providers {
nutanix = {
source = "pulumi/nutanix"
}
}
}
resource "nutanix_storagepolicyv2" "minimal" {
name = "minimal-storage-policy"
qos_specs {
throttled_iops = 100
}
compression_specs {
compression_state = "SYSTEM_DERIVED"
}
encryption_specs {
encryption_state = "SYSTEM_DERIVED"
}
fault_tolerance_specs {
replication_factor = "SYSTEM_DERIVED"
}
}
Example with Inline Compression
import * as pulumi from "@pulumi/pulumi";
import * as nutanix from "@pierskarsenbarg/nutanix";
const inlineCompression = new nutanix.StoragePolicyV2("inline_compression", {
name: "inline-compression-policy",
compressionSpecs: [{
compressionState: "INLINE",
}],
encryptionSpecs: [{
encryptionState: "ENABLED",
}],
qosSpecs: [{
throttledIops: 5000,
}],
faultToleranceSpecs: [{
replicationFactor: "TWO",
}],
});
import pulumi
import pulumi_nutanix as nutanix
inline_compression = nutanix.StoragePolicyV2("inline_compression",
name="inline-compression-policy",
compression_specs=[{
"compression_state": "INLINE",
}],
encryption_specs=[{
"encryption_state": "ENABLED",
}],
qos_specs=[{
"throttled_iops": 5000,
}],
fault_tolerance_specs=[{
"replication_factor": "TWO",
}])
package main
import (
"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := nutanix.NewStoragePolicyV2(ctx, "inline_compression", &nutanix.StoragePolicyV2Args{
Name: pulumi.String("inline-compression-policy"),
CompressionSpecs: nutanix.StoragePolicyV2CompressionSpecArray{
&nutanix.StoragePolicyV2CompressionSpecArgs{
CompressionState: pulumi.String("INLINE"),
},
},
EncryptionSpecs: nutanix.StoragePolicyV2EncryptionSpecArray{
&nutanix.StoragePolicyV2EncryptionSpecArgs{
EncryptionState: pulumi.String("ENABLED"),
},
},
QosSpecs: nutanix.StoragePolicyV2QosSpecArray{
&nutanix.StoragePolicyV2QosSpecArgs{
ThrottledIops: pulumi.Int(5000),
},
},
FaultToleranceSpecs: nutanix.StoragePolicyV2FaultToleranceSpecArray{
&nutanix.StoragePolicyV2FaultToleranceSpecArgs{
ReplicationFactor: pulumi.String("TWO"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nutanix = PiersKarsenbarg.Nutanix;
return await Deployment.RunAsync(() =>
{
var inlineCompression = new Nutanix.StoragePolicyV2("inline_compression", new()
{
Name = "inline-compression-policy",
CompressionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2CompressionSpecArgs
{
CompressionState = "INLINE",
},
},
EncryptionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2EncryptionSpecArgs
{
EncryptionState = "ENABLED",
},
},
QosSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2QosSpecArgs
{
ThrottledIops = 5000,
},
},
FaultToleranceSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2FaultToleranceSpecArgs
{
ReplicationFactor = "TWO",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.nutanix.StoragePolicyV2;
import com.pulumi.nutanix.StoragePolicyV2Args;
import com.pulumi.nutanix.inputs.StoragePolicyV2CompressionSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2EncryptionSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2QosSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2FaultToleranceSpecArgs;
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 inlineCompression = new StoragePolicyV2("inlineCompression", StoragePolicyV2Args.builder()
.name("inline-compression-policy")
.compressionSpecs(StoragePolicyV2CompressionSpecArgs.builder()
.compressionState("INLINE")
.build())
.encryptionSpecs(StoragePolicyV2EncryptionSpecArgs.builder()
.encryptionState("ENABLED")
.build())
.qosSpecs(StoragePolicyV2QosSpecArgs.builder()
.throttledIops(5000)
.build())
.faultToleranceSpecs(StoragePolicyV2FaultToleranceSpecArgs.builder()
.replicationFactor("TWO")
.build())
.build());
}
}
resources:
inlineCompression:
type: nutanix:StoragePolicyV2
name: inline_compression
properties:
name: inline-compression-policy
compressionSpecs:
- compressionState: INLINE
encryptionSpecs:
- encryptionState: ENABLED
qosSpecs:
- throttledIops: 5000
faultToleranceSpecs:
- replicationFactor: TWO
pulumi {
required_providers {
nutanix = {
source = "pulumi/nutanix"
}
}
}
resource "nutanix_storagepolicyv2" "inline_compression" {
name = "inline-compression-policy"
compression_specs {
compression_state = "INLINE"
}
encryption_specs {
encryption_state = "ENABLED"
}
qos_specs {
throttled_iops = 5000
}
fault_tolerance_specs {
replication_factor = "TWO"
}
}
Example with Disabled Compression
import * as pulumi from "@pulumi/pulumi";
import * as nutanix from "@pierskarsenbarg/nutanix";
const noCompression = new nutanix.StoragePolicyV2("no_compression", {
name: "no-compression-policy",
compressionSpecs: [{
compressionState: "DISABLED",
}],
qosSpecs: [{
throttledIops: 2000,
}],
faultToleranceSpecs: [{
replicationFactor: "THREE",
}],
});
import pulumi
import pulumi_nutanix as nutanix
no_compression = nutanix.StoragePolicyV2("no_compression",
name="no-compression-policy",
compression_specs=[{
"compression_state": "DISABLED",
}],
qos_specs=[{
"throttled_iops": 2000,
}],
fault_tolerance_specs=[{
"replication_factor": "THREE",
}])
package main
import (
"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := nutanix.NewStoragePolicyV2(ctx, "no_compression", &nutanix.StoragePolicyV2Args{
Name: pulumi.String("no-compression-policy"),
CompressionSpecs: nutanix.StoragePolicyV2CompressionSpecArray{
&nutanix.StoragePolicyV2CompressionSpecArgs{
CompressionState: pulumi.String("DISABLED"),
},
},
QosSpecs: nutanix.StoragePolicyV2QosSpecArray{
&nutanix.StoragePolicyV2QosSpecArgs{
ThrottledIops: pulumi.Int(2000),
},
},
FaultToleranceSpecs: nutanix.StoragePolicyV2FaultToleranceSpecArray{
&nutanix.StoragePolicyV2FaultToleranceSpecArgs{
ReplicationFactor: pulumi.String("THREE"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nutanix = PiersKarsenbarg.Nutanix;
return await Deployment.RunAsync(() =>
{
var noCompression = new Nutanix.StoragePolicyV2("no_compression", new()
{
Name = "no-compression-policy",
CompressionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2CompressionSpecArgs
{
CompressionState = "DISABLED",
},
},
QosSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2QosSpecArgs
{
ThrottledIops = 2000,
},
},
FaultToleranceSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2FaultToleranceSpecArgs
{
ReplicationFactor = "THREE",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.nutanix.StoragePolicyV2;
import com.pulumi.nutanix.StoragePolicyV2Args;
import com.pulumi.nutanix.inputs.StoragePolicyV2CompressionSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2QosSpecArgs;
import com.pulumi.nutanix.inputs.StoragePolicyV2FaultToleranceSpecArgs;
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 noCompression = new StoragePolicyV2("noCompression", StoragePolicyV2Args.builder()
.name("no-compression-policy")
.compressionSpecs(StoragePolicyV2CompressionSpecArgs.builder()
.compressionState("DISABLED")
.build())
.qosSpecs(StoragePolicyV2QosSpecArgs.builder()
.throttledIops(2000)
.build())
.faultToleranceSpecs(StoragePolicyV2FaultToleranceSpecArgs.builder()
.replicationFactor("THREE")
.build())
.build());
}
}
resources:
noCompression:
type: nutanix:StoragePolicyV2
name: no_compression
properties:
name: no-compression-policy
compressionSpecs:
- compressionState: DISABLED
qosSpecs:
- throttledIops: 2000
faultToleranceSpecs:
- replicationFactor: THREE
pulumi {
required_providers {
nutanix = {
source = "pulumi/nutanix"
}
}
}
resource "nutanix_storagepolicyv2" "no_compression" {
name = "no-compression-policy"
compression_specs {
compression_state = "DISABLED"
}
qos_specs {
throttled_iops = 2000
}
fault_tolerance_specs {
replication_factor = "THREE"
}
}
Example with Categories Only
import * as pulumi from "@pulumi/pulumi";
import * as nutanix from "@pierskarsenbarg/nutanix";
// Rest all will be System Derived
const categorized = new nutanix.StoragePolicyV2("categorized", {
name: "categorized-policy",
categoryExtIds: ["4d552748-e119-540a-b06c-3c6f0d213fa2"],
qosSpecs: [{
throttledIops: 100,
}],
});
import pulumi
import pulumi_nutanix as nutanix
# Rest all will be System Derived
categorized = nutanix.StoragePolicyV2("categorized",
name="categorized-policy",
category_ext_ids=["4d552748-e119-540a-b06c-3c6f0d213fa2"],
qos_specs=[{
"throttled_iops": 100,
}])
package main
import (
"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Rest all will be System Derived
_, err := nutanix.NewStoragePolicyV2(ctx, "categorized", &nutanix.StoragePolicyV2Args{
Name: pulumi.String("categorized-policy"),
CategoryExtIds: pulumi.StringArray{
pulumi.String("4d552748-e119-540a-b06c-3c6f0d213fa2"),
},
QosSpecs: nutanix.StoragePolicyV2QosSpecArray{
&nutanix.StoragePolicyV2QosSpecArgs{
ThrottledIops: pulumi.Int(100),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Nutanix = PiersKarsenbarg.Nutanix;
return await Deployment.RunAsync(() =>
{
// Rest all will be System Derived
var categorized = new Nutanix.StoragePolicyV2("categorized", new()
{
Name = "categorized-policy",
CategoryExtIds = new[]
{
"4d552748-e119-540a-b06c-3c6f0d213fa2",
},
QosSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2QosSpecArgs
{
ThrottledIops = 100,
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.nutanix.StoragePolicyV2;
import com.pulumi.nutanix.StoragePolicyV2Args;
import com.pulumi.nutanix.inputs.StoragePolicyV2QosSpecArgs;
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) {
// Rest all will be System Derived
var categorized = new StoragePolicyV2("categorized", StoragePolicyV2Args.builder()
.name("categorized-policy")
.categoryExtIds("4d552748-e119-540a-b06c-3c6f0d213fa2")
.qosSpecs(StoragePolicyV2QosSpecArgs.builder()
.throttledIops(100)
.build())
.build());
}
}
resources:
# Rest all will be System Derived
categorized:
type: nutanix:StoragePolicyV2
properties:
name: categorized-policy
categoryExtIds:
- 4d552748-e119-540a-b06c-3c6f0d213fa2
qosSpecs:
- throttledIops: 100
pulumi {
required_providers {
nutanix = {
source = "pulumi/nutanix"
}
}
}
# Rest all will be System Derived
resource "nutanix_storagepolicyv2" "categorized" {
name = "categorized-policy"
category_ext_ids = ["4d552748-e119-540a-b06c-3c6f0d213fa2"]
qos_specs {
throttled_iops = 100
}
}
Create StoragePolicyV2 Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new StoragePolicyV2(name: string, args?: StoragePolicyV2Args, opts?: CustomResourceOptions);@overload
def StoragePolicyV2(resource_name: str,
args: Optional[StoragePolicyV2Args] = None,
opts: Optional[ResourceOptions] = None)
@overload
def StoragePolicyV2(resource_name: str,
opts: Optional[ResourceOptions] = None,
category_ext_ids: Optional[Sequence[str]] = None,
compression_specs: Optional[Sequence[StoragePolicyV2CompressionSpecArgs]] = None,
encryption_specs: Optional[Sequence[StoragePolicyV2EncryptionSpecArgs]] = None,
fault_tolerance_specs: Optional[Sequence[StoragePolicyV2FaultToleranceSpecArgs]] = None,
name: Optional[str] = None,
qos_specs: Optional[Sequence[StoragePolicyV2QosSpecArgs]] = None)func NewStoragePolicyV2(ctx *Context, name string, args *StoragePolicyV2Args, opts ...ResourceOption) (*StoragePolicyV2, error)public StoragePolicyV2(string name, StoragePolicyV2Args? args = null, CustomResourceOptions? opts = null)
public StoragePolicyV2(String name, StoragePolicyV2Args args)
public StoragePolicyV2(String name, StoragePolicyV2Args args, CustomResourceOptions options)
type: nutanix:StoragePolicyV2
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "nutanix_storagepolicyv2" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args StoragePolicyV2Args
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args StoragePolicyV2Args
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args StoragePolicyV2Args
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args StoragePolicyV2Args
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args StoragePolicyV2Args
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var storagePolicyV2Resource = new Nutanix.StoragePolicyV2("storagePolicyV2Resource", new()
{
CategoryExtIds = new[]
{
"string",
},
CompressionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2CompressionSpecArgs
{
CompressionState = "string",
},
},
EncryptionSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2EncryptionSpecArgs
{
EncryptionState = "string",
},
},
FaultToleranceSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2FaultToleranceSpecArgs
{
ReplicationFactor = "string",
},
},
Name = "string",
QosSpecs = new[]
{
new Nutanix.Inputs.StoragePolicyV2QosSpecArgs
{
ThrottledIops = 0,
},
},
});
example, err := nutanix.NewStoragePolicyV2(ctx, "storagePolicyV2Resource", &nutanix.StoragePolicyV2Args{
CategoryExtIds: pulumi.StringArray{
pulumi.String("string"),
},
CompressionSpecs: nutanix.StoragePolicyV2CompressionSpecArray{
&nutanix.StoragePolicyV2CompressionSpecArgs{
CompressionState: pulumi.String("string"),
},
},
EncryptionSpecs: nutanix.StoragePolicyV2EncryptionSpecArray{
&nutanix.StoragePolicyV2EncryptionSpecArgs{
EncryptionState: pulumi.String("string"),
},
},
FaultToleranceSpecs: nutanix.StoragePolicyV2FaultToleranceSpecArray{
&nutanix.StoragePolicyV2FaultToleranceSpecArgs{
ReplicationFactor: pulumi.String("string"),
},
},
Name: pulumi.String("string"),
QosSpecs: nutanix.StoragePolicyV2QosSpecArray{
&nutanix.StoragePolicyV2QosSpecArgs{
ThrottledIops: pulumi.Int(0),
},
},
})
resource "nutanix_storagepolicyv2" "storagePolicyV2Resource" {
category_ext_ids = ["string"]
compression_specs {
compression_state = "string"
}
encryption_specs {
encryption_state = "string"
}
fault_tolerance_specs {
replication_factor = "string"
}
name = "string"
qos_specs {
throttled_iops = 0
}
}
var storagePolicyV2Resource = new StoragePolicyV2("storagePolicyV2Resource", StoragePolicyV2Args.builder()
.categoryExtIds("string")
.compressionSpecs(StoragePolicyV2CompressionSpecArgs.builder()
.compressionState("string")
.build())
.encryptionSpecs(StoragePolicyV2EncryptionSpecArgs.builder()
.encryptionState("string")
.build())
.faultToleranceSpecs(StoragePolicyV2FaultToleranceSpecArgs.builder()
.replicationFactor("string")
.build())
.name("string")
.qosSpecs(StoragePolicyV2QosSpecArgs.builder()
.throttledIops(0)
.build())
.build());
storage_policy_v2_resource = nutanix.StoragePolicyV2("storagePolicyV2Resource",
category_ext_ids=["string"],
compression_specs=[{
"compression_state": "string",
}],
encryption_specs=[{
"encryption_state": "string",
}],
fault_tolerance_specs=[{
"replication_factor": "string",
}],
name="string",
qos_specs=[{
"throttled_iops": 0,
}])
const storagePolicyV2Resource = new nutanix.StoragePolicyV2("storagePolicyV2Resource", {
categoryExtIds: ["string"],
compressionSpecs: [{
compressionState: "string",
}],
encryptionSpecs: [{
encryptionState: "string",
}],
faultToleranceSpecs: [{
replicationFactor: "string",
}],
name: "string",
qosSpecs: [{
throttledIops: 0,
}],
});
type: nutanix:StoragePolicyV2
properties:
categoryExtIds:
- string
compressionSpecs:
- compressionState: string
encryptionSpecs:
- encryptionState: string
faultToleranceSpecs:
- replicationFactor: string
name: string
qosSpecs:
- throttledIops: 0
StoragePolicyV2 Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The StoragePolicyV2 resource accepts the following input properties:
- Category
Ext List<string>Ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- Compression
Specs List<PiersKarsenbarg. Nutanix. Inputs. Storage Policy V2Compression Spec> - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- Encryption
Specs List<PiersKarsenbarg. Nutanix. Inputs. Storage Policy V2Encryption Spec> - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- Fault
Tolerance List<PiersSpecs Karsenbarg. Nutanix. Inputs. Storage Policy V2Fault Tolerance Spec> - (Optional) Defines Fault Tolerance parameters for the entities.
- Name string
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- Qos
Specs List<PiersKarsenbarg. Nutanix. Inputs. Storage Policy V2Qos Spec> - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- Category
Ext []stringIds - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- Compression
Specs []StoragePolicy V2Compression Spec Args - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- Encryption
Specs []StoragePolicy V2Encryption Spec Args - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- Fault
Tolerance []StorageSpecs Policy V2Fault Tolerance Spec Args - (Optional) Defines Fault Tolerance parameters for the entities.
- Name string
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- Qos
Specs []StoragePolicy V2Qos Spec Args - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- category_
ext_ list(string)ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression_
specs list(object) - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption_
specs list(object) - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- fault_
tolerance_ list(object)specs - (Optional) Defines Fault Tolerance parameters for the entities.
- name string
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- qos_
specs list(object) - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- category
Ext List<String>Ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression
Specs List<StoragePolicy V2Compression Spec> - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption
Specs List<StoragePolicy V2Encryption Spec> - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- fault
Tolerance List<StorageSpecs Policy V2Fault Tolerance Spec> - (Optional) Defines Fault Tolerance parameters for the entities.
- name String
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- qos
Specs List<StoragePolicy V2Qos Spec> - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- category
Ext string[]Ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression
Specs StoragePolicy V2Compression Spec[] - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption
Specs StoragePolicy V2Encryption Spec[] - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- fault
Tolerance StorageSpecs Policy V2Fault Tolerance Spec[] - (Optional) Defines Fault Tolerance parameters for the entities.
- name string
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- qos
Specs StoragePolicy V2Qos Spec[] - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- category_
ext_ Sequence[str]ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression_
specs Sequence[StoragePolicy V2Compression Spec Args] - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption_
specs Sequence[StoragePolicy V2Encryption Spec Args] - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- fault_
tolerance_ Sequence[Storagespecs Policy V2Fault Tolerance Spec Args] - (Optional) Defines Fault Tolerance parameters for the entities.
- name str
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- qos_
specs Sequence[StoragePolicy V2Qos Spec Args] - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- category
Ext List<String>Ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression
Specs List<Property Map> - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption
Specs List<Property Map> - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- fault
Tolerance List<Property Map>Specs - (Optional) Defines Fault Tolerance parameters for the entities.
- name String
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- qos
Specs List<Property Map> - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
Outputs
All input properties are implicitly available as output properties. Additionally, the StoragePolicyV2 resource produces the following output properties:
- Ext
Id string - (Computed) External identifier of the Storage Policy.
- Id string
- The provider-assigned unique ID for this managed resource.
- Links
List<Piers
Karsenbarg. Nutanix. Outputs. Storage Policy V2Link> - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- Policy
Type string - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- Tenant
Id string - A globally unique identifier that represents the tenant that owns this entity.
- Ext
Id string - (Computed) External identifier of the Storage Policy.
- Id string
- The provider-assigned unique ID for this managed resource.
- Links
[]Storage
Policy V2Link - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- Policy
Type string - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- Tenant
Id string - A globally unique identifier that represents the tenant that owns this entity.
- ext_
id string - (Computed) External identifier of the Storage Policy.
- id string
- The provider-assigned unique ID for this managed resource.
- links list(object)
- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- policy_
type string - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- tenant_
id string - A globally unique identifier that represents the tenant that owns this entity.
- ext
Id String - (Computed) External identifier of the Storage Policy.
- id String
- The provider-assigned unique ID for this managed resource.
- links
List<Storage
Policy V2Link> - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- policy
Type String - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- tenant
Id String - A globally unique identifier that represents the tenant that owns this entity.
- ext
Id string - (Computed) External identifier of the Storage Policy.
- id string
- The provider-assigned unique ID for this managed resource.
- links
Storage
Policy V2Link[] - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- policy
Type string - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- tenant
Id string - A globally unique identifier that represents the tenant that owns this entity.
- ext_
id str - (Computed) External identifier of the Storage Policy.
- id str
- The provider-assigned unique ID for this managed resource.
- links
Sequence[Storage
Policy V2Link] - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- policy_
type str - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- tenant_
id str - A globally unique identifier that represents the tenant that owns this entity.
- ext
Id String - (Computed) External identifier of the Storage Policy.
- id String
- The provider-assigned unique ID for this managed resource.
- links List<Property Map>
- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- policy
Type String - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- tenant
Id String - A globally unique identifier that represents the tenant that owns this entity.
Look up Existing StoragePolicyV2 Resource
Get an existing StoragePolicyV2 resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: StoragePolicyV2State, opts?: CustomResourceOptions): StoragePolicyV2@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
category_ext_ids: Optional[Sequence[str]] = None,
compression_specs: Optional[Sequence[StoragePolicyV2CompressionSpecArgs]] = None,
encryption_specs: Optional[Sequence[StoragePolicyV2EncryptionSpecArgs]] = None,
ext_id: Optional[str] = None,
fault_tolerance_specs: Optional[Sequence[StoragePolicyV2FaultToleranceSpecArgs]] = None,
links: Optional[Sequence[StoragePolicyV2LinkArgs]] = None,
name: Optional[str] = None,
policy_type: Optional[str] = None,
qos_specs: Optional[Sequence[StoragePolicyV2QosSpecArgs]] = None,
tenant_id: Optional[str] = None) -> StoragePolicyV2func GetStoragePolicyV2(ctx *Context, name string, id IDInput, state *StoragePolicyV2State, opts ...ResourceOption) (*StoragePolicyV2, error)public static StoragePolicyV2 Get(string name, Input<string> id, StoragePolicyV2State? state, CustomResourceOptions? opts = null)public static StoragePolicyV2 get(String name, Output<String> id, StoragePolicyV2State state, CustomResourceOptions options)resources: _: type: nutanix:StoragePolicyV2 get: id: ${id}import {
to = nutanix_storagepolicyv2.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Category
Ext List<string>Ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- Compression
Specs List<PiersKarsenbarg. Nutanix. Inputs. Storage Policy V2Compression Spec> - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- Encryption
Specs List<PiersKarsenbarg. Nutanix. Inputs. Storage Policy V2Encryption Spec> - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- Ext
Id string - (Computed) External identifier of the Storage Policy.
- Fault
Tolerance List<PiersSpecs Karsenbarg. Nutanix. Inputs. Storage Policy V2Fault Tolerance Spec> - (Optional) Defines Fault Tolerance parameters for the entities.
- Links
List<Piers
Karsenbarg. Nutanix. Inputs. Storage Policy V2Link> - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- Name string
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- Policy
Type string - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- Qos
Specs List<PiersKarsenbarg. Nutanix. Inputs. Storage Policy V2Qos Spec> - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- Tenant
Id string - A globally unique identifier that represents the tenant that owns this entity.
- Category
Ext []stringIds - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- Compression
Specs []StoragePolicy V2Compression Spec Args - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- Encryption
Specs []StoragePolicy V2Encryption Spec Args - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- Ext
Id string - (Computed) External identifier of the Storage Policy.
- Fault
Tolerance []StorageSpecs Policy V2Fault Tolerance Spec Args - (Optional) Defines Fault Tolerance parameters for the entities.
- Links
[]Storage
Policy V2Link Args - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- Name string
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- Policy
Type string - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- Qos
Specs []StoragePolicy V2Qos Spec Args - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- Tenant
Id string - A globally unique identifier that represents the tenant that owns this entity.
- category_
ext_ list(string)ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression_
specs list(object) - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption_
specs list(object) - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- ext_
id string - (Computed) External identifier of the Storage Policy.
- fault_
tolerance_ list(object)specs - (Optional) Defines Fault Tolerance parameters for the entities.
- links list(object)
- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- name string
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- policy_
type string - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- qos_
specs list(object) - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- tenant_
id string - A globally unique identifier that represents the tenant that owns this entity.
- category
Ext List<String>Ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression
Specs List<StoragePolicy V2Compression Spec> - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption
Specs List<StoragePolicy V2Encryption Spec> - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- ext
Id String - (Computed) External identifier of the Storage Policy.
- fault
Tolerance List<StorageSpecs Policy V2Fault Tolerance Spec> - (Optional) Defines Fault Tolerance parameters for the entities.
- links
List<Storage
Policy V2Link> - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- name String
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- policy
Type String - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- qos
Specs List<StoragePolicy V2Qos Spec> - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- tenant
Id String - A globally unique identifier that represents the tenant that owns this entity.
- category
Ext string[]Ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression
Specs StoragePolicy V2Compression Spec[] - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption
Specs StoragePolicy V2Encryption Spec[] - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- ext
Id string - (Computed) External identifier of the Storage Policy.
- fault
Tolerance StorageSpecs Policy V2Fault Tolerance Spec[] - (Optional) Defines Fault Tolerance parameters for the entities.
- links
Storage
Policy V2Link[] - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- name string
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- policy
Type string - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- qos
Specs StoragePolicy V2Qos Spec[] - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- tenant
Id string - A globally unique identifier that represents the tenant that owns this entity.
- category_
ext_ Sequence[str]ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression_
specs Sequence[StoragePolicy V2Compression Spec Args] - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption_
specs Sequence[StoragePolicy V2Encryption Spec Args] - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- ext_
id str - (Computed) External identifier of the Storage Policy.
- fault_
tolerance_ Sequence[Storagespecs Policy V2Fault Tolerance Spec Args] - (Optional) Defines Fault Tolerance parameters for the entities.
- links
Sequence[Storage
Policy V2Link Args] - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- name str
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- policy_
type str - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- qos_
specs Sequence[StoragePolicy V2Qos Spec Args] - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- tenant_
id str - A globally unique identifier that represents the tenant that owns this entity.
- category
Ext List<String>Ids - (Optional) List of external identifiers for Categories to be included in the Storage Policy. Each ID must be a valid UUID format. Maximum 20 items allowed.
- compression
Specs List<Property Map> - (Optional) Defines compression parameters for entities governed by the Storage Policy.
- encryption
Specs List<Property Map> - (Optional) Defines encryption parameters for entities governed by the Storage Policy.
- ext
Id String - (Computed) External identifier of the Storage Policy.
- fault
Tolerance List<Property Map>Specs - (Optional) Defines Fault Tolerance parameters for the entities.
- links List<Property Map>
- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.
- name String
- (Required) Storage Policy name. Must be unique and cannot exceed 64 characters.
- policy
Type String - (Computed) Indicates whether the policy is user-created or system-created. Valid values:
"USER","SYSTEM".
- (Computed) Indicates whether the policy is user-created or system-created. Valid values:
- qos
Specs List<Property Map> - (Optional) Defines Storage Quality of Service (QOS) parameters for the entities.
- tenant
Id String - A globally unique identifier that represents the tenant that owns this entity.
Supporting Types
StoragePolicyV2CompressionSpec, StoragePolicyV2CompressionSpecArgs
- Compression
State string - (Required) Controls enabling or disabling compression. If no explicit preference is set, the system chooses a value. Valid values:
"DISABLED":- User wants data not compressed."POSTPROCESS":- User wants data compressed later."INLINE":- User wants data compressed inline."SYSTEM_DERIVED":- User is not interested in compression; system decides.
- Compression
State string - (Required) Controls enabling or disabling compression. If no explicit preference is set, the system chooses a value. Valid values:
"DISABLED":- User wants data not compressed."POSTPROCESS":- User wants data compressed later."INLINE":- User wants data compressed inline."SYSTEM_DERIVED":- User is not interested in compression; system decides.
- compression_
state string - (Required) Controls enabling or disabling compression. If no explicit preference is set, the system chooses a value. Valid values:
"DISABLED":- User wants data not compressed."POSTPROCESS":- User wants data compressed later."INLINE":- User wants data compressed inline."SYSTEM_DERIVED":- User is not interested in compression; system decides.
- compression
State String - (Required) Controls enabling or disabling compression. If no explicit preference is set, the system chooses a value. Valid values:
"DISABLED":- User wants data not compressed."POSTPROCESS":- User wants data compressed later."INLINE":- User wants data compressed inline."SYSTEM_DERIVED":- User is not interested in compression; system decides.
- compression
State string - (Required) Controls enabling or disabling compression. If no explicit preference is set, the system chooses a value. Valid values:
"DISABLED":- User wants data not compressed."POSTPROCESS":- User wants data compressed later."INLINE":- User wants data compressed inline."SYSTEM_DERIVED":- User is not interested in compression; system decides.
- compression_
state str - (Required) Controls enabling or disabling compression. If no explicit preference is set, the system chooses a value. Valid values:
"DISABLED":- User wants data not compressed."POSTPROCESS":- User wants data compressed later."INLINE":- User wants data compressed inline."SYSTEM_DERIVED":- User is not interested in compression; system decides.
- compression
State String - (Required) Controls enabling or disabling compression. If no explicit preference is set, the system chooses a value. Valid values:
"DISABLED":- User wants data not compressed."POSTPROCESS":- User wants data compressed later."INLINE":- User wants data compressed inline."SYSTEM_DERIVED":- User is not interested in compression; system decides.
StoragePolicyV2EncryptionSpec, StoragePolicyV2EncryptionSpecArgs
- Encryption
State string - (Required) Controls enabling encryption. Once enabled, it cannot be disabled. If no explicit preference is set, the system decides. Valid values:
"SYSTEM_DERIVED":- User is not interested in encryption; system decides."ENABLED":- User wants data encrypted.
Note: Once
encryptionStateis explicitly set toENABLED, it cannot be reverted back to a system-derived value.
- Encryption
State string - (Required) Controls enabling encryption. Once enabled, it cannot be disabled. If no explicit preference is set, the system decides. Valid values:
"SYSTEM_DERIVED":- User is not interested in encryption; system decides."ENABLED":- User wants data encrypted.
Note: Once
encryptionStateis explicitly set toENABLED, it cannot be reverted back to a system-derived value.
- encryption_
state string - (Required) Controls enabling encryption. Once enabled, it cannot be disabled. If no explicit preference is set, the system decides. Valid values:
"SYSTEM_DERIVED":- User is not interested in encryption; system decides."ENABLED":- User wants data encrypted.
Note: Once
encryptionStateis explicitly set toENABLED, it cannot be reverted back to a system-derived value.
- encryption
State String - (Required) Controls enabling encryption. Once enabled, it cannot be disabled. If no explicit preference is set, the system decides. Valid values:
"SYSTEM_DERIVED":- User is not interested in encryption; system decides."ENABLED":- User wants data encrypted.
Note: Once
encryptionStateis explicitly set toENABLED, it cannot be reverted back to a system-derived value.
- encryption
State string - (Required) Controls enabling encryption. Once enabled, it cannot be disabled. If no explicit preference is set, the system decides. Valid values:
"SYSTEM_DERIVED":- User is not interested in encryption; system decides."ENABLED":- User wants data encrypted.
Note: Once
encryptionStateis explicitly set toENABLED, it cannot be reverted back to a system-derived value.
- encryption_
state str - (Required) Controls enabling encryption. Once enabled, it cannot be disabled. If no explicit preference is set, the system decides. Valid values:
"SYSTEM_DERIVED":- User is not interested in encryption; system decides."ENABLED":- User wants data encrypted.
Note: Once
encryptionStateis explicitly set toENABLED, it cannot be reverted back to a system-derived value.
- encryption
State String - (Required) Controls enabling encryption. Once enabled, it cannot be disabled. If no explicit preference is set, the system decides. Valid values:
"SYSTEM_DERIVED":- User is not interested in encryption; system decides."ENABLED":- User wants data encrypted.
Note: Once
encryptionStateis explicitly set toENABLED, it cannot be reverted back to a system-derived value.
StoragePolicyV2FaultToleranceSpec, StoragePolicyV2FaultToleranceSpecArgs
- Replication
Factor string - (Required) Specifies the number of data copies for entities governed by the Storage Policy. Valid values:
"SYSTEM_DERIVED":- User has not provided the number of copies; system decides."TWO":- Two data copies (Original + 1 copy)."THREE":- Three data copies (Original + 2 copies).
- Replication
Factor string - (Required) Specifies the number of data copies for entities governed by the Storage Policy. Valid values:
"SYSTEM_DERIVED":- User has not provided the number of copies; system decides."TWO":- Two data copies (Original + 1 copy)."THREE":- Three data copies (Original + 2 copies).
- replication_
factor string - (Required) Specifies the number of data copies for entities governed by the Storage Policy. Valid values:
"SYSTEM_DERIVED":- User has not provided the number of copies; system decides."TWO":- Two data copies (Original + 1 copy)."THREE":- Three data copies (Original + 2 copies).
- replication
Factor String - (Required) Specifies the number of data copies for entities governed by the Storage Policy. Valid values:
"SYSTEM_DERIVED":- User has not provided the number of copies; system decides."TWO":- Two data copies (Original + 1 copy)."THREE":- Three data copies (Original + 2 copies).
- replication
Factor string - (Required) Specifies the number of data copies for entities governed by the Storage Policy. Valid values:
"SYSTEM_DERIVED":- User has not provided the number of copies; system decides."TWO":- Two data copies (Original + 1 copy)."THREE":- Three data copies (Original + 2 copies).
- replication_
factor str - (Required) Specifies the number of data copies for entities governed by the Storage Policy. Valid values:
"SYSTEM_DERIVED":- User has not provided the number of copies; system decides."TWO":- Two data copies (Original + 1 copy)."THREE":- Three data copies (Original + 2 copies).
- replication
Factor String - (Required) Specifies the number of data copies for entities governed by the Storage Policy. Valid values:
"SYSTEM_DERIVED":- User has not provided the number of copies; system decides."TWO":- Two data copies (Original + 1 copy)."THREE":- Three data copies (Original + 2 copies).
StoragePolicyV2Link, StoragePolicyV2LinkArgs
StoragePolicyV2QosSpec, StoragePolicyV2QosSpecArgs
- Throttled
Iops int - (Required) Specifies throttled IOPS for governed entities. The block size for IO is 32kB. Valid range: 100 to 2147483647.
- Throttled
Iops int - (Required) Specifies throttled IOPS for governed entities. The block size for IO is 32kB. Valid range: 100 to 2147483647.
- throttled_
iops number - (Required) Specifies throttled IOPS for governed entities. The block size for IO is 32kB. Valid range: 100 to 2147483647.
- throttled
Iops Integer - (Required) Specifies throttled IOPS for governed entities. The block size for IO is 32kB. Valid range: 100 to 2147483647.
- throttled
Iops number - (Required) Specifies throttled IOPS for governed entities. The block size for IO is 32kB. Valid range: 100 to 2147483647.
- throttled_
iops int - (Required) Specifies throttled IOPS for governed entities. The block size for IO is 32kB. Valid range: 100 to 2147483647.
- throttled
Iops Number - (Required) Specifies throttled IOPS for governed entities. The block size for IO is 32kB. Valid range: 100 to 2147483647.
Package Details
- Repository
- nutanix pierskarsenbarg/pulumi-nutanix
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
nutanixTerraform Provider.
published on Tuesday, May 26, 2026 by Piers Karsenbarg