Documentation ¶
Index ¶
- type Activity
- type AdjustmentType
- type Alarm
- type AutoScaling
- func (as *AutoScaling) AttachInstances(name string, instanceIds []string) (resp *SimpleResp, err error)
- func (as *AutoScaling) CompleteLifecycleAction(options *CompleteLifecycleActionParams) (resp *SimpleResp, err error)
- func (as *AutoScaling) CreateAutoScalingGroup(options *CreateAutoScalingGroupParams) (resp *SimpleResp, err error)
- func (as *AutoScaling) CreateLaunchConfiguration(lc *LaunchConfiguration) (resp *SimpleResp, err error)
- func (as *AutoScaling) CreateOrUpdateTags(tags []Tag) (resp *SimpleResp, err error)
- func (as *AutoScaling) DeleteAutoScalingGroup(asgName string, forceDelete bool) (resp *SimpleResp, err error)
- func (as *AutoScaling) DeleteLaunchConfiguration(name string) (resp *SimpleResp, err error)
- func (as *AutoScaling) DeleteLifecycleHook(asgName, lifecycleHookName string) (resp *SimpleResp, err error)
- func (as *AutoScaling) DeleteNotificationConfiguration(asgName string, topicARN string) (resp *SimpleResp, err error)
- func (as *AutoScaling) DeletePolicy(asgName string, policyName string) (resp *SimpleResp, err error)
- func (as *AutoScaling) DeleteScheduledAction(asgName string, scheduledActionName string) (resp *SimpleResp, err error)
- func (as *AutoScaling) DeleteTags(tags []Tag) (resp *SimpleResp, err error)
- func (as *AutoScaling) DescribeAccountLimits() (resp *DescribeAccountLimitsResp, err error)
- func (as *AutoScaling) DescribeAdjustmentTypes() (resp *DescribeAdjustmentTypesResp, err error)
- func (as *AutoScaling) DescribeAutoScalingGroups(names []string, maxRecords int, nextToken string) (resp *DescribeAutoScalingGroupsResp, err error)
- func (as *AutoScaling) DescribeAutoScalingInstances(ids []string, maxRecords int, nextToken string) (resp *DescribeAutoScalingInstancesResp, err error)
- func (as *AutoScaling) DescribeAutoScalingNotificationTypes() (resp *DescribeAutoScalingNotificationTypesResp, err error)
- func (as *AutoScaling) DescribeLaunchConfigurations(names []string, maxRecords int, nextToken string) (resp *DescribeLaunchConfigurationsResp, err error)
- func (as *AutoScaling) DescribeLifecycleHookTypes() (resp *DescribeLifecycleHookTypesResult, err error)
- func (as *AutoScaling) DescribeLifecycleHooks(asgName string, hookNames []string) (resp *DescribeLifecycleHooksResult, err error)
- func (as *AutoScaling) DescribeMetricCollectionTypes() (resp *DescribeMetricCollectionTypesResp, err error)
- func (as *AutoScaling) DescribeNotificationConfigurations(asgNames []string, maxRecords int, nextToken string) (resp *DescribeNotificationConfigurationsResp, err error)
- func (as *AutoScaling) DescribePolicies(asgName string, policyNames []string, maxRecords int, nextToken string) (resp *DescribePoliciesResp, err error)
- func (as *AutoScaling) DescribeScalingActivities(asgName string, activityIds []string, maxRecords int, nextToken string) (resp *DescribeScalingActivitiesResp, err error)
- func (as *AutoScaling) DescribeScalingProcessTypes() (resp *DescribeScalingProcessTypesResp, err error)
- func (as *AutoScaling) DescribeScheduledActions(options *DescribeScheduledActionsParams) (resp *DescribeScheduledActionsResult, err error)
- func (as *AutoScaling) DescribeTags(filter *Filter, maxRecords int, nextToken string) (resp *DescribeTagsResp, err error)
- func (as *AutoScaling) DescribeTerminationPolicyTypes() (resp *DescribeTerminationPolicyTypesResp, err error)
- func (as *AutoScaling) DetachInstances(asgName string, instanceIds []string, decrementCapacity bool) (resp *DetachInstancesResult, err error)
- func (as *AutoScaling) DisableMetricsCollection(asgName string, metrics []string) (resp *SimpleResp, err error)
- func (as *AutoScaling) EnableMetricsCollection(asgName string, metrics []string, granularity string) (resp *SimpleResp, err error)
- func (as *AutoScaling) EnterStandby(asgName string, instanceIds []string, decrementCapacity bool) (resp *EnterStandbyResult, err error)
- func (as *AutoScaling) ExecutePolicy(policyName string, asgName string, honorCooldown bool) (resp *SimpleResp, err error)
- func (as *AutoScaling) ExitStandby(asgName string, instanceIds []string) (resp *ExitStandbyResult, err error)
- func (as *AutoScaling) PutLifecycleHook(options *PutLifecycleHookParams) (resp *SimpleResp, err error)
- func (as *AutoScaling) PutNotificationConfiguration(asgName string, notificationTypes []string, topicARN string) (resp *SimpleResp, err error)
- func (as *AutoScaling) PutScalingPolicy(options *PutScalingPolicyParams) (resp *PutScalingPolicyResp, err error)
- func (as *AutoScaling) PutScheduledUpdateGroupAction(options *PutScheduledUpdateGroupActionParams) (resp *SimpleResp, err error)
- func (as *AutoScaling) RecordLifecycleActionHeartbeat(asgName, lifecycleActionToken, hookName string) (resp *SimpleResp, err error)
- func (as *AutoScaling) ResumeProcesses(asgName string, processes []string) (resp *SimpleResp, err error)
- func (as *AutoScaling) SetDesiredCapacity(asgName string, desiredCapacity int, honorCooldown bool) (resp *SimpleResp, err error)
- func (as *AutoScaling) SetInstanceHealth(id string, healthStatus string, respectGracePeriod bool) (resp *SimpleResp, err error)
- func (as *AutoScaling) SuspendProcesses(asgName string, processes []string) (resp *SimpleResp, err error)
- func (as *AutoScaling) TerminateInstanceInAutoScalingGroup(id string, decrCap bool) (resp *TerminateInstanceInAutoScalingGroupResp, err error)
- func (as *AutoScaling) UpdateAutoScalingGroup(asg *AutoScalingGroup) (resp *SimpleResp, err error)
- type AutoScalingGroup
- type BlockDeviceMapping
- type CompleteLifecycleActionParams
- type CreateAutoScalingGroupParams
- type DescribeAccountLimitsResp
- type DescribeAdjustmentTypesResp
- type DescribeAutoScalingGroupsResp
- type DescribeAutoScalingInstancesResp
- type DescribeAutoScalingNotificationTypesResp
- type DescribeLaunchConfigurationsResp
- type DescribeLifecycleHookTypesResult
- type DescribeLifecycleHooksResult
- type DescribeMetricCollectionTypesResp
- type DescribeNotificationConfigurationsResp
- type DescribePoliciesResp
- type DescribeScalingActivitiesResp
- type DescribeScalingProcessTypesResp
- type DescribeScheduledActionsParams
- type DescribeScheduledActionsResult
- type DescribeTagsResp
- type DescribeTerminationPolicyTypesResp
- type DetachInstancesResult
- type EBS
- type EnabledMetric
- type EnterStandbyResult
- type Error
- type ExitStandbyResult
- type Filter
- type Instance
- type InstanceMonitoring
- type LaunchConfiguration
- type LifecycleHook
- type MetricCollection
- type MetricGranularity
- type NotificationConfiguration
- type ProcessType
- type PutLifecycleHookParams
- type PutScalingPolicyParams
- type PutScalingPolicyResp
- type PutScheduledUpdateGroupActionParams
- type ScalingPolicy
- type ScheduledUpdateGroupAction
- type SimpleResp
- type SuspendedProcess
- type Tag
- type TerminateInstanceInAutoScalingGroupResp
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Activity ¶
type Activity struct { ActivityId string `xml:"ActivityId"` AutoScalingGroupName string `xml:"AutoScalingGroupName"` Cause string `xml:"Cause"` Description string `xml:"Description"` Details string `xml:"Details"` EndTime time.Time `xml:"EndTime"` Progress int `xml:"Progress"` StartTime time.Time `xml:"StartTime"` StatusCode string `xml:"StatusCode"` StatusMessage string `xml:"StatusMessage"` }
Activity encapsulates the Activity data type
See http://goo.gl/fRaVi1 for more details
type AdjustmentType ¶
type AdjustmentType struct {
AdjustmentType string //Valid values are ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity.
}
AdjustmentType specifies whether the PutScalingPolicy ScalingAdjustment parameter is an absolute number or a percentage of the current capacity.
See http://goo.gl/tCFqeL for more details
type AutoScaling ¶
AutoScaling contains the details of the AWS region to perform operations against.
func New ¶
func New(auth aws.Auth, region aws.Region) *AutoScaling
New creates a new AutoScaling Client.
func (*AutoScaling) AttachInstances ¶
func (as *AutoScaling) AttachInstances(name string, instanceIds []string) (resp *SimpleResp, err error)
AttachInstances Attach running instances to an autoscaling group
See http://goo.gl/zDZbuQ for more details.
func (*AutoScaling) CompleteLifecycleAction ¶
func (as *AutoScaling) CompleteLifecycleAction(options *CompleteLifecycleActionParams) ( resp *SimpleResp, err error)
CompleteLifecycleAction completes the lifecycle action for the associated token initiated under the given lifecycle hook with the specified result.
Part of the basic sequence for adding a lifecycle hook to an Auto Scaling group: 1) Create a notification target (SQS queue || SNS Topic) 2) Create an IAM role to allow the ASG topublish lifecycle notifications to the designated SQS queue or SNS topic 3) Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate 4) If necessary, record the lifecycle action heartbeat to keep the instance in a pending state 5) ***Complete the lifecycle action***
See http://goo.gl/k4fl0p for more details
func (*AutoScaling) CreateAutoScalingGroup ¶
func (as *AutoScaling) CreateAutoScalingGroup(options *CreateAutoScalingGroupParams) ( resp *SimpleResp, err error)
CreateAutoScalingGroup creates an Auto Scaling Group on AWS
Required params: AutoScalingGroupName, MinSize, MaxSize
See http://goo.gl/3S13Bv for more details.
func (*AutoScaling) CreateLaunchConfiguration ¶
func (as *AutoScaling) CreateLaunchConfiguration(lc *LaunchConfiguration) ( resp *SimpleResp, err error)
CreateLaunchConfiguration creates a launch configuration
Required params: AutoScalingGroupName, MinSize, MaxSize
See http://goo.gl/8e0BSF for more details.
func (*AutoScaling) CreateOrUpdateTags ¶
func (as *AutoScaling) CreateOrUpdateTags(tags []Tag) (resp *SimpleResp, err error)
CreateOrUpdateTags creates or updates Auto Scaling Group Tags
See http://goo.gl/e1UIXb for more details.
func (*AutoScaling) DeleteAutoScalingGroup ¶
func (as *AutoScaling) DeleteAutoScalingGroup(asgName string, forceDelete bool) ( resp *SimpleResp, err error)
DeleteAutoScalingGroup deletes an Auto Scaling Group
See http://goo.gl/us7VSffor for more details.
func (*AutoScaling) DeleteLaunchConfiguration ¶
func (as *AutoScaling) DeleteLaunchConfiguration(name string) (resp *SimpleResp, err error)
DeleteLaunchConfiguration deletes a Launch Configuration
See http://goo.gl/xksfyR for more details.
func (*AutoScaling) DeleteLifecycleHook ¶
func (as *AutoScaling) DeleteLifecycleHook(asgName, lifecycleHookName string) (resp *SimpleResp, err error)
DeleteLifecycleHook eletes the specified lifecycle hook. If there are any outstanding lifecycle actions, they are completed first
See http://goo.gl/MwX1vG for more details.
func (*AutoScaling) DeleteNotificationConfiguration ¶
func (as *AutoScaling) DeleteNotificationConfiguration(asgName string, topicARN string) ( resp *SimpleResp, err error)
DeleteNotificationConfiguration deletes notifications created by PutNotificationConfiguration.
See http://goo.gl/jTqoYz for more details
func (*AutoScaling) DeletePolicy ¶
func (as *AutoScaling) DeletePolicy(asgName string, policyName string) (resp *SimpleResp, err error)
DeletePolicy deletes a policy created by PutScalingPolicy.
policyName might be the policy name or ARN
See http://goo.gl/aOQPH2 for more details
func (*AutoScaling) DeleteScheduledAction ¶
func (as *AutoScaling) DeleteScheduledAction(asgName string, scheduledActionName string) (resp *SimpleResp, err error)
DeleteScheduledAction deletes a scheduled action previously created using the PutScheduledUpdateGroupAction.
See http://goo.gl/Zss9CH for more details
func (*AutoScaling) DeleteTags ¶
func (as *AutoScaling) DeleteTags(tags []Tag) (resp *SimpleResp, err error)
DeleteTags deletes autoscaling group tags
See http://goo.gl/o8HzAk for more details.
func (*AutoScaling) DescribeAccountLimits ¶
func (as *AutoScaling) DescribeAccountLimits() (resp *DescribeAccountLimitsResp, err error)
DescribeAccountLimits - Returns the limits for the Auto Scaling resources currently allowed for your AWS account.
See http://goo.gl/tKsMN0 for more details.
func (*AutoScaling) DescribeAdjustmentTypes ¶
func (as *AutoScaling) DescribeAdjustmentTypes() (resp *DescribeAdjustmentTypesResp, err error)
DescribeAdjustmentTypes returns policy adjustment types for use in the PutScalingPolicy action.
See http://goo.gl/hGx3Pc for more details.
func (*AutoScaling) DescribeAutoScalingGroups ¶
func (as *AutoScaling) DescribeAutoScalingGroups(names []string, maxRecords int, nextToken string) ( resp *DescribeAutoScalingGroupsResp, err error)
DescribeAutoScalingGroups returns a full description of each Auto Scaling group in the given list If no autoscaling groups are provided, returns the details of all autoscaling groups Supports pagination by using the returned "NextToken" parameter for subsequent calls
See http://goo.gl/nW74Ut for more details.
func (*AutoScaling) DescribeAutoScalingInstances ¶
func (as *AutoScaling) DescribeAutoScalingInstances(ids []string, maxRecords int, nextToken string) ( resp *DescribeAutoScalingInstancesResp, err error)
DescribeAutoScalingInstances returns a description of each Auto Scaling instance in the InstanceIds list. If a list is not provided, the service returns the full details of all instances up to a maximum of 50 By default, the service returns a list of 20 items. Supports pagination by using the returned "NextToken" parameter for subsequent calls
See http://goo.gl/ckzORt for more details.
func (*AutoScaling) DescribeAutoScalingNotificationTypes ¶
func (as *AutoScaling) DescribeAutoScalingNotificationTypes() (resp *DescribeAutoScalingNotificationTypesResp, err error)
DescribeAutoScalingNotificationTypes returns a list of all notification types that are supported by Auto Scaling
See http://goo.gl/pmLIoE for more details.
func (*AutoScaling) DescribeLaunchConfigurations ¶
func (as *AutoScaling) DescribeLaunchConfigurations(names []string, maxRecords int, nextToken string) ( resp *DescribeLaunchConfigurationsResp, err error)
DescribeLaunchConfigurations returns details about the launch configurations supplied in the list. If the list is nil, information is returned about all launch configurations in the region.
See http://goo.gl/y31YYE for more details.
func (*AutoScaling) DescribeLifecycleHookTypes ¶
func (as *AutoScaling) DescribeLifecycleHookTypes() ( resp *DescribeLifecycleHookTypesResult, err error)
DescribeLifecycleHookTypes describes the available types of lifecycle hooks
See http://goo.gl/E9IBtY for more information
func (*AutoScaling) DescribeLifecycleHooks ¶
func (as *AutoScaling) DescribeLifecycleHooks(asgName string, hookNames []string) ( resp *DescribeLifecycleHooksResult, err error)
DescribeLifecycleHooks describes the lifecycle hooks that currently belong to the specified Auto Scaling group
See http://goo.gl/wQkWiz for more information
func (*AutoScaling) DescribeMetricCollectionTypes ¶
func (as *AutoScaling) DescribeMetricCollectionTypes() (resp *DescribeMetricCollectionTypesResp, err error)
DescribeMetricCollectionTypes returns a list of metrics and a corresponding list of granularities for each metric
See http://goo.gl/UyYc3i for more details.
func (*AutoScaling) DescribeNotificationConfigurations ¶
func (as *AutoScaling) DescribeNotificationConfigurations(asgNames []string, maxRecords int, nextToken string) ( resp *DescribeNotificationConfigurationsResp, err error)
DescribeNotificationConfigurations returns a list of notification actions associated with Auto Scaling groups for specified events. Supports pagination by using the returned "NextToken" parameter for subsequent calls
http://goo.gl/qiAH31 for more details.
func (*AutoScaling) DescribePolicies ¶
func (as *AutoScaling) DescribePolicies(asgName string, policyNames []string, maxRecords int, nextToken string) ( resp *DescribePoliciesResp, err error)
DescribePolicies returns descriptions of what each policy does. Supports pagination by using the returned "NextToken" parameter for subsequent calls
http://goo.gl/bN7A9Tfor more details.
func (*AutoScaling) DescribeScalingActivities ¶
func (as *AutoScaling) DescribeScalingActivities(asgName string, activityIds []string, maxRecords int, nextToken string) ( resp *DescribeScalingActivitiesResp, err error)
DescribeScalingActivities returns the scaling activities for the specified Auto Scaling group. Supports pagination by using the returned "NextToken" parameter for subsequent calls
http://goo.gl/noOXIC more details.
func (*AutoScaling) DescribeScalingProcessTypes ¶
func (as *AutoScaling) DescribeScalingProcessTypes() (resp *DescribeScalingProcessTypesResp, err error)
DescribeScalingProcessTypes returns scaling process types for use in the ResumeProcesses and SuspendProcesses actions.
See http://goo.gl/rkp2tw for more details.
func (*AutoScaling) DescribeScheduledActions ¶
func (as *AutoScaling) DescribeScheduledActions(options *DescribeScheduledActionsParams) ( resp *DescribeScheduledActionsResult, err error)
DescribeScheduledActions returns a list of the current scheduled actions. If the AutoScalingGroup name is provided it will list all the scheduled actions for that group.
See http://goo.gl/zqrJLx for more details.
func (*AutoScaling) DescribeTags ¶
func (as *AutoScaling) DescribeTags(filter *Filter, maxRecords int, nextToken string) ( resp *DescribeTagsResp, err error)
DescribeTags lists the Auto Scaling group tags. Supports pagination by using the returned "NextToken" parameter for subsequent calls
See http://goo.gl/ZTEU3G for more details.
func (*AutoScaling) DescribeTerminationPolicyTypes ¶
func (as *AutoScaling) DescribeTerminationPolicyTypes() (resp *DescribeTerminationPolicyTypesResp, err error)
DescribeTerminationPolicyTypes returns a list of all termination policies supported by Auto Scaling
See http://goo.gl/ZTEU3G for more details.
func (*AutoScaling) DetachInstances ¶
func (as *AutoScaling) DetachInstances(asgName string, instanceIds []string, decrementCapacity bool) ( resp *DetachInstancesResult, err error)
DetachInstances removes an instance from an Auto Scaling group
See http://goo.gl/cNwrqF for more details
func (*AutoScaling) DisableMetricsCollection ¶
func (as *AutoScaling) DisableMetricsCollection(asgName string, metrics []string) ( resp *SimpleResp, err error)
DisableMetricsCollection disables monitoring of group metrics for the Auto Scaling group specified in asgName. You can specify the list of affected metrics with the metrics parameter. If no metrics are specified, all metrics are disabled
See http://goo.gl/kAvzQw for more details.
func (*AutoScaling) EnableMetricsCollection ¶
func (as *AutoScaling) EnableMetricsCollection(asgName string, metrics []string, granularity string) ( resp *SimpleResp, err error)
EnableMetricsCollection enables monitoring of group metrics for the Auto Scaling group specified in asNmae. You can specify the list of affected metrics with the metrics parameter. Auto Scaling metrics collection can be turned on only if the InstanceMonitoring flag is set to true. Currently, the only legal granularity is "1Minute".
See http://goo.gl/UcVDWn for more details.
func (*AutoScaling) EnterStandby ¶
func (as *AutoScaling) EnterStandby(asgName string, instanceIds []string, decrementCapacity bool) ( resp *EnterStandbyResult, err error)
EnterStandby moves instances in an Auto Scaling group into a Standby mode.
See http://goo.gl/BJ3lXs for more information
func (*AutoScaling) ExecutePolicy ¶
func (as *AutoScaling) ExecutePolicy(policyName string, asgName string, honorCooldown bool) ( resp *SimpleResp, err error)
ExecutePolicy executes the specified policy.
See http://goo.gl/BxHpFc for more details.
func (*AutoScaling) ExitStandby ¶
func (as *AutoScaling) ExitStandby(asgName string, instanceIds []string) ( resp *ExitStandbyResult, err error)
ExitStandby moves an instance out of Standby mode.
See http://goo.gl/9zQV4G for more information
func (*AutoScaling) PutLifecycleHook ¶
func (as *AutoScaling) PutLifecycleHook(options *PutLifecycleHookParams) ( resp *SimpleResp, err error)
PutLifecycleHook Creates or updates a lifecycle hook for an Auto Scaling Group.
Part of the basic sequence for adding a lifecycle hook to an Auto Scaling group: 1) Create a notification target (SQS queue || SNS Topic) 2) Create an IAM role to allow the ASG topublish lifecycle notifications to the designated SQS queue or SNS topic 3) *** Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate*** 4) If necessary, record the lifecycle action heartbeat to keep the instance in a pending state 5) Complete the lifecycle action
See http://goo.gl/9XrROq for more details.
func (*AutoScaling) PutNotificationConfiguration ¶
func (as *AutoScaling) PutNotificationConfiguration(asgName string, notificationTypes []string, topicARN string) ( resp *SimpleResp, err error)
PutNotificationConfiguration configures an Auto Scaling group to send notifications when specified events take place.
See http://goo.gl/9XrROq for more details.
func (*AutoScaling) PutScalingPolicy ¶
func (as *AutoScaling) PutScalingPolicy(options *PutScalingPolicyParams) ( resp *PutScalingPolicyResp, err error)
PutScalingPolicy creates or updates a policy for an Auto Scaling group
See http://goo.gl/o0E8hl for more details.
func (*AutoScaling) PutScheduledUpdateGroupAction ¶
func (as *AutoScaling) PutScheduledUpdateGroupAction(options *PutScheduledUpdateGroupActionParams) ( resp *SimpleResp, err error)
PutScheduledUpdateGroupAction creates or updates a scheduled scaling action for an AutoScaling group. Scheduled actions can be made up to thirty days in advance. When updating a scheduled scaling action, if you leave a parameter unspecified, the corresponding value remains unchanged in the affected AutoScaling group.
Auto Scaling supports the date and time expressed in "YYYY-MM-DDThh:mm:ssZ" format in UTC/GMT only.
See http://goo.gl/sLPi0d for more details.
func (*AutoScaling) RecordLifecycleActionHeartbeat ¶
func (as *AutoScaling) RecordLifecycleActionHeartbeat(asgName, lifecycleActionToken, hookName string) ( resp *SimpleResp, err error)
RecordLifecycleActionHeartbeat ecords a heartbeat for the lifecycle action associated with a specific token. This extends the timeout by the length of time defined by the HeartbeatTimeout parameter of the PutLifecycleHook operation.
Part of the basic sequence for adding a lifecycle hook to an Auto Scaling group: 1) Create a notification target (SQS queue || SNS Topic) 2) Create an IAM role to allow the ASG topublish lifecycle notifications to the designated SQS queue or SNS topic 3) Create the lifecycle hook. You can create a hook that acts when instances launch or when instances terminate 4) ***If necessary, record the lifecycle action heartbeat to keep the instance in a pending state*** 5) Complete the lifecycle action
See http://goo.gl/jc70xp for more details.
func (*AutoScaling) ResumeProcesses ¶
func (as *AutoScaling) ResumeProcesses(asgName string, processes []string) ( resp *SimpleResp, err error)
ResumeProcesses resumes the scaling processes for the scaling group. If no processes are provided, all processes are resumed.
See http://goo.gl/XWIIg1 for more details.
func (*AutoScaling) SetDesiredCapacity ¶
func (as *AutoScaling) SetDesiredCapacity(asgName string, desiredCapacity int, honorCooldown bool) ( resp *SimpleResp, err error)
SetDesiredCapacity changes the DesiredCapacity of an AutoScaling group.
See http://goo.gl/3WGZbI for more details.
func (*AutoScaling) SetInstanceHealth ¶
func (as *AutoScaling) SetInstanceHealth(id string, healthStatus string, respectGracePeriod bool) ( resp *SimpleResp, err error)
SetInstanceHealth sets the health status of a specified instance that belongs to any of your Auto Scaling groups.
See http://goo.gl/j4ZRxh for more details.
func (*AutoScaling) SuspendProcesses ¶
func (as *AutoScaling) SuspendProcesses(asgName string, processes []string) ( resp *SimpleResp, err error)
SuspendProcesses suspends the processes for the autoscaling group. If no processes are provided, all processes are suspended.
If you suspend either of the two primary processes (Launch or Terminate), this can prevent other process types from functioning properly.
See http://goo.gl/DUJpQy for more details.
func (*AutoScaling) TerminateInstanceInAutoScalingGroup ¶
func (as *AutoScaling) TerminateInstanceInAutoScalingGroup(id string, decrCap bool) ( resp *TerminateInstanceInAutoScalingGroupResp, err error)
TerminateInstanceInAutoScalingGroup terminates the specified instance. Optionally, the desired group size can be adjusted by setting decrCap to true
See http://goo.gl/ki5hMh for more details.
func (*AutoScaling) UpdateAutoScalingGroup ¶
func (as *AutoScaling) UpdateAutoScalingGroup(asg *AutoScalingGroup) (resp *SimpleResp, err error)
UpdateAutoScalingGroup updates the scaling group.
To update an auto scaling group with a launch configuration that has the InstanceMonitoring flag set to False, you must first ensure that collection of group metrics is disabled. Otherwise calls to UpdateAutoScalingGroup will fail.
See http://goo.gl/rqrmxy for more details.
type AutoScalingGroup ¶
type AutoScalingGroup struct { AutoScalingGroupARN string `xml:"AutoScalingGroupARN"` AutoScalingGroupName string `xml:"AutoScalingGroupName"` AvailabilityZones []string `xml:"AvailabilityZones>member"` CreatedTime time.Time `xml:"CreatedTime"` DefaultCooldown int `xml:"DefaultCooldown"` DesiredCapacity int `xml:"DesiredCapacity"` EnabledMetrics []EnabledMetric `xml:"EnabledMetric>member"` HealthCheckGracePeriod int `xml:"HealthCheckGracePeriod"` HealthCheckType string `xml:"HealthCheckType"` Instances []Instance `xml:"Instances>member"` LaunchConfigurationName string `xml:"LaunchConfigurationName"` LoadBalancerNames []string `xml:"LoadBalancerNames>member"` MaxSize int `xml:"MaxSize"` MinSize int `xml:"MinSize"` PlacementGroup string `xml:"PlacementGroup"` Status string `xml:"Status"` SuspendedProcesses []SuspendedProcess `xml:"SuspendedProcesses>member"` Tags []Tag `xml:"Tags>member"` TerminationPolicies []string `xml:"TerminationPolicies>member"` VPCZoneIdentifier string `xml:"VPCZoneIdentifier"` }
AutoScalingGroup encapsulates an Auto Scaling Group object
See http://goo.gl/fJdYhg for more details.
type BlockDeviceMapping ¶
type BlockDeviceMapping struct { DeviceName string `xml:"DeviceName"` Ebs EBS `xml:"Ebs"` NoDevice bool `xml:"NoDevice"` VirtualName string `xml:"VirtualName"` }
BlockDeviceMapping represents the association of a block device with ebs volume.
See http://goo.gl/wEGwkU for more details.
type CreateAutoScalingGroupParams ¶
type CreateAutoScalingGroupParams struct { AutoScalingGroupName string AvailabilityZones []string DefaultCooldown int DesiredCapacity int HealthCheckGracePeriod int HealthCheckType string InstanceId string LaunchConfigurationName string LoadBalancerNames []string MaxSize int MinSize int PlacementGroup string Tags []Tag TerminationPolicies []string VPCZoneIdentifier string }
CreateAutoScalingGroupParams type encapsulates options for the respective request.
See http://goo.gl/3S13Bv for more details.
type DescribeAccountLimitsResp ¶
type DescribeAccountLimitsResp struct { MaxNumberOfAutoScalingGroups int `xml:"DescribeAccountLimitsResult>MaxNumberOfAutoScalingGroups"` MaxNumberOfLaunchConfigurations int `xml:"DescribeAccountLimitsResult>MaxNumberOfLaunchConfigurations"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeAccountLimits response wrapper
See http://goo.gl/tKsMN0 for more details.
type DescribeAdjustmentTypesResp ¶
type DescribeAdjustmentTypesResp struct { AdjustmentTypes []AdjustmentType `xml:"DescribeAdjustmentTypesResult>AdjustmentTypes>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeAdjustmentTypes response wrapper
See http://goo.gl/hGx3Pc for more details.
type DescribeAutoScalingGroupsResp ¶
type DescribeAutoScalingGroupsResp struct { AutoScalingGroups []AutoScalingGroup `xml:"DescribeAutoScalingGroupsResult>AutoScalingGroups>member"` NextToken string `xml:"DescribeAutoScalingGroupsResult>NextToken"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeAutoScalingGroups response wrapper
See http://goo.gl/nW74Ut for more details.
type DescribeAutoScalingInstancesResp ¶
type DescribeAutoScalingInstancesResp struct { AutoScalingInstances []Instance `xml:"DescribeAutoScalingInstancesResult>AutoScalingInstances>member"` NextToken string `xml:"DescribeAutoScalingInstancesResult>NextToken"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeAutoScalingInstances response wrapper
See http://goo.gl/ckzORt for more details.
type DescribeAutoScalingNotificationTypesResp ¶
type DescribeAutoScalingNotificationTypesResp struct { AutoScalingNotificationTypes []string `xml:"DescribeAutoScalingNotificationTypesResult>AutoScalingNotificationTypes>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeAutoScalingNotificationTypes response wrapper
See http://goo.gl/pmLIoE for more details.
type DescribeLaunchConfigurationsResp ¶
type DescribeLaunchConfigurationsResp struct { LaunchConfigurations []LaunchConfiguration `xml:"DescribeLaunchConfigurationsResult>LaunchConfigurations>member"` NextToken string `xml:"DescribeLaunchConfigurationsResult>NextToken"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeLaunchConfigurationResp defines the basic response structure for launch configuration requests
See http://goo.gl/y31YYE for more details.
type DescribeLifecycleHookTypesResult ¶
type DescribeLifecycleHookTypesResult struct { LifecycleHookTypes []string `xml:"DescribeLifecycleHookTypesResult>LifecycleHookTypes>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeLifecycleHookTypesResult wraps a DescribeLifecycleHookTypes response
See http://goo.gl/qiAH31 for more details.
type DescribeLifecycleHooksResult ¶
type DescribeLifecycleHooksResult struct { LifecycleHooks []string `xml:"DescribeLifecycleHooksResult>LifecycleHooks>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeLifecycleHooks wraps a DescribeLifecycleHooks response
See http://goo.gl/wQkWiz for more details.
type DescribeMetricCollectionTypesResp ¶
type DescribeMetricCollectionTypesResp struct { Granularities []MetricGranularity `xml:"DescribeMetricCollectionTypesResult>Granularities>member"` Metrics []MetricCollection `xml:"DescribeMetricCollectionTypesResult>Metrics>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeMetricCollectionTypesResp response wrapper
See http://goo.gl/UyYc3i for more details.
type DescribeNotificationConfigurationsResp ¶
type DescribeNotificationConfigurationsResp struct { NotificationConfigurations []NotificationConfiguration `xml:"DescribeNotificationConfigurationsResult>NotificationConfigurations>member"` NextToken string `xml:"DescribeNotificationConfigurationsResult>NextToken"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeNotificationConfigurations response wrapper
See http://goo.gl/qiAH31 for more details.
type DescribePoliciesResp ¶
type DescribePoliciesResp struct { ScalingPolicies []ScalingPolicy `xml:"DescribePoliciesResult>ScalingPolicies>member"` NextToken string `xml:"DescribePoliciesResult>NextToken"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribePolicies response wrapper
http://goo.gl/bN7A9T for more details.
type DescribeScalingActivitiesResp ¶
type DescribeScalingActivitiesResp struct { Activities []Activity `xml:"DescribeScalingActivitiesResult>Activities>member"` NextToken string `xml:"DescribeScalingActivitiesResult>NextToken"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeScalingActivities response wrapper
http://goo.gl/noOXIC for more details.
type DescribeScalingProcessTypesResp ¶
type DescribeScalingProcessTypesResp struct { Processes []ProcessType `xml:"DescribeScalingProcessTypesResult>Processes>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeScalingProcessTypes response wrapper
See http://goo.gl/rkp2tw for more details.
type DescribeScheduledActionsParams ¶
type DescribeScheduledActionsParams struct { AutoScalingGroupName string EndTime time.Time MaxRecords int ScheduledActionNames []string StartTime time.Time NextToken string }
ScheduledActionsRequestParams contains the items that can be specified when making a ScheduledActions request
type DescribeScheduledActionsResult ¶
type DescribeScheduledActionsResult struct { ScheduledUpdateGroupActions []ScheduledUpdateGroupAction `xml:"DescribeScheduledActionsResult>ScheduledUpdateGroupActions>member"` NextToken string `xml:"DescribeScheduledActionsResult>NextToken"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeScheduledActionsResult contains the response from a DescribeScheduledActions.
See http://goo.gl/zqrJLx for more details.
type DescribeTagsResp ¶
type DescribeTagsResp struct { Tags []Tag `xml:"DescribeTagsResult>Tags>member"` NextToken string `xml:"DescribeTagsResult>NextToken"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeTags response wrapper
See http://goo.gl/ZTEU3G for more details.
type DescribeTerminationPolicyTypesResp ¶
type DescribeTerminationPolicyTypesResp struct { TerminationPolicyTypes []string `xml:"DescribeTerminationPolicyTypesResult>TerminationPolicyTypes>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DescribeTerminationPolicyTypes response wrapper
See http://goo.gl/ZTEU3G for more details.
type DetachInstancesResult ¶
type DetachInstancesResult struct { Activities []Activity `xml:"DetachInstancesResult>Activities>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
DetachInstancesResult wraps a DetachInstances response
type EBS ¶
type EBS struct { DeleteOnTermination bool `xml:"DeleteOnTermination"` Iops int `xml:"Iops"` SnapshotId string `xml:"SnapshotId"` VolumeSize int `xml:"VolumeSize"` VolumeType string `xml:"VolumeType"` }
EBS represents the AWS EBS volume data type
See http://goo.gl/nDUL2h for more details
type EnabledMetric ¶
type EnabledMetric struct { Granularity string `xml:"Granularity"` // The granularity of the enabled metric. Metric string `xml:"Metric"` // The name of the enabled metric. }
EnabledMetric encapsulates a metric associated with an Auto Scaling Group
See http://goo.gl/hXiH17 for more details
type EnterStandbyResult ¶
type EnterStandbyResult struct { Activities []Activity `xml:"EnterStandbyResult>Activities>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
EnterStandbyResult wraps an EnterStandby response
type Error ¶
type Error struct { // HTTP status code (200, 403, ...) StatusCode int // AutoScaling error code ("UnsupportedOperation", ...) Code string // The error type Type string // The human-oriented error message Message string RequestId string `xml:"RequestID"` }
Error encapsulates an error returned by the AWS Auto Scaling API.
See http://goo.gl/VZGuC for more details.
type ExitStandbyResult ¶
type ExitStandbyResult struct { Activities []Activity `xml:"ExitStandbyResult>Activities>member"` RequestId string `xml:"ResponseMetadata>RequestId"` }
ExitStandbyResult wraps an ExitStandby response
type Filter ¶
type Filter struct {
// contains filtered or unexported fields
}
Filter builds filtering parameters to be used in an autoscaling query which supports filtering. For example:
filter := NewFilter() filter.Add("architecture", "i386") filter.Add("launch-index", "0") resp, err := as.DescribeTags(filter,nil,nil)
type Instance ¶
type Instance struct { // General instance information AutoScalingGroupName string `xml:"AutoScalingGroupName"` AvailabilityZone string `xml:"AvailabilityZone"` HealthStatus string `xml:"HealthStatus"` InstanceId string `xml:"InstanceId"` LaunchConfigurationName string `xml:"LaunchConfigurationName"` LifecycleState string `xml:"LifecycleState"` }
Instance encapsulates an instance type as returned by the Auto Scaling API
See http://goo.gl/NwBxGh and http://goo.gl/OuoqhS for more details.
type InstanceMonitoring ¶
type InstanceMonitoring struct {
Enabled bool `xml:"Enabled"`
}
InstanceMonitoring data type
See http://goo.gl/TfaPwz for more details
type LaunchConfiguration ¶
type LaunchConfiguration struct { AssociatePublicIpAddress bool `xml:"AssociatePublicIpAddress"` BlockDeviceMappings []BlockDeviceMapping `xml:"BlockDeviceMappings>member"` CreatedTime time.Time `xml:"CreatedTime"` EbsOptimized bool `xml:"EbsOptimized"` IamInstanceProfile string `xml:"IamInstanceProfile"` ImageId string `xml:"ImageId"` InstanceId string `xml:"InstanceId"` InstanceMonitoring InstanceMonitoring `xml:"InstanceMonitoring"` InstanceType string `xml:"InstanceType"` KernelId string `xml:"KernelId"` KeyName string `xml:"KeyName"` LaunchConfigurationARN string `xml:"LaunchConfigurationARN"` LaunchConfigurationName string `xml:"LaunchConfigurationName"` RamdiskId string `xml:"RamdiskId"` SecurityGroups []string `xml:"SecurityGroups>member"` SpotPrice string `xml:"SpotPrice"` UserData string `xml:"UserData"` }
LaunchConfiguration encapsulates the LaunchConfiguration Data Type
type LifecycleHook ¶
type LifecycleHook struct { AutoScalingGroupName string `xml:"AutoScalingGroupName"` DefaultResult string `xml:"DefaultResult"` GlobalTimeout int `xml:"GlobalTimeout"` HeartbeatTimeout int `xml:"HeartbeatTimeout"` LifecycleHookName string `xml:"LifecycleHookName"` LifecycleTransition string `xml:"LifecycleTransition"` NotificationMetadata string `xml:"NotificationMetadata"` NotificationTargetARN string `xml:"NotificationTargetARN"` RoleARN string `xml:"RoleARN"` }
LifecycleHook represents a lifecyclehook object
See http://goo.gl/j62Iqu for more information
type MetricCollection ¶
type MetricCollection struct {
Metric string `xml:"Metric"`
}
MetricCollection encapsulates the MetricCollectionType
See http://goo.gl/YrEG6h for more details
type MetricGranularity ¶
type MetricGranularity struct {
Granularity string `xml:"Granularity"`
}
MetricGranularity encapsulates the MetricGranularityType
See http://goo.gl/WJ82AA for more details
type NotificationConfiguration ¶
type NotificationConfiguration struct { AutoScalingGroupName string `xml:"AutoScalingGroupName"` NotificationType string `xml:"NotificationType"` TopicARN string `xml:"TopicARN"` }
NotificationConfiguration encapsulates the NotificationConfigurationType
See http://goo.gl/M8xYOQ for more details
type ProcessType ¶
type ProcessType struct {
ProcessName string `xml:"ProcessName"`
}
ProcessType encapsulates the Auto Scaling process data type
See http://goo.gl/9BvNik for more details.
type PutLifecycleHookParams ¶
type PutLifecycleHookParams struct { AutoScalingGroupName string DefaultResult string HeartbeatTimeout int LifecycleHookName string LifecycleTransition string NotificationMetadata string NotificationTargetARN string RoleARN string }
PutLifecycleHookParams wraps a PutLifecycleHook request
See http://goo.gl/zsNqp5 for more details
type PutScalingPolicyParams ¶
type PutScalingPolicyParams struct { AutoScalingGroupName string PolicyName string ScalingAdjustment int AdjustmentType string Cooldown int MinAdjustmentStep int }
PutScalingPolicyParams wraps a PutScalingPolicyParams request
See http://goo.gl/o0E8hl for more details.
type PutScalingPolicyResp ¶
type PutScalingPolicyResp struct { PolicyARN string `xml:"PutScalingPolicyResult>PolicyARN"` RequestId string `xml:"ResponseMetadata>RequestId"` }
PutScalingPolicy response wrapper
See http://goo.gl/o0E8hl for more details.
type PutScheduledUpdateGroupActionParams ¶
type PutScheduledUpdateGroupActionParams struct { AutoScalingGroupName string DesiredCapacity int EndTime time.Time MaxSize int MinSize int Recurrence string ScheduledActionName string StartTime time.Time }
PutScheduledUpdateGroupActionParams contains the details of the ScheduledAction to be added.
See http://goo.gl/sLPi0d for more details
type ScalingPolicy ¶
type ScalingPolicy struct { AdjustmentType string `xml:"AdjustmentType"` // ChangeInCapacity, ExactCapacity, and PercentChangeInCapacity Alarms []Alarm `xml:"Alarms>member"` // A list of CloudWatch Alarms related to the policy AutoScalingGroupName string `xml:"AutoScalingGroupName"` Cooldown int `xml:"Cooldown"` MinAdjustmentStep int `xml:"MinAdjustmentStep"` // Changes the DesiredCapacity of ASG by at least the specified number of instances. PolicyARN string `xml:"PolicyARN"` PolicyName string `xml:"PolicyName"` ScalingAdjustment int `xml:"ScalingAdjustment"` }
ScalingPolicy encapsulates the ScalingPolicyType
See http://goo.gl/BYAT18 for more details
type ScheduledUpdateGroupAction ¶
type ScheduledUpdateGroupAction struct { AutoScalingGroupName string `xml:"AutoScalingGroupName"` DesiredCapacity int `xml:"DesiredCapacity"` EndTime time.Time `xml:"EndTime"` MaxSize int `xml:"MaxSize"` MinSize int `xml:"MinSize"` Recurrence string `xml:"Recurrence"` ScheduledActionARN string `xml:"ScheduledActionARN"` ScheduledActionName string `xml:"ScheduledActionName"` StartTime time.Time `xml:"StartTime"` Time time.Time `xml:"Time"` }
ScheduledUpdateGroupAction contains the information to be used in a scheduled update to an AutoScalingGroup
See http://goo.gl/z2Kfxe for more details
type SimpleResp ¶
SimpleResp is the basic response from most actions.
type SuspendedProcess ¶
type SuspendedProcess struct { ProcessName string `xml:"ProcessName"` SuspensionReason string `xml:"SuspensionReason"` }
SuspenedProcess encapsulates an Auto Scaling process that has been suspended
See http://goo.gl/iObPgF for more details
type Tag ¶
type Tag struct { Key string `xml:"Key"` PropagateAtLaunch bool `xml:"PropagateAtLaunch"` // Specifies whether the new tag will be applied to instances launched after the tag is created ResourceId string `xml:"ResourceId"` // the name of the Auto Scaling group - not required if creating ASG ResourceType string `xml:"ResourceType"` // currently only auto-scaling-group is supported - not required if creating ASG Value string `xml:"Value"` }
Tag encapsulates tag applied to an Auto Scaling group.
See http://goo.gl/MG1hqs for more details
type TerminateInstanceInAutoScalingGroupResp ¶
type TerminateInstanceInAutoScalingGroupResp struct { Activity Activity `xml:"TerminateInstanceInAutoScalingGroupResult>Activity"` RequestId string `xml:"ResponseMetadata>RequestId"` }
TerminateInstanceInAutoScalingGroupResp response wrapper
See http://goo.gl/ki5hMh for more details.