Amazon ec2 Amazon EC2代码部署没有成功的主机
我是亚马逊代码部署新手。部署时我遇到一个错误 部署失败Amazon ec2 Amazon EC2代码部署没有成功的主机,amazon-ec2,amazon,aws-ec2,aws-code-deploy,Amazon Ec2,Amazon,Aws Ec2,Aws Code Deploy,我是亚马逊代码部署新手。部署时我遇到一个错误 部署失败 没有主机成功 我检查了Linux机器上的服务代码部署代理,它正在运行 如何解决此问题 正如BrunoLevy所说,我们需要更多关于您尝试进行的部署的信息 但是,作为调试的起点,您可以从部署页面观察部署失败的步骤 您还可以查看主机上的host agent日志文件(/var/log/aws/codedeploy agent/codedeploy agent.log)。该文件包含有关部署的信息。大多数情况下,由于实例和CodeDeploy服务的I
没有主机成功 我检查了Linux机器上的服务代码部署代理,它正在运行
如何解决此问题 正如BrunoLevy所说,我们需要更多关于您尝试进行的部署的信息 但是,作为调试的起点,您可以从部署页面观察部署失败的步骤
您还可以查看主机上的host agent日志文件(/var/log/aws/codedeploy agent/codedeploy agent.log)。该文件包含有关部署的信息。大多数情况下,由于实例和CodeDeploy服务的IAM权限不足,会出现此问题。您需要检查/var/log/aws/codedeploy-agent/codedeploy-agent.log文件以了解详细信息。同样在
/etc/codedeployagent/conf/codedeployagent.yml
文件中,您可以设置:verbose:true
以在日志文件中获取更多信息
以下是您需要更新的IAM策略:
// Policy Role for Code Deploy
{
"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": "*"
}
]
}
// Policy Trust for Code Deploy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": [
"codedeploy.us-west-2.amazonaws.com",
"codedeploy.us-east-1.amazonaws.com"
]
},
"Action": "sts:AssumeRole"
}
]
}
// Instance Role for EC2 Instance
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"s3:Get*",
"s3:List*"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
这是因为codeDeploy通过点击实例来检查ec2实例的运行状况。在部署之前,您需要在实例上运行bash脚本并检查脚本是否工作。必须启动httpd服务。重新启动实例
#!/bin/bash
sudo su
yum update -y
yum install httpd -y
yum install ruby
yum install aws-cli
cd ~
aws s3 cp s3://aws-codedeploy-us-east-1/latest/install . --region us-east-1
chmod +x ./install auto
./install auto
echo 'hello world' > /var/www/html/index.html
hostname >> /var/www/html/index.html
chkconfig httpd on
service httpd start
顺便说一句,如果这有帮助的话,当我在错误页面中查看时,我还可以看到最小健康主机0/1实例。有什么想法吗?我们可能需要更多信息来帮助您。你运行了哪个命令?确切的输出是什么?