LoginSignup
0
0

More than 3 years have passed since last update.

【CodePipeline×Elastic Beanstalk】JavaアプリケーションをCodePipelineでElasticBeanstalkにCI/CDする、のエラーとその対応方法まとめ

Last updated at Posted at 2020-08-06

JavaアプリケーションをCodePipelineでElasticBeanstalkにCI/CDする
で発生しうるエラーとその対応方法まとめです。

環境

  • OS:Windows10
  • IDE:Eclipse 2020-03
  • JDK:Amazon Correto 8
  • フレームワーク:Spring Boot
  • AWS
    • CodePipeline
      • CodeCommit
      • CodeBuild
      • CodeDeploy
    • Elastic Beantalk
      • Java SE(Java 8 バージョン 2.10.8)
        → 異なるプラットフォームブランチ(Corretto 11など)でも同手順でできます。
      • RDS:MySQL Community Edition(バージョン8.0.17)

エラーとその対策集

1. Elastic Beanstalk

(1) アクセス時に、502(Bad Gateway)エラーになる

設定内容を今一度確認しましょう。
【CodePipeline×ElasticBeanstalk】JavaアプリケーションをCodePipelineでElasticBeanstalkにCI/CDする その2
の「4. データベースの設定」の「[3] Elastic Beanstalkにおける設定」を見直して、サーバーのポート番号の設定ができているか確認してください。

2. RDS

(1) データベースにアクセスできない

アクセス許可の設定を今一度確認しましょう。
【CodePipeline×ElasticBeanstalk】JavaアプリケーションをCodePipelineでElasticBeanstalkにCI/CDする その2
の「4. データベースの設定」の「[1] RDSにおける接続設定」の(4)~(9)辺りを見直して、漏れがないか確認してください。

3. CodePipeline

(1) デプロイ時に「The action failed because either the artifact or the Amazon S3 bucket could not be found. ・・・」エラーが出る

image.png

入力アーティファクトをBuildArtifact → SourceArtifactへ変更すると解消します。
以下の手順で変更してください。

①パイプラインにて、「編集する」をクリック。
image.png

②「Deploy」欄にて、「ステージを編集する」をクリック。
image.png

③編集マーク(?)をクリック。
image.png

④「入力アーティファクト」を「SourceArtifact」に変更し(①)、「完了」をクリック(②)。
image.png

⑤「保存する」をクリック。
image.png

⑥「保存する」をクリック。
image.png

(2) 「Deployment failed. The provided role does not have sufficient permissions: Failed to deploy application. Service:AWSLogs・・・」が出る

CloudWatchLogsへのアクセス権がないために起こるエラーです。
CodePipeline用に作成されたロールに、「CloudWatchLogsFullAccess」ポリシーを付与することで、解決できます。

以下、手順です。

①マネジメントコンソールにて、「IAM」を探してクリック。
image.png

②「ロール」(①) > 対象のCodePipelineのロールを検索し(②)、ロール名をクリック(③)。
image.png

③「ポリシーをアタッチします」をクリック
image.png

④「CloudWatchLogsFullAccess」を検索して(①)、チェックを入れ(②)、「ポリシーのアタッチ」(③)をクリック。
image.png

終わりに

本編にも書きましたが、自分は、本編の1-[3]-(5)のgradlewの権限変更で3日、そして、5-[1]-(10)のデプロイの段階で3回エラーで躓いて何度も心が折れそうになりました。
エラーが発生しても、めげずに、むしろ、どうやって解決しよっかなーって感じで、楽しんでいきましょう!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0