Amazon LightsailのEC2との違いなど
AWSより、新しくVPSサービス「Amazon Lightsail」がリリースされました。
・Amazon Lightsail ? AWSの力、VPSの簡単さ
https://aws.amazon.com/jp/blogs/news/amazon-lightsail-the-power-of-aws-the-simplicity-of-a-vps/
ひとつ前の記事で、Amazon Lightsailのベンチマークテスト結果をまとめました。
ここでは、もともとAWSにあるサーバー機能であるEC2との違いや注意点、Lightsailが向いているケースについて記載します。
Lightsailの各機能や使い方については、Developers.IOのLightsail特集記事などを参照されるとよいと思います。
・Developers.IO Lightsail 特集カテゴリー
http://dev.classmethod.jp/referencecat/aws-lightsail/
※以下の記載内容は、2016年12月時点のものです。また、料金は現在唯一リリースされている「バージニア北部」リージョンのものです。
EC2との違い、注意点
LightsailでEC2と異なる仕様や注意点は以下のとおりです。
- サーバーの作成が簡単
Management Consoleで初めてEC2サーバーを作成する際は、VPCやセキュリティグループ等も考慮してさまざまな指定をする必要がありますが、Lightsailでは、ユーザーインタフェースが極力簡略化されており、少ない操作で簡単にサーバーを作成することができます。
VPSに慣れているユーザーが直観的に操作できるよう、工夫されています。
- サーバー料金にインターネット転送料金やディスク料金が含まれている
個人的には、これがLightsailの一番の長所だと思います。
「無料」とは少し違っていて、サーバー料金に含まれているということですね。
AWSは転送料金による課金があるため、「料金が高くなる、見積もりにくい」という印象を持たれている方もいるでしょうし、これを理由に、AWSを断念してほかのVPSサービスや転送量課金のないの日本国産クラウドを選択するケースもあるでしょう。
(実際は、転送料金は $0.14/GB で、そんなに高くはないのですが。)
一番安いプランの「1vCPU, 512MB RAM」でも、転送量1TBまで追加料金なしで利用できるので、実質的には、転送量の追加料金が発生することはないといえるでしょう。
もし、この転送量を超えるぐらいのアクセスがあるのなら、このサーバースペックでは処理できないと思われるので。
また、ディスクサイズはサーバースペックによって決まっており、EC2のようなEBSボリュームサイズによる課金はありません。
- DNSサーバー機能がある
Route 53のようなDNSサーバー機能を使用できます。
(中身はRoute 53でしょう。)
300万クエリ/月まで無料です。
- ブラウザからSSHアクセスできる
Management ConsoleからSSHアクセスが可能です。
軽快に動いて、けっこう便利ですね。
ただし、VPSサービスや日本国産クラウドでよくあるような「サーバーコンソール」ではないので、「OSがうまく起動しないときにシングルユーザーモードで起動して調査・対応」といったことはできません。
- 自分で作成したVPCを使用できない
Lightsailのサーバーは、あらかじめ用意されている「Shadow VPC」内に作成されます。
VPC内のEC2インスタンスやRDSインスタンスにアクセスするには、VPCピアリング接続が必要で、$0.10/GB の転送料金がかかります。
また、自分で作成したVPSとは接続できず、デフォルトVPCのみ接続可能です。
これらの点から、現時点では、EC2インスタンスやRDSインスタンスとの連携にはあまり向いていないと思います。
(でも、「やりたければできる」のは大事。)
なお、ドキュメントでは見つけられなかったのですが、「Shadow VPC」は、ユーザー所有のデフォルトVPCとピアリング接続できることからユーザーごとに独立したネットワークであり、ほかのAWSユーザーと共用ではないと思います。
複数のLightsailサーバーを作成した場合は、プライベートIPアドレスでサーバー間の通信が可能です。
- スナップショットから新しいサーバーを作成できる
例えば、サーバーを複製する場合、EC2ではスナップショットからいったんAMIを作成して、AMIから新しいEC2インスタンスを作成する必要がありますが、Lightsailはスナップショットから直接新しいサーバーを作成することができます。
ひと手間なくなるのは楽ですし、AMIの作成は少し待ち時間が生じるので、時間の短縮にもなります。
なお、EC2は、AMIを使用しているインスタンスが存在すると、そのAMIおよびAMIのソースとなるスナップショットを削除できませんが、Lightsailは、サーバーが存在していても、ソースとなったスナップショットを削除できます。
- ファイアウォールは、Inboundのポート番号指定のみ
EC2で使用できる「セキュリティグループ」とは異なり、Lightsailでは「ファイアウォール」で、Inboundのポート番号のみ指定することができます。
InboundのソースIPアドレスや、Outboundのポート番号、ICMPプロトコルの制御はできません。
「SSHのアクセス元IPアドレスを限定する」など、細かいセキュリティ設定を行いたい場合は、iptables等、サーバー側のソフトウェアで設定する必要があります。
それでも、サーバーの上位で不要なパケットを破棄してくれると、余計なパケットがサーバーに届かず、無駄にリソースを消費しなくて済むのでうれしいですね。
なお、デフォルトでは、SSH(TCP/22)、HTTP(TCP/80)、HTTPS(TCP/443, アプリケーションを含むイメージのみ)ルールが登録されています。
- サーバースペックの変更はスナップショットから
サーバースペックを変更する場合、EC2のようにManagement Consoleでの変更はできません。
いったんサーバーのスナップショットを作成し、APIで、スナップショットをソースとし、変更後のスペック(タイプ)を指定してサーバーを作成することで、サーバースペックを変更します。
固定IPアドレス(Static IP)を元のサーバーから新サーバーに付け替えれば、IPアドレスもそのままとなります。
このとき、ディスクサイズも変更となりますが、Amazon Linuxの場合 resize2fs コマンドの実行は不要でした。
サーバー起動時に自動的に実行されているのかもしれません。
(OSがUbuntuの場合については、試していないのでわかりません。)
- サーバー停止中も課金される
EC2は、サーバーを停止している間はインスタンスの課金がなく、EBSボリュームのみの課金となります。
Lightsailは停止している間も起動中と同じ料金が課金されます。
長期間停止する場合は、無駄に課金されないよう、スナップショットを作成したうえで、サーバーを削除するとよいでしょう。
- 定期スナップショットの設定がしにくい
スナップショット機能があるのですから、LambdaのScheduled Eventを使って
「毎日深夜にスナップショットを作成して、最新の7世代のみ保存する」
というようなバックアップの設定をしたいですよね。
でも、現時点のAPIの仕様では、特定のインスタンスのスナップショットのみ取得するAPIやフィルタ機能がなくて、上のような設定がやりにくいです。
いったん全スナップショットを取得してから、インスタンス名で絞り込んで、作成日時でソートして古いものを削除、というような、ひと工夫ふた工夫が必要です。
せっかくスナップショット機能があって、しかも複数世代保存するときは差分となるのにちょっと残念です。
RDSのように、Management Consoleでバックアップの設定ができるようになるか、APIの改善を望みます。
(2019.10.10追記)
2019年10月、Lightsailの自動スナップショットがリリースされ、Management Consoleで簡単に設定できるようになりました。
・Amazon Lightsail で自動スナップショットが利用可能に
https://aws.amazon.com/jp/about-aws/whats-new/2019/10/amazon-lightsail-now-provides-automatic-snapshots/
(2019.10.10追記ここまで)
- メトリクスはCloudWatchではない?
メトリックス機能でCPU使用率やネットワーク転送量などを確認することができますが、これはCloudWatchのデータではないようで、CloudWatchの画面では確認できません。
このため、CloudWatchによるサーバーステータスチェックをトリガーとした「EC2 Auto Recovery」のようなサーバー自動復旧設定は、少なくともユーザー側ではできません。
(内部で自動的に復旧するようになっている可能性もありますが。)
- アプリケーションを含むイメージのOSはAmazon LinuxではなくUbuntu
Lightsailでは、WordPress, RedmineやLAMP/LEMP構成などのOSイメージを選択してサーバーを作成することができますが、これらの「アプリケーションを含むイメージ」のOSはすべてUbuntuです。
これは、これらのイメージがbitnamiのもので、そのbitnamiがUbuntuを採用しているからですね。
個人的にはDebian/Ubuntu系は苦手なので、この点は残念でした。
また、LightsailはPaaSサービスではありませんので、OSやopensslなどのソフトウェア等のセキュリティアップデートなど、サーバーのメンテナンスはユーザー責任で行う必要があります。
(これはどのVPSサービスでも同じことですね。)
EC2と同じ
Lightsailで、以下の点はEC2と同じでした。
- 起動時のSSHキー、初期スクリプト(UserData)の指定可
ただし、EC2とLightsailのキーは共用ではないので、EC2と同じキーを使用したい場合は、Lightsail側でのキーのアップロードが必要です。
- 固定IPアドレスが1サーバー1つ無料
EC2のElastic IPと同じですね。
EC2では、Elastic IPをアタッチしたままインスタンスを停止していると課金されますが、LightsailのFAQによると
「we charge a small $0.005/hour fee for static IPs not attached to an instance for more than 1 hour.」
とのことで、Lightsailでは停止しても課金されないのかもしれません。
- サーバー性能
ひとつ前の記事
・Amazon Lightsailのベンチマーク
https://inaba-serverdesign.jp/blog/20161208/aws_lightsail_benchmark.html
で書いたとおり、Lightsailのサーバー性能は、EC2 t2シリーズの同じスペックのサーバーとほぼ同じです。
わからないこと
以下については、気になるのですがドキュメントや実際に試した限りでは確認できませんでした。
- スナップショットは圧縮される?
EC2 EBSのスナップショットは圧縮されるのですが、Lightsailについては、ドキュメントでによると、差分にはなるものの圧縮するかどうかの記述はありませんでした。
実際にスナップショットを作成して「ビリング」で課金情報を見れば確認できると思ったのですが、「ビリング」にLightsailの課金情報が表示されません。
しばらくは無料で使用できるのかな?(笑)
圧縮されると、ディスクサイズ分ではなく、ディスク上にある実際のデータ量のさらに圧縮分のみの課金となります。
料金が1/10か1/20ぐらいとなり大きな違いなので知っておきたいところですが。。
といっても、スナップショットの料金は $0.05/GB,月 で、Lightsailの最大ディスクサイズは80GBなので、非圧縮でもせいぜい $4 ぐらいなんですけどね。
(2017.1.31追記)
AWSオンラインセミナーで、圧縮かどうかの説明はありませんでしたが、「実際の使用量のみが課金対象となる」という説明がありました。
・AWS Black Belt Online Seminar 2017 Amazon Lightsail p.49
http://www.slideshare.net/AmazonWebServicesJapan/aws-black-belt-online-seminar-2017-amazon-lightsail/49
(2017.1.31追記ここまで)
- インターネット転送の帯域制限はないか?
ほかのVPSサービスによっては、公表はしていなくても、サーバー単位の帯域制限を設けている(と思われる)ケースがあるでしょう。
Lightsailでもそのような制限を設けている、ということはないのでしょうか。
月間数TBまで転送量課金をしない、という太っ腹なAWSなので、そのような制限はないとは思いますが。。
Lightsailが向いているケース
僕はやはり、インターネット転送量の追加料金がない点がLightsailの一番のウリだと考えているので、
「サーバー1台で運用する、画像や動画など配信データ量が比較的多いWebサイト」
が一番向いていると思います。
※となると、各種データのバックアップが重要になってくるので、定期スナップショットの簡単設定機能が追加されるとよいのですが。
ロードバランサーの機能は用意されておらず、RDSと連携するのにもVPCピアリング接続の料金がかかってしまうので、1つのサービス、システムやWebサイトで複数台のサーバーを使用するなら、EC2を使用すべきでしょう。
あとは、とにかく簡単にサーバーを起動できるので、
「初めてAWSを使ってみる」
「検証のため短時間サーバー環境を使いたい」
というケースでは、EC2よりLightsailのほうが楽でしょう。
アプリケーションを含むOSイメージもあるので、
「WordPressのサーバーを短時間で立ち上げたい」
というケースでも、うれしいかもしれませんね。
まとめ
AWSより新しくリリースされた、VPSサービス「Amazon Lightsail」について、EC2との違いや注意点、EC2と同じ点、Lightsailが向いているケースなどをまとめてみました。
サーバーの作成が簡単で、(ほぼ)固定料金で使用できるので、お客様にもおすすめしやすいサービスだと思います。
現時点ではいくつか気になる点もありますが、AWSのことですので、設定のシンプルさを保ちつつ、とくにVPCやスナップショットまわり、サーバースペックの変更、EC2への移行?あたりは今後改善されていくのではないでしょうか。
早く東京リージョンでもリリースされるといいですね。
(追記)
2017年5月29日、東京リージョンにもリリースされました。
料金もUSリージョンと同じく$5/月~だそうです。
・Amazon Web Services ブログ Amazon Lightsail、東京リージョンにて提供開始
https://aws.amazon.com/jp/blogs/news/amazon-lightsail-tokyo-region-launch/
(関連記事)
・Amazon Lightsailのベンチマーク
https://inaba-serverdesign.jp/blog/20161208/aws_lightsail_benchmark.html