BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース NetflixがAWSサービス登録サービスであるEurekaをオープンソース化した

NetflixがAWSサービス登録サービスであるEurekaをオープンソース化した

原文(投稿日:2012/09/05)へのリンク

 

Netflixは自身の保有するアーキテクチャの一部をオープンソース化した。 それはEurekaと呼ばれ、AWSリージョン内でミドル層のサービスを探索するために用いられるRESTfulなサービスである。

Eurekaは2つのコンポーネントから成り立つ。Eureka Serverはサービス登録サーバーとして用いられ、Eureka ClientはJavaクライアントであり、サーバーとのやり取りを単純化し、ラウンドロビン・ロードバランサ―として振る舞い、サービスのフェイルオーバーの機能も有している。Netflixはプロダクション環境では、トラフィック、リソース使用量、エラー状況に応じた重みづけされた負荷分散を提供するEurekaとは異なるクライアントを用いている。

Netflixでは、負荷分散を除き、他の多数のオープンソースツールがEurekaを用いている。Asgardはクラウド・デプロイ管理ツールであり、ロールバックとプッシュ操作に関してEurekaを用いている。PriamはメンテナンスのためにCassandraインスタンスを取り除く際にEurekaを用いている。Evcacheはノードを認識するためにEurekaを用いている。逆に、Eurekaはコンフィグ用途にArchaiusを用いている。

ミドル層のサービスが起動すると、そのサービスは自身とEurekaを登録する。するとクライアントから認識されるようになり、30秒毎のheartbeatが送られるようになる。もし、サービスが数分間heartbeatを送信しないと、すべてのEurekaノードから登録が削除される。Amazonのリージョン毎にこのようなノードのクラスタが一つあり、ゾーン毎に少なくとも一つのEurekaノードがある。AWSリージョンはそれぞれ分離されている。

NetflixはAmazonのELBに対抗してEurekaを売り込んでいる。

AWS Elastic Load BalancerはエンドユーザーのWebトラフィックにさらされているエッジ・サービスに対する負荷分散ソリューションです。Eurekaはミドル層の負荷分散に対応しています。AWS ELBの背後にミドル層のサービスを配置すると、外界にそれらを晒すことになり、その結果AWSセキュリティグループの利便性のすべてを失う事になります。

Eurekaに対するパフォーマンスモニタリングとアラートはServoを通じて行わる。Netflixは近い将来自身のプロダクション環境の負荷分散ソリューションをオープンソース化し、EurekaとAsgardのより良い統合を行うと述べている。

Netflixは最近別のツールをオープンソース化した。Chaos MonkeyはAWSクラウドの弾力性をテストするためにサーバーを故意にオフラインにするようにする事を目的とした障害発生ツールである。

 

この記事に星をつける

おすすめ度
スタイル

BT