コンテナ技術を使わずに大規模運用している方はいますか?
(news.ycombinator.com)HNに上がっていた質問と回答
- Nixで、毎月ペタバイト級のデータを処理する数千CPUコアと数百種類のデータパイプラインを運用中
- WhatsAppはFacebookに買収される前、ベアメタルサーバー上でFreeBSDを使って運用。BEAMおよびアプリケーションコードを
rsyncで配布していた - Groovesharkは少数の物理サーバーだけで45M MAUを処理。nginx + PHP + MySQL + Memcached + Goで書かれたリアルタイムメッセージングサーバー
- 2010年、MySpaceの分析システムは14台のEC2インスタンスで動作し、ESPNのストリーミングサービスも数百万の同時接続をVMだけで処理。月間4,500万訪問のWebサイトも単一のEC2インスタンスで運用
→ K8s + Dockerは一般に知られているよりはるかに重い - Fly.ioは顧客にはコンテナを提供しているが、自社インフラではコンテナをあまり使っていない(顧客向けAPIサーバーなどを除く)
- Guardianは数百台のEC2インスタンスを、公式イメージから作成したEC2イメージをインストールして利用している(Dockerがデファクトになる前にすでに構築)。Dockerへの移行も検討したが、スタックがJVMベースのためDockerを使う大きな利点がなかった
- 200台あまりのサーバーをベアメタルでAnsible管理中。PXEブートでイメージ管理。カスタムArch Linuxイメージにいくつかのスクリプトを使っており、20年間この方式でうまく運用している
- Stack Overflowは2016年まではコンテナを使っていなかった
- FreeBSD JailsとRustで書かれた軽量オーケストレーションツールを使用。数百台の64コアRyzenマシンを運用しており、Amazonで運用する場合と比べて約1/6のコストで、性能もはるかに高い
3件のコメント
運用管理を楽にするためにDockerは使いますが、Kubernetesはほとんどの場合オーバースペックですよね。複数ノードを運用するとしても、大半はDocker Swarmレベルで十分カバーできると思います。
最近 HN で見た投稿です。
逆に、Kubernetes を高性能で運用するためのヒントですね。
https://medium.com/pinterest-engineering/…
「大規模」の基準はそれぞれだと思いますが、HPCはどうしてもベアメタルベースで運用していましたね..
前職では42Uサイズのラック50本分をHPCで構成して運用していましたから。
運用の問題だったんです。問題が発生したとき、もともとHW、OS、Grid Engine、User Script の中だけで探せばよかったものを
わざわざコンテナにまで範囲を広げる理由が...