株式会社ライブキャストロゴ 株式会社ライブキャスト

Amazon EC2からしばらく離れてしまっていたので、少しでも最新の動向を把握できたらと思い、セミナーに参加してきました。

参加したセミナーは、イベント&セミナー情報|パソナテック(PASONA TECH)です。
講師は、Amazon EC2の運営実績もあるサーバーワークスさんでした。

セミナーの中で説明されたポイントを、いくつかご紹介したいと思います。

パフォーマンスについて

Amazon EC2には「Region」という概念があります。
Regionを訳すと、地域とか地区などという意味ですが、インスタンスを実行する場所のことを示しています。EC2では、インスタンスを実行する際に、Amazonのデータセンターを間借りするようなイメージですが、要するにそのデータセンターがある場所だと捉えていいと思います。

2009年12月に「US West(N.California)」のRegionがリリースされました。
AWS Launches the Northern California Region

AWS Management Consoleでは、左ペインのNavigationより、選択することが出来ます。

region

2009/4/28時点では、3種類のRegionがあります。

  • US East(Virginia)
  • US West(N.California)
  • EC West(Ireland)

サーバーワークスさんの説明では、US Westが一番パフォーマンスがよく、オススメのRegionだそうです。

簡単な比較結果が示されていました。

  • US East
    pingコマンドの応答速度:200msec
  • US West
    pingコマンドの応答速度:120msec

Amazon EC2でWebサービスを運営するにあたって、日本から利用する際のパフォーマンスがネックだと考える方も多いと思います。以前、私が「US East」を利用していた際は、SSHの操作でも若干ストレスを感じる程度でした。まだまだ早いとは言えませんが、すいぶん改善されたようなので、今度「US West」のRegionを使って体感してみたいと思います。

注意点は、Regionによって料金体系が異なることです。
Amazon Elastic Compute Cloud (Amazon EC2)

料金の違いは、時間単価で数セントのなので、パフォーマンス重視で迷わず「US West」を選択すると思います。

Cloudworks

次に、HOME – Cloudworksについてです。
講師でもある、サーバーワークスさんの提供されているサービスです。無料で使えるAWS Management Consoleの日本語版といった感じでしょうか。

その他にも独自の機能があるようです。

  • インスタンス名に日本語で名前やタグ名を付けることができる。
    AWS Management Consoleでは、稼働中のインスタンスに英字で名前がつけられるため、パッと見、何の用途で稼動しているか、名前から判断するのは難しいです。

    こんなときに、日本語で名前を付けたり、タグを付けたりできると、複数のサービスを運営している際などには、一目で見分けられるので非常に便利です。
  • インスタンスの起動/停止するようなジョブを設定でき、自動化することができる
    自前でバッチを作る必要も、そのバッチの配置場所を用意する必要もありませんので便利ですね。

Amazon EC2には興味があるが、英語サイトのAWS Management Consoleを使うのに抵抗を感じている方など、現時点では無料ですので、Amazon EC2を実際に使ってみて、理解を深めるいい機会だと思います。

Amazon EBS

EBSとはElastic Block Storeの略で、ストレージデバイスのオプションです。
ちょっと調べてみたのですが、以前は、まずはじめに仮想ディスクを作成してから、稼働中のインスタンスをアタッチするという手順だったようです。
※ この手順については、いつも参考にさせてもらっている、rx7さんのブログが非常に参考になります。
最近発表されたストレージサービスAmazon EBS(Elastic Block Store)をEC2から利用する – RX-7乗りの適当な日々

最近は、どうやら新しい機能がリリースされ、Amazon Machine Image(AMI)自体にEBSのオプションが付属しているようです。つまり、上記のような手順をとらず、AWS Management Consoleの「Root Device Type」が「ebs」になっているAmazon Machine Image(AMI)を選択し、起動するだけでこのオプションが利用できるようになったのです。
Boot from Elastic Block Store – Develop with pleasure!を参考にさせていただきました。

devicetype

Root Device Typeには2つのオプションがあります。

  • Instance Store(instance-store)
  • Elastic Block Store(ebs)

一番の違いは「インスタンスダウン時にデータが消失しない」ことです。

但し、インスタンスを停止する際には「Stop」コマンドを使うこと!

EBSを使ってインスタンスを起動した場合、当然インスタンス上で変更した内容は永続化されるんだろうと思ったが、EBSから起動したインスタンスを停止する場合、以下の2パターンの停止方法があるみたい。

