Class: AWSCDK::Datasync::CfnLocationHDFSProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Datasync::CfnLocationHDFSProps
- Defined in:
- datasync/cfn_location_hdfs_props.rb
Overview
Properties for defining a CfnLocationHDFS.
Instance Attribute Summary collapse
-
#agent_arns ⇒ Array<String>
readonly
The Amazon Resource Names (ARNs) of the DataSync agents that can connect to your HDFS cluster.
-
#authentication_type ⇒ String
readonly
The authentication mode used to determine identity of user.
-
#block_size ⇒ Numeric?
readonly
The size of data blocks to write into the HDFS cluster.
-
#cmk_secret_config ⇒ AWSCDK::IResolvable, ...
readonly
Specifies configuration information for a DataSync-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.
-
#custom_secret_config ⇒ AWSCDK::IResolvable, ...
readonly
Specifies configuration information for a customer-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.
-
#kerberos_keytab ⇒ String?
readonly
The Kerberos key table (keytab) that contains mappings between the defined Kerberos principal and the encrypted keys.
-
#kerberos_krb5_conf ⇒ String?
readonly
The
krb5.conffile that contains the Kerberos configuration information. -
#kerberos_principal ⇒ String?
readonly
The Kerberos principal with access to the files and folders on the HDFS cluster.
-
#kms_key_provider_uri ⇒ String?
readonly
The URI of the HDFS cluster's Key Management Server (KMS).
-
#name_nodes ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Datasync::CfnLocationHDFS::NameNodeProperty>
readonly
The NameNode that manages the HDFS namespace.
-
#qop_configuration ⇒ AWSCDK::IResolvable, ...
readonly
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.
-
#replication_factor ⇒ Numeric?
readonly
The number of DataNodes to replicate the data to when writing to the HDFS cluster.
-
#simple_user ⇒ String?
readonly
The user name used to identify the client on the host operating system.
-
#subdirectory ⇒ String?
readonly
A subdirectory in the HDFS cluster.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The key-value pair that represents the tag that you want to add to the location.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(agent_arns:, authentication_type:, name_nodes:, block_size: nil, cmk_secret_config: nil, custom_secret_config: nil, kerberos_keytab: nil, kerberos_krb5_conf: nil, kerberos_principal: nil, kms_key_provider_uri: nil, qop_configuration: nil, replication_factor: nil, simple_user: nil, subdirectory: nil, tags: nil) ⇒ CfnLocationHDFSProps
constructor
A new instance of CfnLocationHDFSProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(agent_arns:, authentication_type:, name_nodes:, block_size: nil, cmk_secret_config: nil, custom_secret_config: nil, kerberos_keytab: nil, kerberos_krb5_conf: nil, kerberos_principal: nil, kms_key_provider_uri: nil, qop_configuration: nil, replication_factor: nil, simple_user: nil, subdirectory: nil, tags: nil) ⇒ CfnLocationHDFSProps
Returns a new instance of CfnLocationHDFSProps.
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'datasync/cfn_location_hdfs_props.rb', line 24 def initialize(agent_arns:, authentication_type:, name_nodes:, block_size: nil, cmk_secret_config: nil, custom_secret_config: nil, kerberos_keytab: nil, kerberos_krb5_conf: nil, kerberos_principal: nil, kms_key_provider_uri: nil, qop_configuration: nil, replication_factor: nil, simple_user: nil, subdirectory: nil, tags: nil) @agent_arns = agent_arns Jsii::Type.check_type(@agent_arns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "agentArns") @authentication_type = authentication_type Jsii::Type.check_type(@authentication_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "authenticationType") @name_nodes = name_nodes Jsii::Type.check_type(@name_nodes, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZGF0YXN5bmMuQ2ZuTG9jYXRpb25IREZTLk5hbWVOb2RlUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "nameNodes") @block_size = block_size Jsii::Type.check_type(@block_size, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "blockSize") unless @block_size.nil? @cmk_secret_config = cmk_secret_config.is_a?(Hash) ? ::AWSCDK::Datasync::CfnLocationHDFS::CmkSecretConfigProperty.new(**cmk_secret_config.transform_keys(&:to_sym)) : cmk_secret_config Jsii::Type.check_type(@cmk_secret_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhc3luYy5DZm5Mb2NhdGlvbkhERlMuQ21rU2VjcmV0Q29uZmlnUHJvcGVydHkifV19fQ==")), "cmkSecretConfig") unless @cmk_secret_config.nil? @custom_secret_config = custom_secret_config.is_a?(Hash) ? ::AWSCDK::Datasync::CfnLocationHDFS::CustomSecretConfigProperty.new(**custom_secret_config.transform_keys(&:to_sym)) : custom_secret_config Jsii::Type.check_type(@custom_secret_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhc3luYy5DZm5Mb2NhdGlvbkhERlMuQ3VzdG9tU2VjcmV0Q29uZmlnUHJvcGVydHkifV19fQ==")), "customSecretConfig") unless @custom_secret_config.nil? @kerberos_keytab = kerberos_keytab Jsii::Type.check_type(@kerberos_keytab, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kerberosKeytab") unless @kerberos_keytab.nil? @kerberos_krb5_conf = kerberos_krb5_conf Jsii::Type.check_type(@kerberos_krb5_conf, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kerberosKrb5Conf") unless @kerberos_krb5_conf.nil? @kerberos_principal = kerberos_principal Jsii::Type.check_type(@kerberos_principal, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kerberosPrincipal") unless @kerberos_principal.nil? @kms_key_provider_uri = kms_key_provider_uri Jsii::Type.check_type(@kms_key_provider_uri, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyProviderUri") unless @kms_key_provider_uri.nil? @qop_configuration = qop_configuration.is_a?(Hash) ? ::AWSCDK::Datasync::CfnLocationHDFS::QopConfigurationProperty.new(**qop_configuration.transform_keys(&:to_sym)) : qop_configuration Jsii::Type.check_type(@qop_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhc3luYy5DZm5Mb2NhdGlvbkhERlMuUW9wQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "qopConfiguration") unless @qop_configuration.nil? @replication_factor = replication_factor Jsii::Type.check_type(@replication_factor, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "replicationFactor") unless @replication_factor.nil? @simple_user = simple_user Jsii::Type.check_type(@simple_user, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "simpleUser") unless @simple_user.nil? @subdirectory = subdirectory Jsii::Type.check_type(@subdirectory, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "subdirectory") unless @subdirectory.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#agent_arns ⇒ Array<String> (readonly)
The Amazon Resource Names (ARNs) of the DataSync agents that can connect to your HDFS cluster.
61 62 63 |
# File 'datasync/cfn_location_hdfs_props.rb', line 61 def agent_arns @agent_arns end |
#authentication_type ⇒ String (readonly)
The authentication mode used to determine identity of user.
66 67 68 |
# File 'datasync/cfn_location_hdfs_props.rb', line 66 def authentication_type @authentication_type end |
#block_size ⇒ Numeric? (readonly)
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).
80 81 82 |
# File 'datasync/cfn_location_hdfs_props.rb', line 80 def block_size @block_size end |
#cmk_secret_config ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies configuration information for a DataSync-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.
85 86 87 |
# File 'datasync/cfn_location_hdfs_props.rb', line 85 def cmk_secret_config @cmk_secret_config end |
#custom_secret_config ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies configuration information for a customer-managed secret, such as an authentication token or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.
90 91 92 |
# File 'datasync/cfn_location_hdfs_props.rb', line 90 def custom_secret_config @custom_secret_config end |
#kerberos_keytab ⇒ String? (readonly)
The Kerberos key table (keytab) that contains mappings between the defined Kerberos principal and the encrypted keys.
Provide the base64-encoded file text. If KERBEROS is specified for AuthType , this value is required.
97 98 99 |
# File 'datasync/cfn_location_hdfs_props.rb', line 97 def kerberos_keytab @kerberos_keytab end |
#kerberos_krb5_conf ⇒ String? (readonly)
The krb5.conf file that contains the Kerberos configuration information. You can load the krb5.conf by providing a string of the file's contents or an Amazon S3 presigned URL of the file. If KERBEROS is specified for AuthType , this value is required.
102 103 104 |
# File 'datasync/cfn_location_hdfs_props.rb', line 102 def kerberos_krb5_conf @kerberos_krb5_conf end |
#kerberos_principal ⇒ String? (readonly)
The Kerberos principal with access to the files and folders on the HDFS cluster.
If
KERBEROSis specified forAuthenticationType, this parameter is required.
109 110 111 |
# File 'datasync/cfn_location_hdfs_props.rb', line 109 def kerberos_principal @kerberos_principal end |
#kms_key_provider_uri ⇒ String? (readonly)
The URI of the HDFS cluster's Key Management Server (KMS).
114 115 116 |
# File 'datasync/cfn_location_hdfs_props.rb', line 114 def kms_key_provider_uri @kms_key_provider_uri end |
#name_nodes ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Datasync::CfnLocationHDFS::NameNodeProperty> (readonly)
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.
73 74 75 |
# File 'datasync/cfn_location_hdfs_props.rb', line 73 def name_nodes @name_nodes end |
#qop_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
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 QopConfiguration isn't specified, RpcProtection and DataTransferProtection default to PRIVACY . If you set RpcProtection or DataTransferProtection , the other parameter assumes the same value.
121 122 123 |
# File 'datasync/cfn_location_hdfs_props.rb', line 121 def qop_configuration @qop_configuration end |
#replication_factor ⇒ Numeric? (readonly)
Default: - 3
The number of DataNodes to replicate the data to when writing to the HDFS cluster.
By default, data is replicated to three DataNodes.
129 130 131 |
# File 'datasync/cfn_location_hdfs_props.rb', line 129 def replication_factor @replication_factor end |
#simple_user ⇒ String? (readonly)
The user name used to identify the client on the host operating system.
If
SIMPLEis specified forAuthenticationType, this parameter is required.
136 137 138 |
# File 'datasync/cfn_location_hdfs_props.rb', line 136 def simple_user @simple_user end |
#subdirectory ⇒ String? (readonly)
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 / .
143 144 145 |
# File 'datasync/cfn_location_hdfs_props.rb', line 143 def subdirectory @subdirectory end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The key-value pair that represents the tag that you want to add to the location.
The value can be an empty string. We recommend using tags to name your resources.
150 151 152 |
# File 'datasync/cfn_location_hdfs_props.rb', line 150 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 |
# File 'datasync/cfn_location_hdfs_props.rb', line 152 def self.jsii_properties { :agent_arns => "agentArns", :authentication_type => "authenticationType", :name_nodes => "nameNodes", :block_size => "blockSize", :cmk_secret_config => "cmkSecretConfig", :custom_secret_config => "customSecretConfig", :kerberos_keytab => "kerberosKeytab", :kerberos_krb5_conf => "kerberosKrb5Conf", :kerberos_principal => "kerberosPrincipal", :kms_key_provider_uri => "kmsKeyProviderUri", :qop_configuration => "qopConfiguration", :replication_factor => "replicationFactor", :simple_user => "simpleUser", :subdirectory => "subdirectory", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 |
# File 'datasync/cfn_location_hdfs_props.rb', line 172 def to_jsii result = {} result.merge!({ "agentArns" => @agent_arns, "authenticationType" => @authentication_type, "nameNodes" => @name_nodes, "blockSize" => @block_size, "cmkSecretConfig" => @cmk_secret_config, "customSecretConfig" => @custom_secret_config, "kerberosKeytab" => @kerberos_keytab, "kerberosKrb5Conf" => @kerberos_krb5_conf, "kerberosPrincipal" => @kerberos_principal, "kmsKeyProviderUri" => @kms_key_provider_uri, "qopConfiguration" => @qop_configuration, "replicationFactor" => @replication_factor, "simpleUser" => @simple_user, "subdirectory" => @subdirectory, "tags" => @tags, }) result.compact end |