The method and details for allocating a group. Groups are homogeneous (cattle) when the Size
field is set, or
nearly-homogeneous (pets) when the LogicalIDs
field is set.
Groups using LogicalIDs
will converge towards maintaining a number of Instances matching the number of LogicalIDs
,
where each Instance is uniquely assigned a logical ID. The ID will be present in the LogicalID
field of the Instance
Description and Spec. Logical IDs are useful for behavior such as managing
a pool of Attachments
for state attached to instances.
Fields:
Size
: An integer, the number of instances to maintain in the Group.LogicalIDs
: An array of strings, the logical identifeirs to maintain in the group.
A globally-unique string identifier for an Group.
Fields:
Instances
: An array of Instance DescriptionsConverged
:true
if the state of the Group matches the most recently Committed state,false
otherwise.
The declared specification of a Group.
Fields:
ID
: Group IDProperties
: A JSON object representing the Group. The schema is defined by the Group plugin in use.
An external entity associated with an Instance. The meaning of an Attachment is defined by the Instance plugin.
Fields:
ID
: A unique identifier for the AttachmentType
: An identifier for the kind of attachment.
The description of an existing Instance.
Fields:
ID
: An Instance IDLogicalID
: Logical IDTags
: Instance Tags
A globally-unique string identifier for an Instance.
The declared specification of an Instance.
Fields:
Properties
: A JSON object representing the Instance to create. The schema is defined by the Instance plugin in use.Tags
: Instance TagsInit
: a shell script to run when the instance boots.LogicalID
: Logical IDAttachments
: an array Attachments
A key (string) to value (string) mapping of attributes to include on an instance. Tags are useful for user-defined Instance grouping and metadata.
A possibly-reused logical identifier for an Instance.