2016-05-23 5 views
2

У меня есть один репозиторий в битбакете, для развертывания на эластичном участке я использую codedeploy (я не мог найти лучшего решения). Я создал elsticbeanServceRole в IAM и политики, я приложил к тому, что роли являютсяAws Codedeploy + Elasticbeanstalk с использованием Bitbucket

  1. AmazonEC2FullAccess
  2. AdministratorAccess
  3. AmazonAPIGatewayAdministrator
  4. codedeployServiceRolePolicy (пользовательская политика)

Это содержание codedeployServiceRolePolicy

{ 
"Version": "2012-10-17", 
"Statement": [ 
    { 
     "Action": [ 
      "autoscaling:PutLifecycleHook", 
      "autoscaling:DeleteLifecycleHook", 
      "autoscaling:RecordLifecycleActionHeartbeat", 
      "autoscaling:CompleteLifecycleAction", 
      "autoscaling:DescribeAutoscalingGroups", 
      "autoscaling:PutInstanceInStandby", 
      "autoscaling:PutInstanceInService", 
      "ec2:Describe*" 
     ], 
     "Effect": "Allow", 
     "Resource": "*" 
    } 
] 

}

Затем я скопировал Role ARN и вставить в настройках приложения codedeploy

Я успешно настраивали Bitbucket codedeploy, для этого я создал одну роль под названием bitbucketRole с таможенной политикой. Содержание политики является

{ 
"Version": "2012-10-17", 
"Statement": [ 
    { 
     "Effect": "Allow", 
     "Action": [ 
      "autoscaling:*", 
      "codedeploy:*", 
      "ec2:*", 
      "elasticloadbalancing:*", 
      "iam:AddRoleToInstanceProfile", 
      "iam:CreateInstanceProfile", 
      "iam:CreateRole", 
      "iam:DeleteInstanceProfile", 
      "iam:DeleteRole", 
      "iam:DeleteRolePolicy", 
      "iam:GetInstanceProfile", 
      "iam:GetRole", 
      "iam:GetRolePolicy", 
      "iam:ListInstanceProfilesForRole", 
      "iam:ListRolePolicies", 
      "iam:ListRoles", 
      "iam:PassRole", 
      "iam:PutRolePolicy", 
      "iam:RemoveRoleFromInstanceProfile", 
      "s3:*" 
     ], 
     "Resource": "*" 
    } 
] 

}

Проблема

Теперь, когда я нажимаю на «Развертывание на АМС» в BitBucket, развертывание от BitBucket до codedeploy является запуск, но я получаю сообщение об ошибке при codedeploy консоли

Общее развертывание не удалось, поскольку слишком много отдельных экземпляров не удалось выполнить развертывание, слишком мало здоровых экземпляров av для развертывания, или в некоторых случаях в вашей группе развертывания возникают проблемы. (Код ошибки: HEALTH_CONSTRAINTS).

Пожалуйста, помогите мне

+1

У меня такая же ошибка в той же ситуации, и оказалось, что агент CodeDeploy не был установлен в моем экземпляре EC2 Elasticbeanstalk. –

ответ

1

Является ли CodeDeploy агент работает на экземплярах? Кроме того, вы можете вставить информацию об ошибке из одного из неудавшихся экземпляров?

HEALTH_CONSTRAINTS обычно означает, что CodeDeploy не смог продолжить развертывание из-за ограничений работоспособности, установленных в конфигурации развертывания. Слишком много экземпляров уже сбой, и CodeDeploy не может удалить лишние экземпляры.

+0

FYI, вот как узнать, работает ли агент http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-run-agent-verify.html. –

 Смежные вопросы

  • Нет связанных вопросов^_^