File Coverage

blib/lib/Paws/EMR/InstanceFleet.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::InstanceFleet;
2 1     1   303 use Moose;
  1         2  
  1         6  
3             has Id => (is => 'ro', isa => 'Str');
4             has InstanceFleetType => (is => 'ro', isa => 'Str');
5             has InstanceTypeSpecifications => (is => 'ro', isa => 'ArrayRef[Paws::EMR::InstanceTypeSpecification]');
6             has LaunchSpecifications => (is => 'ro', isa => 'Paws::EMR::InstanceFleetProvisioningSpecifications');
7             has Name => (is => 'ro', isa => 'Str');
8             has ProvisionedOnDemandCapacity => (is => 'ro', isa => 'Int');
9             has ProvisionedSpotCapacity => (is => 'ro', isa => 'Int');
10             has Status => (is => 'ro', isa => 'Paws::EMR::InstanceFleetStatus');
11             has TargetOnDemandCapacity => (is => 'ro', isa => 'Int');
12             has TargetSpotCapacity => (is => 'ro', isa => 'Int');
13             1;
14              
15             ### main pod documentation begin ###
16              
17             =head1 NAME
18              
19             Paws::EMR::InstanceFleet
20              
21             =head1 USAGE
22              
23             This class represents one of two things:
24              
25             =head3 Arguments in a call to a service
26              
27             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
28             Each attribute should be used as a named argument in the calls that expect this type of object.
29              
30             As an example, if Att1 is expected to be a Paws::EMR::InstanceFleet object:
31              
32             $service_obj->Method(Att1 => { Id => $value, ..., TargetSpotCapacity => $value });
33              
34             =head3 Results returned from an API call
35              
36             Use accessors for each attribute. If Att1 is expected to be an Paws::EMR::InstanceFleet object:
37              
38             $result = $service_obj->Method(...);
39             $result->Att1->Id
40              
41             =head1 DESCRIPTION
42              
43             Describes an instance fleet, which is a group of EC2 instances that
44             host a particular node type (master, core, or task) in an Amazon EMR
45             cluster. Instance fleets can consist of a mix of instance types and
46             On-Demand and Spot instances, which are provisioned to meet a defined
47             target capacity.
48              
49             The instance fleet configuration is available only in Amazon EMR
50             versions 4.8.0 and later, excluding 5.0.x versions.
51              
52             =head1 ATTRIBUTES
53              
54              
55             =head2 Id => Str
56              
57             The unique identifier of the instance fleet.
58              
59              
60             =head2 InstanceFleetType => Str
61              
62             The node type that the instance fleet hosts. Valid values are MASTER,
63             CORE, or TASK.
64              
65              
66             =head2 InstanceTypeSpecifications => ArrayRef[L<Paws::EMR::InstanceTypeSpecification>]
67              
68             The specification for the instance types that comprise an instance
69             fleet. Up to five unique instance specifications may be defined for
70             each instance fleet.
71              
72              
73             =head2 LaunchSpecifications => L<Paws::EMR::InstanceFleetProvisioningSpecifications>
74              
75             Describes the launch specification for an instance fleet.
76              
77              
78             =head2 Name => Str
79              
80             A friendly name for the instance fleet.
81              
82              
83             =head2 ProvisionedOnDemandCapacity => Int
84              
85             The number of On-Demand units that have been provisioned for the
86             instance fleet to fulfill C<TargetOnDemandCapacity>. This provisioned
87             capacity might be less than or greater than C<TargetOnDemandCapacity>.
88              
89              
90             =head2 ProvisionedSpotCapacity => Int
91              
92             The number of Spot units that have been provisioned for this instance
93             fleet to fulfill C<TargetSpotCapacity>. This provisioned capacity might
94             be less than or greater than C<TargetSpotCapacity>.
95              
96              
97             =head2 Status => L<Paws::EMR::InstanceFleetStatus>
98              
99             The current status of the instance fleet.
100              
101              
102             =head2 TargetOnDemandCapacity => Int
103              
104             The target capacity of On-Demand units for the instance fleet, which
105             determines how many On-Demand instances to provision. When the instance
106             fleet launches, Amazon EMR tries to provision On-Demand instances as
107             specified by InstanceTypeConfig. Each instance configuration has a
108             specified C<WeightedCapacity>. When an On-Demand instance is
109             provisioned, the C<WeightedCapacity> units count toward the target
110             capacity. Amazon EMR provisions instances until the target capacity is
111             totally fulfilled, even if this results in an overage. For example, if
112             there are 2 units remaining to fulfill capacity, and Amazon EMR can
113             only provision an instance with a C<WeightedCapacity> of 5 units, the
114             instance is provisioned, and the target capacity is exceeded by 3
115             units. You can use InstanceFleet$ProvisionedOnDemandCapacity to
116             determine the Spot capacity units that have been provisioned for the
117             instance fleet.
118              
119             If not specified or set to 0, only Spot instances are provisioned for
120             the instance fleet using C<TargetSpotCapacity>. At least one of
121             C<TargetSpotCapacity> and C<TargetOnDemandCapacity> should be greater
122             than 0. For a master instance fleet, only one of C<TargetSpotCapacity>
123             and C<TargetOnDemandCapacity> can be specified, and its value must be
124             1.
125              
126              
127             =head2 TargetSpotCapacity => Int
128              
129             The target capacity of Spot units for the instance fleet, which
130             determines how many Spot instances to provision. When the instance
131             fleet launches, Amazon EMR tries to provision Spot instances as
132             specified by InstanceTypeConfig. Each instance configuration has a
133             specified C<WeightedCapacity>. When a Spot instance is provisioned, the
134             C<WeightedCapacity> units count toward the target capacity. Amazon EMR
135             provisions instances until the target capacity is totally fulfilled,
136             even if this results in an overage. For example, if there are 2 units
137             remaining to fulfill capacity, and Amazon EMR can only provision an
138             instance with a C<WeightedCapacity> of 5 units, the instance is
139             provisioned, and the target capacity is exceeded by 3 units. You can
140             use InstanceFleet$ProvisionedSpotCapacity to determine the Spot
141             capacity units that have been provisioned for the instance fleet.
142              
143             If not specified or set to 0, only On-Demand instances are provisioned
144             for the instance fleet. At least one of C<TargetSpotCapacity> and
145             C<TargetOnDemandCapacity> should be greater than 0. For a master
146             instance fleet, only one of C<TargetSpotCapacity> and
147             C<TargetOnDemandCapacity> can be specified, and its value must be 1.
148              
149              
150              
151             =head1 SEE ALSO
152              
153             This class forms part of L<Paws>, describing an object used in L<Paws::EMR>
154              
155             =head1 BUGS and CONTRIBUTIONS
156              
157             The source code is located here: https://github.com/pplu/aws-sdk-perl
158              
159             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
160              
161             =cut
162