* Terminate
こちらは通常のインスタンスの停止と同様、インスタンスを停止し、EBSボリュームも削除される。
* Stop
こちらはTerminateとは異なり、インスタンスは停止するが、EBSボリュームは削除されない。そのため、インスタンスの状態にStopという状態が追加されてる。このStop処理が可能なのはEBSからインスタンスを起動した場合のみ。Stopしている状態では当然インスタンスは稼働していないので、費用は発生しないがEBSのデータ量の課金は発生する。

環境を保持したり、永続化したいデータがあるのであれば、Stopを使うべし!と。うっかりTerminateしたらEBSが削除されるので冷や汗もんだけど。

Boot from Elastic Block Store – Develop with pleasure!より引用。

その他の特徴として、以下のような説明がありました。

  • 利用可能なディスク容量は1GB~1TB
  • 稼働中インスタンスのスナップショットを取得可能
  • 別途利用料がかかる(Instance Storeは無料)
  • AMIの起動時間は1分以内
  • インスタンス終了時に、EBSボリュームを残すことが可能
  • 停止時にカーネル、RAMディスクを変更可能

EBSとは、「外付け仮想ディスク」のようなものだ、とよく言われています。
セミナーの説明資料にも同様の説明がありました。

あと、補足としては、「Root Device Type」がElastic Block StoreのAMIは、まだまだ限られたものしかありません。

devicetype2

※ 比較的、Windows版は対応されているものが多いように、見受けられました。

その他には、、、
AWS Management Console上に表示されている、インスタンス一覧のコンテキストメニューから、「Create Image(EBS AMI)」を選択することで、インスタンスのバックアップができるようです。

但し、再起動するのでしばらく使用不能になる、とのこと。

AWS Management ConsoleとAmazon EC2 API Toolsを併用することで、使用不能になることは回避できるらしいです。

一貫性のあるバックアップではない!とありました。

今度、実験してみたいと思います。

サインアップのステップが増えたようです

当初は、Amazon Web ServicesのWebサイトで、ウィザードに沿って進めていけば、サインアップが完了したのですが、どうやら、確認用の電話番号を登録するというステップが増えたようです。

1)アカウント取得

2)EC2にサインアップ

3)確認用の電話番号を登録

4)電話がかかってきたら、確認用の4桁の数字をプッシュする。

5)利用開始

詳細はよくわからないのですが、4)では自動音声で指示されるようなので、指示通り番号をプッシュすればよいのだと思いますが、このようなサインアップの形式を試したことがないので、なんとなく抵抗を感じます。すぐに電話がかかってこなかった場合などは、どうしたらよいのでしょう・・・

このステップが実施される以前に、アカウントをとっておいて良かったです。

ちなみに、確認用の電話番号は、国際電話になりますので、以下のような感じで入力します。

例)
03-1234-5678

81-3-1234-5678

Amazon EC2のお役立ちツール

セミナーの最後にあった、Amazon EC2関連のツール郡について、いくつかご紹介したいと思います。

AWS Toolkit for Eclipse
EclipseからAmazon EC2を操作するプラグインです。使ったことはないのですが、Javaで作ったモジュールをすぐアップしたいときなど、非常に役に立つと思います。

Amazon Web Services Simple Monthly Calculator
Amazon EC2利用に発生するコストを簡易的に算出してくれるサイトです。月のランニングコストの目安になるかと思います。

また、稼働中のインスタンス等で障害が発生した場合にも、Amazonからの連絡は一切ないので、RSS等から情報をウォッチするするなど、自主的に情報収集しましょう。
AWS Service Health Dashboard – Apr 28, 2010

こんなときに役に立つのが、flashcast:フリーで働くITエンジニア集団のブログ: Nubium Sentinelを使ってみるで紹介したこともあるSentinelです!

Amazon EC2でサービスを運営する際には、積極的活用していきたいと思います。

久しぶりのAmazon EC2ということもあり、まったく知らなかった情報もいくつか入手できたので、非常にためになったのを感じるとともに、世間の技術の進歩の速さをあらためて痛感したものとなりました。

立ち上げたいサービスはあるけど潤沢な資金を用意できないような場合でも、EC2では初期投資がほとんどかかりませんし、急激にアクセスが増えてもスケーリングが容易ですので、フリーのエンジニアやベンチャー企業にも、チャンスを与えてくれる可能性を感じます。また、開発環境やテスト環境としての用途でも、十分に利用するメリットがあることを、今回のセミナーを通じて感じました。不要なときは停止しておけば、課金されませんから。
※ Amazon S3にイメージファイルを保存している場合には、別途料金がかかります。

機会がありましたら、また、参加したいと思います!