AWSがアプリのリクエストがロードバランサを通っても元のクライアント情報が失われないサービスを開始

Amazon Web Services(AWS)に、ユーザにアプリケーションのトラフィック(ビジター数)が分かるためのサービスが加わった。ただしアプリケーションがAWSのElastic Load Balancer(ELB)を通っていて、IPアドレスが分かる場合のみだが。

それはAWSに、いわゆる”Proxy Protocol Version 1“のサポートが加わったということだ。このプロトコルを使うと、ELBのようなプロキシのトランシット間にもTCP上で接続情報が失われずに得られる。

ELBはリクエストをAWSのクラスタ群に分散するが、そのとき通常、クライアントの接続情報、IPアドレスやポート番号などは失われる。つまりロードバランサーは一種のプロキシとして働き、アプリケーションに対して、自分があたかもクライアントのように振る舞う。だから本来のクライアントのIPアドレスはサーバに届かない。しかしこのProxy Protocolを使うと、そのIPアドレスを知ることができる。そしてデベロッパはそれを利用して通常のアクセス分析ができるし、また、IPアドレスをホワイトリスとブラックリストに仕分けることもできる。

Proxy Protocolのアドバンテージは、TCP上のどんなプロトコル層でも使えることだ。つまりそれは、その接続が担っている高レベルのプロトコルにはいっさい関知しない。だからHTTP以外のトラフィックをサーブするときでも、使える。またHTTPSのリクエストを送るときも、ロードバランサーの上でSSL接続を断たずにすむ。

この新しいサービスの詳細はAWSのブログ記事にある。

このニュースは、AWSが絶えざる機能拡大マシンであることを、改めて認識させる。AWSほどの頻度で機能が増えていくクラウドサービスは、ほかにない。Windows AzureやGoogleも善戦しているが、もっと機能拡張のペースを上げて独自のニッチを作り上げないと、成功しないだろう。Azureならエンタプライズへの特化。Googleは独自のコンピューティングサービスと分析能力が差別化要因だ。

[原文へ]
(翻訳:iwatani(a.k.a. hiwa))