- 2年前にAWSからベアメタルへ移行して年間23万ドルを削減した経験を共有した後、コミュニティから寄せられたさまざまな質問への続編の回答をまとめたレポート。2年間の実運用データを公開し、年間120万ドル超の削減効果を達成したと明らかにした
- 実運用を通じて削減額は年間120万ドル以上へと増加し、これをAIベースのインシデント要約および自動コード修正用サーバー投資に再投資して、サービス品質の向上につなげた
- MicroK8s + Cephスタックを基盤に99.993%の可用性を維持し、二重データセンター構成によって単一障害点を排除
- 実際の運用コスト、障害対応、ハードウェア寿命、セキュリティ認証、クラウド代替サービスなどの主要論点を具体的な数値とともに説明
- 結果として安定性とコスト効率の両方が向上し、一定規模以上の常時負荷システムではベアメタルのほうがより合理的だという結論を示した
2年間の運用結果の要約
- 24か月にわたりMicroK8s + Cephスタックを本番環境で運用し、99.993%の可用性を達成
- 単一ラックの問題を解消するため、フランクフルトに2本目のラックを追加し、パリのメインラックとDWDM二重接続を構成
- ローカルNVMeとノイズ干渉の排除により、顧客レイテンシを19%短縮
- 削減した費用をベアメタルAIサーバーの購入に再投資し、OneUptimeのLLMベース通知要約および自動コード修正機能を拡張
削減効果とコスト比較
- 当初の想定削減額は年間**$230,000だったが、現在は$1.2M以上**へと増加
- これはAWS比で約76%の削減効果に相当
- グローバルな人件費基準では、エンジニア2〜5人分の年俸に相当する規模
- Savings Plans / Reserved Instancesを適用しても、依然としてベアメタルが有利
- Savings PlansはS3・Egress・Direct Connectコストには適用されない
- EKSコントロールプレーン費用$1,260/月、NATゲートウェイ$600/月なども削減不可
- 24/7常時稼働型(steady)ワークロードで、リザーブドインスタンスの効率は限定的だった
マイグレーションと運用コスト
- 初期マイグレーションは約1週間のエンジニアリング作業で完了
- IaC整備、バックアップポリシー強化など、もともと必要だった作業が大半だった
- 現在の運用コストは次のとおり:
- 直接管理: 四半期あたり約24時間(パッチ・ファームウェア更新を含む)
- Remote Hands: 24か月で2回のみ介入が必要(主にディスク問題)、平均対応時間27分
- 自動化: PXEブート(Tinkerbell)、Talosイメージ管理、Flux/Terraform構成自動化
- 運用人員はAWS時代よりむしろリリース速度が向上し、「コスト最適化会議」の負担がなくなる効果も確認された
障害対策と可用性の確保
- フランクフルトに2本目のラックを追加し、DWDM二重経路接続で単一障害点を排除
- 非同期レプリケーションベースのCephミラーリングと二重コントロールプレーンを構成
- 4G/衛星ベースの管理経路を追加し、ネットワーク障害時でもリモートアクセス可能
- MicroK8s → Talosへの移行を進行中
- AWSフェイルオーバー用バックアップクラスタは引き続き維持し、四半期ごとに障害復旧リハーサルを実施
- Anycast+BGPベースのIngressにより、DNS切り替え遅延も1分未満に改善
- 2年間99.993%の可用性を維持し、最近のAWSリージョン障害の影響も受けなかった
ハードウェアとCapEx管理
- サーバーは5年減価償却基準(2×EPYC 9654、1TB RAM、NVMe構成)で運用
- 性能が飽和したら分析クラスタへ移管し、その後新規サーバーへ置き換え
- 削減分のおかげで2年ごとに40%リフレッシュ可能になり、それでもAWS比で年間コスト削減
- Supermicroの保証延長 + 予備サーバー3台を保有
マネージドサービス代替の考え方
- OneUptimeの製品哲学はセルフホスティング可能性にあるため、同一スタックの維持が必要
- Kubernetes・Postgres・Redis・ClickHouseなどオープンスタックの一貫性を維持
- Terraform + EKS + RDS → MicroK8s + Argo Rollouts + Cephへと進化
- 依然としてクラウドも並行利用中: AWS Glacier(バックアップ)、CloudFront(エッジキャッシュ)、負荷テスト用の一時インスタンス
- クラウドは弾力性重視、ベアメタルは基本負荷重視に適している
ネットワークとセキュリティ
- 5Gbps(95th percentile)回線を2本確保し、AWS egress比で8倍安価
- DDoS防御はCloudflareの全面配置で対応
- 独立した4G/衛星ベースの管理ネットワークを確保し、障害時でもリモートアクセス可能
コンプライアンスと監査対応
- SOC 2 Type II、ISO 27001認証を維持
- コロケーションセンターのTier III認証・入退室ログ・CCTV資料を活用
- Terraform/Talos設定ログを変更履歴の証跡として活用
- 監査人はAWSコンソールのスクリーンショットより、これらのほうをより信頼できると評価した
クラウド代替案の比較
- Hetzner、OVH、Leaseweb、Equinix Metal、AWS Outpostsを比較
- Hyperscalerはegressコストが依然として高い
- 欧州ホストは大規模CephクラスタとSLA要件の充足が難しい
- Equinix MetalにはCapEx比で25〜30%のプレミアムがある
- 自社ハードウェア運用は電力密度・アップグレード自由度の面で優位
- 結果として15kWラック構成と部品再利用の可能性により、コロケーションがコスト・性能の両面で優勢
運用負担(TOIL)の測定
- 週次: カーネル/ファームウェアパッチおよびCeph点検(1時間)
- 月次: Kubernetesコントロールプレーンのカナリアアップグレード(2時間)
- 四半期: DR訓練、容量計画、通信事業者契約の点検(12時間)
- 合計で月14時間水準で、AWS時代と同程度だが、焦点は「コスト追跡」から「運用自動化」へ移った
それでもクラウドが有効なケース
- ワークロードがスパイク型または季節変動パターンの場合
- Aurora Serverless、Kinesis、Step Functionsなどマネージドサービスへの依存度が高い場合
- Kubernetes・Ceph・モニタリング・インシデント対応を自前で運用する余力がない場合
- つまり、初期段階や変動負荷の大きいビジネスでは、依然としてクラウド優位が存在する
今後の計画
- Colo予算予測用TerraformモジュールとRunbookを公開予定
- Talosベース運用経験を扱う深掘り技術ポストも準備中
- 引き続きHN・Redditのフィードバックに応答しながら、実数値中心の事例共有を続ける計画
3件のコメント
AWSからベアメタルへ移行して年間23万ドル(3億ウォン)を節約
AWSでしか提供されていないサービスをまったく使っていないのに、AWSを熱心に使う会社で働いています。
この決定には、一部のリーダーのキャリア開発という、きわめて個人的な欲が大きく作用しているのを見た、笑うに笑えない話です..
Hacker Newsのコメント
AWSは高すぎる。システム全体を完全にAWS上に載せる理由は、思っているほど多くない。昔はみんなベアメタルサーバーを自分で運用できたのに、今ではそのやり方を忘れてしまったようだ。自分たちのチームは730日以上99.993%の可用性を維持しており、最近のAWSリージョン障害も回避できた。CloudflareでDDoS対策はしているが、DNSやイングレス管理がフルタイムの仕事になるのは理解できる。それでも、いくつかのマイクロサービスとDB程度なら自前で十分運用できる。AWSは大半の企業にとって課金が過剰だ
初期のクラウドはシンプルでコストパフォーマンスの良いサービスとして始まったが、今では200を超える複雑なサービスが絡み合っている。管理しなければ料金が急増する
AWSの本当の機能は、(1) 組織の拡大と権力構造を可能にすること、(2) CapExではなくOpExとして会計処理できること、(3) 無能な人事構造を隠せることだ。以前は5〜10人でデータセンターを回せたのに、今では3000人規模のDevOps組織が生まれている
この成功の核心は24時間365日の一定負荷にある。大半の企業も実際には似たようなパターンだ
弾力性 vs ベースロードが核心だ。データ収集のようにトラフィックが爆発的に集中するときだけ、クラウドが有利になる。ほとんどの場合はベアメタルの方がよい
2010年代にはハードウェアとネットワークが遅かったが、今ではCPU性能と効率が数百倍向上している。昔は64台のサーバーが必要だったものが、今では1台で十分だ。今後は100:1の比率にまで進むだろう。こうした状況ではクラウドの利点はますます小さくなる
Amazon社員として見ると、Kubernetesの自己管理は危険すぎる。etcdのような構成要素は不安定で、自分たちでパッチまで当てなければならなかった。記事で語られているセルフホスティングはリスクが過小評価されている
多くのスタートアップは、AWSの料金が高すぎたらそもそも存在できなかっただろう。たとえばGeoIPの無料ダウンロード(リンク)のようなものは不可能だったはずだ。クラウドは遅く、ディスク遅延とCPU過密が深刻だ。月1万ドル以下なら問題ないが、それを超えるならベアメタルの方がはるかに効率的だ
私がいた会社もトラフィックは少なかったのに、AWSへ移行しようとしていた。理由は単純で、履歴書にAWSを書きたかったからだ。開発者だけでなく経営陣も同じだった。「AWSマイグレーションのリード」は経歴として見栄えが良かったからだ。結局会社は売却され、オフィスは空になった。今後は「AWSから抜け出した」が新しいキャリア上のアピールポイントになるかもしれない
結局重要なのは何をしようとしているのかだ