1

Ruby-on-Rails アプリケーションを AWS Beanstalk にデプロイしようとしています。war は Jenkins で warble を使用して生成され、war ファイルは AWS S3 バケットにコピーされます。

AWS Beanstalk コマンドライン ツールを使用して、Beanstalk アプリケーション、アプリケーション バージョン、および環境を作成しています。最初のバージョンは正しくデプロイされています。

次に、新しいアプリケーション バージョンを作成し、新しいバージョンで環境を更新してみます。新しいバージョンがデプロイされていません。イベントでは、次のエラーがスローされます。

Encountered errors while attempting to deploy version to 1 running EC2 instances

私も最初からすべてを作成しようとしましたが、それでも上記の2番目のバージョン以降のエラーがスローされます。

注: カスタム AMI を使用しています。これは、微調整して使用するイメージを作成した BS AMI です。

誰かがこれを手伝ってくれますか?

ありがとう

ノーマン A.

4

1 に答える 1

2

私は自分のテストに基づいてこれに答えているので、解決策を探している人なら誰でも役に立つかもしれません。

質問で述べたように、カスタム Beanstalk ami [Tomcat 7 スタック] を使用していました。カスタマイズは、以下の手順に従って行われました。

  1. Beanstalk アプリケーションを作成し、このアプリのバージョンを作成し、Beanstalk 環境 (カスタマイズされたものではなく、AWS によって提供されるデフォルト) を起動します。KeyPair などのオプションを渡して、同じものを使用してインスタンスに ssh できるようにします。

  2. 上記のインスタンスの AMI-id をメモし、この AMI の通常の EC2 (Beanstalk ではない) インスタンスを起動します。

  3. 必要に応じて EC2 インスタンスをカスタマイズし、完了したらこのインスタンスの EBS イメージを作成します。このインスタンスを停止します。イメージに満足したら、後で終了できます。

  4. Beanstalk インスタンスも終了します。

  5. 新しい Beanstalk 環境を起動しますが、今回は手順 3 で作成したイメージのこの ami-id を渡します。

Tomcat 6 と 7 の両方にカスタマイズされた Beanstalk イメージを作成しました。私の問題については、Tomcat 7 にカスタマイズされた ami を使用しているときに問題が発生していることがわかりました。更新は機能しませんでした。しかし、Beanstalk のデフォルト インスタンス (私のカスタマイズされたイメージではない) を使用すると、更新は正常に機能します。

ただし、Tomcat 6 のカスタマイズされたイメージでは、更新は正常に機能します。そのため、Tomcat 7 のカスタマイズ用の AWS Beanstalk Default AMI に問題があるようです。

今のところ、これを回答済みとしてマークしています。

-ノーマン A.

于 2012-05-13T09:24:32.480 に答える