OntapStorageVirtualMachineArgs

data class OntapStorageVirtualMachineArgs(val activeDirectoryConfiguration: Output<OntapStorageVirtualMachineActiveDirectoryConfigurationArgs>? = null, val fileSystemId: Output<String>? = null, val name: Output<String>? = null, val rootVolumeSecurityStyle: Output<String>? = null, val svmAdminPassword: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<OntapStorageVirtualMachineArgs>

Manages a FSx Storage Virtual Machine. See the FSx ONTAP User Guide for more information.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.fsx.OntapStorageVirtualMachine("test", {
fileSystemId: testAwsFsxOntapFileSystem.id,
name: "test",
});
import pulumi
import pulumi_aws as aws
test = aws.fsx.OntapStorageVirtualMachine("test",
file_system_id=test_aws_fsx_ontap_file_system["id"],
name="test")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var test = new Aws.Fsx.OntapStorageVirtualMachine("test", new()
{
FileSystemId = testAwsFsxOntapFileSystem.Id,
Name = "test",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := fsx.NewOntapStorageVirtualMachine(ctx, "test", &fsx.OntapStorageVirtualMachineArgs{
FileSystemId: pulumi.Any(testAwsFsxOntapFileSystem.Id),
Name: pulumi.String("test"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.fsx.OntapStorageVirtualMachine;
import com.pulumi.aws.fsx.OntapStorageVirtualMachineArgs;
import java.util.List;
import java.util.ArrayList;
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 test = new OntapStorageVirtualMachine("test", OntapStorageVirtualMachineArgs.builder()
.fileSystemId(testAwsFsxOntapFileSystem.id())
.name("test")
.build());
}
}
resources:
test:
type: aws:fsx:OntapStorageVirtualMachine
properties:
fileSystemId: ${testAwsFsxOntapFileSystem.id}
name: test

Using a Self-Managed Microsoft Active Directory

Additional information for using AWS Directory Service with ONTAP File Systems can be found in the FSx ONTAP Guide.

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.fsx.OntapStorageVirtualMachine("test", {
fileSystemId: testAwsFsxOntapFileSystem.id,
name: "mysvm",
activeDirectoryConfiguration: {
netbiosName: "mysvm",
selfManagedActiveDirectoryConfiguration: {
dnsIps: [
"10.0.0.111",
"10.0.0.222",
],
domainName: "corp.example.com",
password: "avoid-plaintext-passwords",
username: "Admin",
},
},
});
import pulumi
import pulumi_aws as aws
test = aws.fsx.OntapStorageVirtualMachine("test",
file_system_id=test_aws_fsx_ontap_file_system["id"],
name="mysvm",
active_directory_configuration={
"netbios_name": "mysvm",
"self_managed_active_directory_configuration": {
"dns_ips": [
"10.0.0.111",
"10.0.0.222",
],
"domain_name": "corp.example.com",
"password": "avoid-plaintext-passwords",
"username": "Admin",
},
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var test = new Aws.Fsx.OntapStorageVirtualMachine("test", new()
{
FileSystemId = testAwsFsxOntapFileSystem.Id,
Name = "mysvm",
ActiveDirectoryConfiguration = new Aws.Fsx.Inputs.OntapStorageVirtualMachineActiveDirectoryConfigurationArgs
{
NetbiosName = "mysvm",
SelfManagedActiveDirectoryConfiguration = new Aws.Fsx.Inputs.OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfigurationArgs
{
DnsIps = new[]
{
"10.0.0.111",
"10.0.0.222",
},
DomainName = "corp.example.com",
Password = "avoid-plaintext-passwords",
Username = "Admin",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := fsx.NewOntapStorageVirtualMachine(ctx, "test", &fsx.OntapStorageVirtualMachineArgs{
FileSystemId: pulumi.Any(testAwsFsxOntapFileSystem.Id),
Name: pulumi.String("mysvm"),
ActiveDirectoryConfiguration: &fsx.OntapStorageVirtualMachineActiveDirectoryConfigurationArgs{
NetbiosName: pulumi.String("mysvm"),
SelfManagedActiveDirectoryConfiguration: &fsx.OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfigurationArgs{
DnsIps: pulumi.StringArray{
pulumi.String("10.0.0.111"),
pulumi.String("10.0.0.222"),
},
DomainName: pulumi.String("corp.example.com"),
Password: pulumi.String("avoid-plaintext-passwords"),
Username: pulumi.String("Admin"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.fsx.OntapStorageVirtualMachine;
import com.pulumi.aws.fsx.OntapStorageVirtualMachineArgs;
import com.pulumi.aws.fsx.inputs.OntapStorageVirtualMachineActiveDirectoryConfigurationArgs;
import com.pulumi.aws.fsx.inputs.OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
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 test = new OntapStorageVirtualMachine("test", OntapStorageVirtualMachineArgs.builder()
.fileSystemId(testAwsFsxOntapFileSystem.id())
.name("mysvm")
.activeDirectoryConfiguration(OntapStorageVirtualMachineActiveDirectoryConfigurationArgs.builder()
.netbiosName("mysvm")
.selfManagedActiveDirectoryConfiguration(OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfigurationArgs.builder()
.dnsIps(
"10.0.0.111",
"10.0.0.222")
.domainName("corp.example.com")
.password("avoid-plaintext-passwords")
.username("Admin")
.build())
.build())
.build());
}
}
resources:
test:
type: aws:fsx:OntapStorageVirtualMachine
properties:
fileSystemId: ${testAwsFsxOntapFileSystem.id}
name: mysvm
activeDirectoryConfiguration:
netbiosName: mysvm
selfManagedActiveDirectoryConfiguration:
dnsIps:
- 10.0.0.111
- 10.0.0.222
domainName: corp.example.com
password: avoid-plaintext-passwords
username: Admin

Import

Using pulumi import, import FSx Storage Virtual Machine using the id. For example:

$ pulumi import aws:fsx/ontapStorageVirtualMachine:OntapStorageVirtualMachine example svm-12345678abcdef123

Certain resource arguments, like svm_admin_password and the self_managed_active_directory configuation block password, do not have a FSx API method for reading the information after creation. If these arguments are set in the Pulumi program on an imported resource, Pulumi will always show a difference. To workaround this behavior, either omit the argument from the Pulumi program or use ignore_changes to hide the difference. For example:

Constructors

Link copied to clipboard
constructor(activeDirectoryConfiguration: Output<OntapStorageVirtualMachineActiveDirectoryConfigurationArgs>? = null, fileSystemId: Output<String>? = null, name: Output<String>? = null, rootVolumeSecurityStyle: Output<String>? = null, svmAdminPassword: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Properties

Link copied to clipboard

Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.

Link copied to clipboard
val fileSystemId: Output<String>? = null

The ID of the Amazon FSx ONTAP File System that this SVM will be created on.

Link copied to clipboard
val name: Output<String>? = null

The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character.

Link copied to clipboard
val rootVolumeSecurityStyle: Output<String>? = null

Specifies the root volume security style, Valid values are UNIX, NTFS, and MIXED. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is UNIX.

Link copied to clipboard
val svmAdminPassword: Output<String>? = null

Specifies the password to use when logging on to the SVM using a secure shell (SSH) connection to the SVM's management endpoint. Doing so enables you to manage the SVM using the NetApp ONTAP CLI or REST API. If you do not specify a password, you can still use the file system's fsxadmin user to manage the SVM.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

A map of tags to assign to the storage virtual machine. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Functions

Link copied to clipboard
open override fun toJava(): OntapStorageVirtualMachineArgs