LoginSignup
mongtti76
@mongtti76 (崔 昊烈)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

deploy時にMissing credentialsエラーについて

GitHubをリポジトリとしてEC2インスタンスにデプロイをしようとしています。
codedeploy agent(ruby)はインストール済です。

AWSのdeployコンソールでデプロイを実施したところ、下記のエラーが出ています。(/var/log/aws/codedeploy-agent)

<エラー内容>
2020-09-25 17:45:48 INFO [codedeploy-agent(4687)]: Version file found in /opt/codedeploy-agent/.version with agent version OFFICIAL_1.2.1-1868_rpm.
2020-09-25 17:45:48 INFO [codedeploy-agent(4687)]: Version file found in /opt/codedeploy-agent/.version with agent version OFFICIAL_1.2.1-1868_rpm.
2020-09-25 17:45:48 ERROR [codedeploy-agent(4687)]: InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller: Missing credentials - please check if this instance was started with an IAM instance profile
2020-09-25 17:45:48 ERROR [codedeploy-agent(4687)]: InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller: Missing credentials - please check if this instance was started with an IAM instance profile

IAMでロールのポリシーは下記となっています。
・サービスロール
  ポリシー:AWSCodeDeployRole
  信頼関係:

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": [
"codedeploy.ap-northeast-1.amazonaws.com",
"codedeploy.us-east-2.amazonaws.com",
"codedeploy.eu-west-1.amazonaws.com",
"codedeploy.ap-northeast-2.amazonaws.com",
"codedeploy.eu-west-2.amazonaws.com",
"codedeploy.ap-south-1.amazonaws.com",
"codedeploy.sa-east-1.amazonaws.com",
"codedeploy.ap-southeast-1.amazonaws.com",
"codedeploy.ca-central-1.amazonaws.com",
"codedeploy.us-west-2.amazonaws.com",
"codedeploy.eu-central-1.amazonaws.com",
"codedeploy.ap-east-1.amazonaws.com",
"codedeploy.ap-southeast-2.amazonaws.com",
"codedeploy.us-east-1.amazonaws.com",
"codedeploy.us-west-1.amazonaws.com",
"codedeploy.eu-west-3.amazonaws.com"
]
},
"Action": "sts:AssumeRole"
}
]
}
・EC2インスタンス用(インスタンスにアタッチ済)
  ポリシー:AmazonEC2RoleforAWSCodeDeploy
       AutoScalingNotificationAccessRole

  信頼関係:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": [
"ec2.amazonaws.com",
"codedeploy.amazonaws.com"
]
},
"Action": "sts:AssumeRole"
}
]
}

※googleで当エラーに対して確認してみたのですが、解決方法(codedeploy agentの再起動)では解決できませんでした。
 (sudo service codedeploy-agent restart)

念のためですが、下記のコマンドを実行すると値が設定されていないようです。(deploy01はEC2インスタンスにアタッチしたロール名)
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/deploy01

結果は下記の通りです。
image.png

0

2Answer

CodeDeployエージェントがEC2のIAMロールを読み込んでいないのが原因のようで、以下実行してから再度試してみてください。

sudo systemctl restart codedeploy-agent

0

お答ありがとうございます。ご提示の内容で実施してみましたが、結果は変わりませんでした。

0

Your answer might help someone💌