LocationHdfsArgs

data class LocationHdfsArgs(val agentArns: Output<List<String>>? = null, val authenticationType: Output<String>? = null, val blockSize: Output<Int>? = null, val kerberosKeytab: Output<String>? = null, val kerberosKrb5Conf: Output<String>? = null, val kerberosPrincipal: Output<String>? = null, val kmsKeyProviderUri: Output<String>? = null, val nameNodes: Output<List<LocationHdfsNameNodeArgs>>? = null, val qopConfiguration: Output<LocationHdfsQopConfigurationArgs>? = null, val replicationFactor: Output<Int>? = null, val simpleUser: Output<String>? = null, val subdirectory: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<LocationHdfsArgs>

Manages an HDFS Location within AWS DataSync.

NOTE: The DataSync Agents must be available before creating this resource.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.datasync.LocationHdfs;
import com.pulumi.aws.datasync.LocationHdfsArgs;
import com.pulumi.aws.datasync.inputs.LocationHdfsNameNodeArgs;
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 example = new LocationHdfs("example", LocationHdfsArgs.builder()
.agentArns(aws_datasync_agent.example().arn())
.authenticationType("SIMPLE")
.simpleUser("example")
.nameNodes(LocationHdfsNameNodeArgs.builder()
.hostname(aws_instance.example().private_dns())
.port(80)
.build())
.build());
}
}

Import

aws_datasync_location_hdfs can be imported by using the Amazon Resource Name (ARN), e.g.,

$ pulumi import aws:datasync/locationHdfs:LocationHdfs example arn:aws:datasync:us-east-1:123456789012:location/loc-12345678901234567

Constructors

Link copied to clipboard
constructor(agentArns: Output<List<String>>? = null, authenticationType: Output<String>? = null, blockSize: Output<Int>? = null, kerberosKeytab: Output<String>? = null, kerberosKrb5Conf: Output<String>? = null, kerberosPrincipal: Output<String>? = null, kmsKeyProviderUri: Output<String>? = null, nameNodes: Output<List<LocationHdfsNameNodeArgs>>? = null, qopConfiguration: Output<LocationHdfsQopConfigurationArgs>? = null, replicationFactor: Output<Int>? = null, simpleUser: Output<String>? = null, subdirectory: Output<String>? = null, tags: Output<Map<String, String>>? = null)

Properties

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

A list of DataSync Agent ARNs with which this location will be associated.

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

The type of authentication used to determine the identity of the user. Valid values are SIMPLE and KERBEROS.

Link copied to clipboard
val blockSize: Output<Int>? = null

The size of data blocks to write into the HDFS cluster. The block size must be a multiple of 512 bytes. The default block size is 128 mebibytes (MiB).

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

The Kerberos key table (keytab) that contains mappings between the defined Kerberos principal and the encrypted keys. If KERBEROS is specified for authentication_type, this parameter is required.

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

The krb5.conf file that contains the Kerberos configuration information. If KERBEROS is specified for authentication_type, this parameter is required.

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

The Kerberos principal with access to the files and folders on the HDFS cluster. If KERBEROS is specified for authentication_type, this parameter is required.

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

The URI of the HDFS cluster's Key Management Server (KMS).

Link copied to clipboard

The NameNode that manages the HDFS namespace. The NameNode performs operations such as opening, closing, and renaming files and directories. The NameNode contains the information to map blocks of data to the DataNodes. You can use only one NameNode. See configuration below.

Link copied to clipboard

The Quality of Protection (QOP) configuration specifies the Remote Procedure Call (RPC) and data transfer protection settings configured on the Hadoop Distributed File System (HDFS) cluster. If qop_configuration isn't specified, rpc_protection and data_transfer_protection default to PRIVACY. If you set RpcProtection or DataTransferProtection, the other parameter assumes the same value. See configuration below.

Link copied to clipboard
val replicationFactor: Output<Int>? = null

The number of DataNodes to replicate the data to when writing to the HDFS cluster. By default, data is replicated to three DataNodes.

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

The user name used to identify the client on the host operating system. If SIMPLE is specified for authentication_type, this parameter is required.

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

A subdirectory in the HDFS cluster. This subdirectory is used to read data from or write data to the HDFS cluster. If the subdirectory isn't specified, it will default to /.

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

Key-value pairs of resource tags to assign to the DataSync Location. 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(): LocationHdfsArgs