Google、LVSベースのロードバランス技術「Seesaw」をオープンソースに

 Google(米Alphabet傘下)は1月29日、Linux Virtual Server(LVS)ベースのロードバランス技術「Seesaw v2」を発表した。Go言語を利用して実装されており、すでに同社内で運用を開始しているという。

 SeesawはGoogle社内でインフラを管理するサイト信頼性担当エンジニアが、社内向けのサービスで拡張性と信頼性の向上に向けて負荷分散機能が必要となったために開発したという。ユニキャストとエニーキャストの両方のVIP(Virtual IPアドレス)のサポート、NATとダイレクトルーティング(DSR、DR)を利用した負荷分散、バックエンドに対するヘルスチェックが実行可能であることという3つの要求があり、オープンソースを含む既存技術ではこれらのニーズを満たすものがなかったために開発に至ったという。

 負荷分散プラットフォームであるLinux Virtual Server(LVS)がネットワークレベルでの機能を満たすことからこれを採用し、Googleが開発するプログラムング言語Goを利用して並列性やプロセス間通信を実装した。モジュラー型のマルチプロセスアーキテクチャを実装し、未知の状態ではプロセスを中止・終了することでフェイルオーバーと自己修正機能を加えたという。

 すでに社内では既存のプラットフォームをSeesaw v2で置き換えており、サービスの可用性改善と管理作業の削減を実現しているという。

 SeesawはGitHubより入手できる。ライセンスはApache License 2.0。

Seesaw
https://github.com/google/seesaw