Amazon Web Services 上で Django アプリケーションの開発を始めています。
Django にサービスを提供するインスタンスを構築したいと考えています。これまでは共有ホスト (WebFaction) しか使用したことがなく、このようなことについてはあまり経験がありません。
それで、どの AMI をベースとして使用すればよいのか疑問に思っています。Apache などの特定のものがプリインストールされている Ubuntu AMI が必要だと思いますが?
1 つの小さな点: 同じインスタンスから複数の異なる Django プロジェクトを提供する予定です。現在、開発マシンでは virtualenv を使用してさまざまなプロジェクトを分離していますが、EC2 でも同じことを行う予定です。
ありがとう!
答え1
EC2 プラットフォームで Django アプリケーションのセットを構築したいとおっしゃっていますが、実際に構築したいのは Django アプリケーション ファクトリーではないでしょうか。つまり、Django の要件 (apache、postgres、git、sentry など) を取得して実行中の Web サーバーを構築するスクリプトのセットが必要です。その後、それを終了し、再度構築します。
これを望む理由は次のとおりです:
- 再現性
- テスト
- 異なるインスタンスアーキテクチャへの移行
最後の理由は、最初の質問に対する答えですが、アプリケーション自体の構築の一環としてアプリケーション ファクトリーを構築する最も重要な理由ではありません。そうすれば、事前に余分な労力を費やしたためアップグレードが可能であることがわかり、最小限のプラットフォームでアプリを実行する自信が得られます。
Ubuntu を EC2 サーバー プラットフォームとして使用することを検討している場合、クラウド インスタンスの作成に役立つサポートがいくつかあります。
答え2
小さなインスタンス、あるいはマイクロ インスタンスでも問題なさそうです (ただし、最初は同じインスタンスでデータベース サーバーを実行する可能性が高い場合は特に、マイクロ インスタンスで本番サイトを危険にさらしたくはありません)。