Class: AWSCDK::Sagemaker::CfnCluster::ClusterInstanceStorageConfigProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
sagemaker/cfn_cluster.rb

Overview

Defines the configuration for attaching additional storage to the instances in the SageMaker HyperPod cluster instance group.

To learn more, see SageMaker HyperPod release notes: June 20, 2024 .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ebs_volume_config: nil, fsx_lustre_config: nil, fsx_open_zfs_config: nil) ⇒ ClusterInstanceStorageConfigProperty

Returns a new instance of ClusterInstanceStorageConfigProperty.

Parameters:



1250
1251
1252
1253
1254
1255
1256
1257
# File 'sagemaker/cfn_cluster.rb', line 1250

def initialize(ebs_volume_config: nil, fsx_lustre_config: nil, fsx_open_zfs_config: nil)
  @ebs_volume_config = ebs_volume_config.is_a?(Hash) ? ::AWSCDK::Sagemaker::CfnCluster::ClusterEbsVolumeConfigProperty.new(**ebs_volume_config.transform_keys(&:to_sym)) : ebs_volume_config
  Jsii::Type.check_type(@ebs_volume_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zYWdlbWFrZXIuQ2ZuQ2x1c3Rlci5DbHVzdGVyRWJzVm9sdW1lQ29uZmlnUHJvcGVydHkifV19fQ==")), "ebsVolumeConfig") unless @ebs_volume_config.nil?
  @fsx_lustre_config = fsx_lustre_config.is_a?(Hash) ? ::AWSCDK::Sagemaker::CfnCluster::ClusterFSXLustreConfigProperty.new(**fsx_lustre_config.transform_keys(&:to_sym)) : fsx_lustre_config
  Jsii::Type.check_type(@fsx_lustre_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zYWdlbWFrZXIuQ2ZuQ2x1c3Rlci5DbHVzdGVyRnN4THVzdHJlQ29uZmlnUHJvcGVydHkifV19fQ==")), "fsxLustreConfig") unless @fsx_lustre_config.nil?
  @fsx_open_zfs_config = fsx_open_zfs_config.is_a?(Hash) ? ::AWSCDK::Sagemaker::CfnCluster::ClusterFSXOpenZfsConfigProperty.new(**fsx_open_zfs_config.transform_keys(&:to_sym)) : fsx_open_zfs_config
  Jsii::Type.check_type(@fsx_open_zfs_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zYWdlbWFrZXIuQ2ZuQ2x1c3Rlci5DbHVzdGVyRnN4T3Blblpmc0NvbmZpZ1Byb3BlcnR5In1dfX0=")), "fsxOpenZfsConfig") unless @fsx_open_zfs_config.nil?
end

Instance Attribute Details

#ebs_volume_configAWSCDK::IResolvable, ... (readonly)

Defines the configuration for attaching additional Amazon Elastic Block Store (EBS) volumes to the instances in the SageMaker HyperPod cluster instance group.

The additional EBS volume is attached to each instance within the SageMaker HyperPod cluster instance group and mounted to /opt/sagemaker .



1265
1266
1267
# File 'sagemaker/cfn_cluster.rb', line 1265

def ebs_volume_config
  @ebs_volume_config
end

#fsx_lustre_configAWSCDK::IResolvable, ... (readonly)

Configuration for mounting an Amazon FSx Lustre file system to the instances in the SageMaker HyperPod cluster instance group.



1270
1271
1272
# File 'sagemaker/cfn_cluster.rb', line 1270

def fsx_lustre_config
  @fsx_lustre_config
end

#fsx_open_zfs_configAWSCDK::IResolvable, ... (readonly)

Configuration for mounting an Amazon FSx OpenZFS file system to the instances in the SageMaker HyperPod cluster instance group.



1275
1276
1277
# File 'sagemaker/cfn_cluster.rb', line 1275

def fsx_open_zfs_config
  @fsx_open_zfs_config
end

Class Method Details

.jsii_propertiesObject



1277
1278
1279
1280
1281
1282
1283
# File 'sagemaker/cfn_cluster.rb', line 1277

def self.jsii_properties
  {
    :ebs_volume_config => "ebsVolumeConfig",
    :fsx_lustre_config => "fsxLustreConfig",
    :fsx_open_zfs_config => "fsxOpenZfsConfig",
  }
end

Instance Method Details

#to_jsiiObject



1285
1286
1287
1288
1289
1290
1291
1292
1293
# File 'sagemaker/cfn_cluster.rb', line 1285

def to_jsii
  result = {}
  result.merge!({
    "ebsVolumeConfig" => @ebs_volume_config,
    "fsxLustreConfig" => @fsx_lustre_config,
    "fsxOpenZfsConfig" => @fsx_open_zfs_config,
  })
  result.compact
end