« 【AWS発表】 Amazon CloudFrontがより大きなファイルサイズ(20GB)のコンテンツ配信をサポート | メイン | 【AWS新発表】 AWS Management Console上で各EC2インスタンス、EBSボリュームから直接アラームを作成できるように »

【AWS発表】 Virtual Private Cloudの中でネットワークインタフェースを自在にコントロールできるElastic Network Interfaceの発表

AWSが提供しているサービスを見て頂くと、これまではコントロールできない一枚岩なものだと思われていたアーキテクチャ・コンポーネントを、個別にコントロールできる要素毎に分けていき、クラウドサービスとしてサービス化してきたことが分かると思います。

例えば、EC2インスタンスを作成したのちに、個別にEBSボリュームを必要に応じて作成して付与することができます。固定的な量のストレージを持っていた既存の物理サーバーの調達と比べると、ずっとダイナミックで柔軟です。

本日、Virtual Private Cloudの中で稼働するEC2に関して、柔軟にコントロールできるさらなるコンポーネントを発表します。まず、EC2インスタンスから、IPアドレス(とそれに関係する沢山の要素)を切り離し、それをElastic Network Interface (ENI)としてサービス化しました。エラスティックなネットワークインタフェースの誕生です!さらに、そのENIは、各インスタンスに対して、二つまで付与することができるようにしました!

各ENIは、VPCの中の一つのサブネット(つまり特定のアベイラビリティゾーン)に所属します。各ENIが、下記のような属性を持ちます。

  • 詳細
  • プライベートIPアドレス
  • Elastic IPアドレス(固定IPアドレス)
  • MAC アドレス
  • セキュリティグループ(複数可能)
  • ソース/デスティネーション・チェックフラグ (Source/Destination Check Flag)
  • 終了時消去フラグ (Delete on Termination Flag)


この新モデルにおいて重要なのは、このENIがあると、VPCの中でEC2を立ち上げる際に特定のVPCサブネットの中に置く、ということ自体はこれまでと比べるとあまり意味が無くなったということです。各ENIはそれぞれ特定のサブネットに属しています。各EC2インスタンスに、二つのENIを付加することができるので、異なるサブネットに属するENIを付加することもできます。

EBSボリュームと同じように、ENIはEC2インスタンスを起動しようが終了しようが、それとは異なるライフタイムを持つことができます。ENIの調達は柔軟で(Elastic!)、必要なときにすぐに調達し、不必要であれば捨てることができます。また、ENIを前もって作成しておいて、それをEC2インスタンスを起動した際に、付加することができる点も重要でしょう。もちろん、稼働中のEC2インスタンスにENIを付加することもできます(ホットアタッチと呼びましょう)。終了時消去フラグがセットされていない限り、EC2インスタンスを終了してもENIは存続しつづけます。EC2作成時には、特に指定しない限り、ENIが自動的に作成されます。そして、デフォルトで終了時消去フラグが設定されているので、EC2終了時にはENIも消去されます。ですので、特にENIを使用しないときは、これまで通り、それを意識せずに使うことができるでしょう。

今回の新しいレベルのアドレス周り、セキュリティ周りの柔軟性を手にすることで、様々な利用方法がでてきます。こちらがその一例です。

管理用のネットワーク (バックネット) - Webサーバーやデータベースサーバーに外向けと内向け用にENIの2枚ざしが可能になります。インスタンスの最初のENIはパブリックサブネットに所属させ、0.0.0.0/0 (全トラフィック)を、VPCのVPCのインターネットゲートウェイにルーティングします。インスタンスの2番目のENIは、プライベートサブネットに所属させ、0.0.0.0/0 (全トラフィック) を、社内イントラネットなどにつながるVPNゲートウェイにルーティングします。そして、SSHアクセス、管理/ログ用途に、プライベートネットワークを使用します。異なるセキュリティグループを各ENIに適用することが可能なので、最初のENIに関してはポート80のトラフィックを許可し、2番目のENIにはポート22へのトラフィックを許可する設定にします。

MACアドレスベースのライセンス対応 - 商用のソフトウェアの中には、特定のMACアドレスに紐づけてライセンシングを行っている場合があります。そのような場合、ENIのMACアドレスに対してライセンスを発行することが可能です。もし、インスタンスを変更する場合や、インスタンスタイプを変更する場合(スペックを変えたいとき)でも、このENIを新しいインスタンスに付与することが可能です。

Multi-VIF アプリケーション - EC2インスタンスの上で、ロードバランサ、プロキシサーバ、NATサーバを運用した際に、あるサブネットから他のサブネットにトラフィックをパスすることが可能です。この場合、ソース/デスティネーション・チェックフラグをオフにすることで、インスタンスに自分自身にアドレスされていないトラフィックをも処理することを許可できます。ネットワーク製品やセキュリティ製品を持っているベンダーが、この複数ENIを利用することでAMIの作成を開始頂けることを期待しています!

低予算での高可用性実現 - ENIをインスタンスに付加しておき、もしインスタンスに障害があると、他のインスタンスを起動しENIをそちらに付与します。数秒でトラフィックの処理を復帰することが可能です。

こちらは、ENIを用いた際の、VPC、サブネット、ルーティングテーブル、VIFの関係を示した図です。

注意して頂きたいのは、インスタンスに二つのパブリックENIを付与することは、EC2インスタンスに二つのパブリックなIPアドレスを付与することとは、同じでは無い、ということです。ルーティングにスペシャルな設定をしない限り、あるパケットが特定のENIを通して届くことを確かめる術がありません。沢山のユーザーが、各EC2インスタンスに対して複数のIPアドレスを持たせたいという要望をお持ちであることは我々も認識しておりますので、2012年にそちらをサポートすることを計画しております。

追記: ENIそのものの作成した際の料金は、セキュリティグループやルーティングテーブルと同様にかかりません。ただし、EIP(固定IPアドレス)をENIに割りあて、そのENIがEC2インスタンスで使用されていない場合は、EIPの料金がかかります。

AWS Management Consoleもすでに、ENIをサポートしています。

"Create Network Interface” ボタンを押すことで、新しいENIを作成できます。

VPCの中でEC2インスタンスを起動する際に、追加のENIを特定することが可能です。

もちろん、下記のようにENIを既存のインスタンスに付加できます。


さて、今回の新発表いかがでしょうか?ぜひ、使ってみてフィードバック頂けると有難いです!

玉川憲 (@KenTamagawa)

コメント

トラックバック

この記事のトラックバックURL:
http://www.typepad.com/services/trackback/6a00d8341c534853ef01675f03635d970b

【AWS発表】 Virtual Private Cloudの中でネットワークインタフェースを自在にコントロールできるElastic Network Interfaceの発表を参照しているブログ:

Featured Event

2016年3 月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31