2009-02-27 17 views
6

EC2活動の自動化にはどのようなツールや戦略を使用していますか?EC2の自動化ツール/戦略?

多くのEC2インスタンスを用意し、さまざまなソフトウェア(主にPythonパッケージ)を用意し、S3とのやり取り(主にデータのダウンロード)を行い、さまざまなジョブを実行できるようにする必要があります。私はオンデマンドとスケジュールどおりにこれをやります。私は、私がすべきかどうかを判断しようとしている

:すべての私のソフトウェアがそれに または

  • 起動プレーンバニラのLinux AMIインスタンスをロードし、それに私のソフトウェアをSCPを使用し

    • AMIを作成します

    プロビジョニングと自動化については、Botoがかなりよく見えます。あるいは、Paramikoで何かを書くことができます。私はそれを探している必要がありますか他の何かをお勧めしますか?

    基本的に私はアドバイスや成功事例を探していますが、何が効果的かを教えてください。

  • 答えて

    3

    AMIを選ぶことについてのあなたの弾丸に答えるには、インストールしているソフトウェアの量によって異なります。

    私はハイブリッドなアプローチで成功しました。そこでは、AMIを構築し、重量のある、より安定したソフトウェアをロードします。これはインストーラを実行する必要があるか、インストールにかなりの時間がかかります(起動プロセスのたびに毎回パッケージを再インストールすると、毎回インストールするための費用がかかります)。次に、プロビジョニング/起動時に小さくて揮発性のソフトウェアをアップロードします。このバケツでは、ほとんどのアプリケーションコード、データなどが読み込まれます。そのようにして、私は自分のアプリを変更することができ、AMIに触れる必要はありません。このアプローチの

    メリット:

    • は何千回をインストールし、同じソフトウェアを実行するために支払う必要はありません。
    • AMIは、時間の経過と共にかなり安定しています。
    • インストールに介入またはGUI対話が必要なソフトウェアを使用できます。

    主な欠点:

    • はあなたのAMIのOSのバージョンは、時間の経過とともに古くなります。
    • あなたのAMIは、実行されるインスタンスタイプ/アーキテクチャに関して柔軟性がないかもしれません。たとえば、32ビットOS上に作成し、High CPUインスタンス・タイプで実行しないようにすることができます。だからあなたは価格体系に自分自身をロックすることがあります。

    私はPythonを使用しないため、参照したAPIのいずれにもコメントすることはできません。

    0

    この質問は今でも以前に聞かれましたが、私の答えは他のユーザーにとって役に立つと思います。私は、市場で入手可能な最高のオートメーションツールがクラウド管理プラットフォームによって提供されていると信じています。たとえば、自動スケーリング、設定ソフトウェアの統合(Chef/Puppet)、データベースの複製、DNS管理などを提供します。

    最も人気のあるクラウド管理ソフトウェアは、Scalr(免責事項:私がそこで働いています)、RightScaleとenStratusです。 Scalrはオープ​​ンソースであり、Apache 2ライセンスでリリースされています。

    AMIに関する具体的な質問に関して、クラウド管理プラットフォームは通常、あらかじめ設定されたAMIを提供しています(Scalrでは、それらをロールと呼びます)。既存のインスタンスに基づいて独自のAMIを作成する場合は、snpashotを作成し、将来のインスタンスのテンプレートとして使用できます。

    関連する問題