ダウンタイムゼロを目指して、Facebookのネットワークを調査したいと思います。
結論から言うと、一般的な規模だと、Facebookが前使っていた「レイヤ4ロードバランサをIPVS(LVS)」を使うのもいいかなと思っています。
Building a Billion User Load Balancer | USENIX
djbdnsはqmailの開発者としても知られるDaniel Julius Bernstein(DJB)氏が開発したソフトウェアです。
djbdnsはDNSコンテンツサーバであるtinydnsとDNSリゾルバであるdnscacheの2つから構成されます。
2015-12-16
facebookの13億ユーザーを支えるロードバランサーの話 - stanaka's blog
tinydns + IPVS で Facebook規模はいける
DNS(tinydns)でロードバランシング ルータ 〜 L4 LB BGPによるECMP Hash L4 LB shiv (IPVS + python-wrapper) を利用 IPIPカプセリングしてDSR(Direct Server Return) L7 LB proxygen https://github.com/facebook/proxygen ユーザーからのhttpsを終端 POPを世界中にもっている POPにはL4 LBとL7 LBを配置している https接続は重いのでできるだけ近くで終端する必要がある httpはtcpの3way + httpの1往復 httpsだとそこにtlsの2往復が加わってさらに厳しくなる POP内のL7 LBから(別DC上の)アプリケーションサーバーへのhttpsは事前に張っておく
米Facebook、ネットワークロードバランサー「Katran」をオープンソースに | OSDN Magazine
2018年5月28日18:10
米Facebookは5月23日、レイヤー4のロードバランサーソフトウェア「Katran」をオープンソースソフトウェアとして公開したことを発表した。eXpress Data Path(XDP)などの最新技術を利用することで高性能を実現する。
Katranはパケットフォワーディングを行うフォワーディングプレーンソフトウェアで、ネットワークの負荷分散を行う。それまで利用していたロードバランサーに代わるものとして、性能、メンテナンス性、Linuxで動くこと、ほかのサービスと共存することなどを条件に開発した。