File Coverage

blib/lib/Paws/EMR/InstanceFleetConfig.pm
Criterion Covered Total %
statement 3 3 100.0
branch n/a
condition n/a
subroutine 1 1 100.0
pod n/a
total 4 4 100.0


line stmt bran cond sub pod time code
1             package Paws::EMR::InstanceFleetConfig;
2 1     1   467 use Moose;
  1         2  
  1         9  
3             has InstanceFleetType => (is => 'ro', isa => 'Str', required => 1);
4             has InstanceTypeConfigs => (is => 'ro', isa => 'ArrayRef[Paws::EMR::InstanceTypeConfig]');
5             has LaunchSpecifications => (is => 'ro', isa => 'Paws::EMR::InstanceFleetProvisioningSpecifications');
6             has Name => (is => 'ro', isa => 'Str');
7             has TargetOnDemandCapacity => (is => 'ro', isa => 'Int');
8             has TargetSpotCapacity => (is => 'ro', isa => 'Int');
9             1;
10              
11             ### main pod documentation begin ###
12              
13             =head1 NAME
14              
15             Paws::EMR::InstanceFleetConfig
16              
17             =head1 USAGE
18              
19             This class represents one of two things:
20              
21             =head3 Arguments in a call to a service
22              
23             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
24             Each attribute should be used as a named argument in the calls that expect this type of object.
25              
26             As an example, if Att1 is expected to be a Paws::EMR::InstanceFleetConfig object:
27              
28             $service_obj->Method(Att1 => { InstanceFleetType => $value, ..., TargetSpotCapacity => $value });
29              
30             =head3 Results returned from an API call
31              
32             Use accessors for each attribute. If Att1 is expected to be an Paws::EMR::InstanceFleetConfig object:
33              
34             $result = $service_obj->Method(...);
35             $result->Att1->InstanceFleetType
36              
37             =head1 DESCRIPTION
38              
39             The configuration that defines an instance fleet.
40              
41             The instance fleet configuration is available only in Amazon EMR
42             versions 4.8.0 and later, excluding 5.0.x versions.
43              
44             =head1 ATTRIBUTES
45              
46              
47             =head2 B<REQUIRED> InstanceFleetType => Str
48              
49             The node type that the instance fleet hosts. Valid values are
50             MASTER,CORE,and TASK.
51              
52              
53             =head2 InstanceTypeConfigs => ArrayRef[L<Paws::EMR::InstanceTypeConfig>]
54              
55             The instance type configurations that define the EC2 instances in the
56             instance fleet.
57              
58              
59             =head2 LaunchSpecifications => L<Paws::EMR::InstanceFleetProvisioningSpecifications>
60              
61             The launch specification for the instance fleet.
62              
63              
64             =head2 Name => Str
65              
66             The friendly name of the instance fleet.
67              
68              
69             =head2 TargetOnDemandCapacity => Int
70              
71             The target capacity of On-Demand units for the instance fleet, which
72             determines how many On-Demand instances to provision. When the instance
73             fleet launches, Amazon EMR tries to provision On-Demand instances as
74             specified by InstanceTypeConfig. Each instance configuration has a
75             specified C<WeightedCapacity>. When an On-Demand instance is
76             provisioned, the C<WeightedCapacity> units count toward the target
77             capacity. Amazon EMR provisions instances until the target capacity is
78             totally fulfilled, even if this results in an overage. For example, if
79             there are 2 units remaining to fulfill capacity, and Amazon EMR can
80             only provision an instance with a C<WeightedCapacity> of 5 units, the
81             instance is provisioned, and the target capacity is exceeded by 3
82             units.
83              
84             If not specified or set to 0, only Spot instances are provisioned for
85             the instance fleet using C<TargetSpotCapacity>. At least one of
86             C<TargetSpotCapacity> and C<TargetOnDemandCapacity> should be greater
87             than 0. For a master instance fleet, only one of C<TargetSpotCapacity>
88             and C<TargetOnDemandCapacity> can be specified, and its value must be
89             1.
90              
91              
92             =head2 TargetSpotCapacity => Int
93              
94             The target capacity of Spot units for the instance fleet, which
95             determines how many Spot instances to provision. When the instance
96             fleet launches, Amazon EMR tries to provision Spot instances as
97             specified by InstanceTypeConfig. Each instance configuration has a
98             specified C<WeightedCapacity>. When a Spot instance is provisioned, the
99             C<WeightedCapacity> units count toward the target capacity. Amazon EMR
100             provisions instances until the target capacity is totally fulfilled,
101             even if this results in an overage. For example, if there are 2 units
102             remaining to fulfill capacity, and Amazon EMR can only provision an
103             instance with a C<WeightedCapacity> of 5 units, the instance is
104             provisioned, and the target capacity is exceeded by 3 units.
105              
106             If not specified or set to 0, only On-Demand instances are provisioned
107             for the instance fleet. At least one of C<TargetSpotCapacity> and
108             C<TargetOnDemandCapacity> should be greater than 0. For a master
109             instance fleet, only one of C<TargetSpotCapacity> and
110             C<TargetOnDemandCapacity> can be specified, and its value must be 1.
111              
112              
113              
114             =head1 SEE ALSO
115              
116             This class forms part of L<Paws>, describing an object used in L<Paws::EMR>
117              
118             =head1 BUGS and CONTRIBUTIONS
119              
120             The source code is located here: https://github.com/pplu/aws-sdk-perl
121              
122             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
123              
124             =cut
125