9

ElasticBeanstalkでGlassfishサーバー用に作成されたJavaアプリケーションを使用する必要があります。AmazonではGlassfishでAMIを選択できないため、TomcatでAMIを選択し、Tomcatで正しく動作するようにアプリケーションを変更しました。

これで、Sun JDKも使用する必要があることがわかりましたが、デフォルトではElasticBeanstalkAMIにはopenjdkが付属しています。私はたくさんグーグルで検索し、 StackOverflowでこの回答のようないくつかの(それほど多くのリソースではない)興味深い投稿を見つけました

私が理解できないのは、答えのこの部分です。

カスタムAMIは、アプリケーションの起動からbeanstalkを介して起動されたものではなく、EC2から手動で起動したAmazonのbeanstalkAMIの実行中のインスタンスから作成します。

だから、私の質問は:Elastic BeanstalkでGlassfishでカスタムAMIを使用する方法はありますか?それが不可能な場合、誰かがカスタムAMIの作成方法を教えてもらえますか?

ありがとう、アンドレア

4

3 に答える 3

10

その答えは、「beanstalkアプリケーションを起動して、それらのインスタンスの1つから直接AMIを切り取らないでください。代わりに、beanstalk AMI(パブリックAMIリストで入手可能)に基づいてインスタンスを起動する」ことを意味します。つまり、これらのいずれかを使用します。それらの84があることに注意してください:

Beanstalk AMI

インスタンスの構成が完了したら、独自のプライベートAMIを切り取り、Beanstalk環境で指定します。

于 2012-08-17T12:18:34.630 に答える
6

個人的には、選択した回答がわかりにくいと感じました。おそらく、AWSの学習曲線をまだ上っているためです。多分この答えは他の初心者を助けるでしょう。私自身のカスタムAMIを使用してElasticBeanstalkインスタンスを正常に起動する方法を理解したところで、この引用が言っていることは、私にとってはうまくいった次の完全に非自明な手順を実行することです。

  1. EC2サービス(Elastic Beanstalkサービスではない)に移動し、カスタムAMIの開始点として使用するElasticBeanstalkAMIに基づいてインスタンスを起動します。これはすぐに捨てられます。

  2. インスタンスを選択し、「イメージの作成/EBSAMI」を選択します。作成したら、作成した一時的なEC2インスタンスを削除できます。唯一の目的は、カスタムAMIを作成することでした。

  3. 次に、Elastic Beanstalkサービスに移動し、カスタムAMIを参照するように設定を編集します。

于 2013-04-08T20:56:47.537 に答える
1

@Dangerスケールアッププロセスをスピードアップします。

EBでDockerアプリを使用していますが、Docker Hubからの「Dockerプル」が非常に遅いため、すべてのインスタンスが異常な場合、サイトは15〜30分でダウンします。カスタマイズしたAMIを作成し、ベースのDockerイメージをプルすると時間を節約できます。

于 2014-12-16T01:56:27.960 に答える