Currently the only cloud provider Cyclops supports is AWS, so it will be enabled automatically.
Cyclops requires the following IAM policy to be able to properly integrate with AWS:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"autoscaling:DescribeAutoScalingGroups",
"autoscaling:DetachInstances",
"ec2:TerminateInstances",
"ec2:DescribeInstances"
],
"Resource": "*"
}
]
}
Cyclops makes use of aws-sdk-go for communicating with the AWS API to perform scaling of auto scaling groups and terminating of instances.
To initiate the session, Cyclops uses the session package:
sess, err := session.NewSession()
This will use the default credential chain for obtaining access.
See Configuring the AWS SDK for Go for more information on how the SDK obtains access.
It is highly recommended to use IAM roles for Cyclops access, using the above IAM policy.
- Ensure that if you are using the remote credential provider that
AWS_REGION
orAWS_DEFAULT_REGION
is set to the region that the auto scaling groups reside in. - Cyclops does not support cycling auto scaling groups that are located in different regions, they must all reside in the same region.