# Generated by default/object.tt
package Paws::SageMaker::ProcessingClusterConfig;
  use Moose;
  has InstanceCount => (is => 'ro', isa => 'Int', required => 1);
  has InstanceType => (is => 'ro', isa => 'Str', required => 1);
  has VolumeKmsKeyId => (is => 'ro', isa => 'Str');
  has VolumeSizeInGB => (is => 'ro', isa => 'Int', required => 1);

1;

### main pod documentation begin ###

=head1 NAME

Paws::SageMaker::ProcessingClusterConfig

=head1 USAGE

This class represents one of two things:

=head3 Arguments in a call to a service

Use the attributes of this class as arguments to methods. You shouldn't make instances of this class. 
Each attribute should be used as a named argument in the calls that expect this type of object.

As an example, if Att1 is expected to be a Paws::SageMaker::ProcessingClusterConfig object:

  $service_obj->Method(Att1 => { InstanceCount => $value, ..., VolumeSizeInGB => $value  });

=head3 Results returned from an API call

Use accessors for each attribute. If Att1 is expected to be an Paws::SageMaker::ProcessingClusterConfig object:

  $result = $service_obj->Method(...);
  $result->Att1->InstanceCount

=head1 DESCRIPTION

Configuration for the cluster used to run a processing job.

=head1 ATTRIBUTES


=head2 B<REQUIRED> InstanceCount => Int

The number of ML compute instances to use in the processing job. For
distributed processing jobs, specify a value greater than 1. The
default value is 1.


=head2 B<REQUIRED> InstanceType => Str

The ML compute instance type for the processing job.


=head2 VolumeKmsKeyId => Str

The Amazon Web Services Key Management Service (Amazon Web Services
KMS) key that Amazon SageMaker uses to encrypt data on the storage
volume attached to the ML compute instance(s) that run the processing
job.

Certain Nitro-based instances include local storage, dependent on the
instance type. Local storage volumes are encrypted using a hardware
module on the instance. You can't request a C<VolumeKmsKeyId> when
using an instance type with local storage.

For a list of instance types that support local instance storage, see
Instance Store Volumes
(https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#instance-store-volumes).

For more information about local instance storage encryption, see SSD
Instance Store Volumes
(https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html).


=head2 B<REQUIRED> VolumeSizeInGB => Int

The size of the ML storage volume in gigabytes that you want to
provision. You must specify sufficient ML storage for your scenario.

Certain Nitro-based instances include local storage with a fixed total
size, dependent on the instance type. When using these instances for
processing, Amazon SageMaker mounts the local instance storage instead
of Amazon EBS gp2 storage. You can't request a C<VolumeSizeInGB>
greater than the total size of the local instance storage.

For a list of instance types that support local instance storage,
including the total size per instance type, see Instance Store Volumes
(https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#instance-store-volumes).



=head1 SEE ALSO

This class forms part of L<Paws>, describing an object used in L<Paws::SageMaker>

=head1 BUGS and CONTRIBUTIONS

The source code is located here: L<https://github.com/pplu/aws-sdk-perl>

Please report bugs to: L<https://github.com/pplu/aws-sdk-perl/issues>

=cut

