Разрешения IAM, необходимые для StarCluster
Я следую инструкциям по настройке StarCluster и хочу создать нового пользователя для использования StarCluster. Мой вопрос: какой минимальный набор разрешений IAM требуется StarCluster для работы?
Это AmazonEC2FullAccess
политика требуется (как указано в этом) или есть менее всеобъемлющая политика.
2 ответа
Приведенная выше политика не позволяет вам подключать тома EBS к экземплярам, использовать группы размещения или делать выборочные ставки. Похоже, мы выяснили полный набор разрешений, необходимых для пользователя IAM, выполняющего vanillaimprovements starcluster, в том числе спотовых ставок, а также надстройки и ремодеводы балансировщика нагрузки:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ExtraActionsNeededByStarCluster",
"Effect": "Allow",
"Action": [
"ec2:CreateKeyPair",
"ec2:CreateSecurityGroup",
"ec2:DeleteSecurityGroup",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:CreateTags",
"ec2:DeleteTags",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:TerminateInstances",
"ec2:CreatePlacementGroup",
"ec2:DeletePlacementGroup",
"ec2:RequestSpotInstances",
"ec2:CancelSpotInstanceRequests"
],
"Resource": "*"
},
{
"Sid": "AllowDescribeForAllResources",
"Effect": "Allow",
"Action": "ec2:Describe*",
"Resource": "*"
},
{
"Sid": "AllowInstancesToBeCreated",
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": "*"
},
{
"Sid": "AllowUserToStopStartDeleteInstances",
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances",
"ec2:StopInstances",
"ec2:StartInstances"
],
"Resource": "arn:aws:ec2:*:account:instance/*"
}
]
}
Я использовал следующую политику, чтобы позволить пользователю IAM запускать экземпляры t2.micro (только)
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ExtraActionsNeededByStarCluster",
"Effect": "Allow",
"Action": [
"ec2:CreateKeyPair",
"ec2:CreateSecurityGroup",
"ec2:DeleteSecurityGroup",
"ec2:AuthorizeSecurityGroup",
"ec2:CreateTags",
"ec2:DeleteTags",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:TerminateInstances"
],
"Resource": "*"
},
{
"Sid": "AllowDescribeForAllResources",
"Effect": "Allow",
"Action": [
"ec2:Describe*"
],
"Resource": "*"
},
{
"Sid": "OnlyAllowCertainInstanceTypesToBeCreated",
"Effect": "Allow",
"Action": [
"ec2:RunInstances"
],
"Resource": [
"*"
],
"Condition": {
"StringEquals": {
"ec2:InstanceType": [
"t2.micro"
]
}
}
},
{
"Sid": "AllowUserToStopStartDeleteInstances",
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances",
"ec2:StopInstances",
"ec2:StartInstances"
],
"Resource": "arn:aws:ec2:*:account:instance/*"
}
]
}