TT Lab
はじめる
学ぶ 学習パス コース

クラウドの基本

金で買えないものは遅延ひとつ

TT Labで続きを見る

一言でいうと

クラウドでお金では買えないものは、レイテンシただ1つです。残りはすべて買えるので、残りは計算の問題です。

なぜ数字で決めるのか

クラウドの決定は、たいてい好みの争いになります。「ソウルリージョンのほうがよいのではないか」「マネージドは高い」「とりあえずクラウドへ行こう」。根拠がないので声の大きいほうが勝ち、半年後には、なぜそう決めたのか誰も説明できません。

ところがこの4つの決定には、すべて計算できる根拠があります。

決定 何で決めるか
リージョンをどこに置くか 距離から出る物理的な限界
AZを分けるか 1msを払って何を買うのか
マネージドを使うか 人の時間を入れた比較
何を自分が守るか 自分が設定できるか

数字で書いておけば、確認も反論もでき、そこから議論が前に進みます。以下で、その4つを1つずつ求めます。

光より速くはなれない

ソウルからバージニアまでは約11,000km。光ファイバーの中で光は約200,000km/sです(真空の2/3。屈折率が1.5のため)。

편도 55ms · 왕복 110ms

これは物理的な限界です。インスタンスを大きくしても、お金を多く払っても、専用線を敷いても減らせません。実際には、経路が直線ではなく、機器を何度も通るため、180msくらいになります。

そして、これがなぜ重要かというと、1ページでAPIを5回呼び出すと、往復も5回だからです。110ms × 5 = 550msで、その間、何も起きません。

そのため、リージョンの選択は好みではなく計算です。そして、往復の回数を減らす設計(バッチリクエスト、キャッシュ、エッジ)のほうが、インスタンスを大きくするよりはるかに効果が大きいのです。

AZは同じ値段で違うものを買う

距離 往復 何に耐えるか
同じAZ 同じ建物 < 0.5ms サーバー1台
AZ間 同じ都市圏 1ms前後 建物・電源・冷却
リージョン間 大陸 数十–数百ms 都市・災害

AZを分ければ、ほぼ無料で建物の障害に耐えられます。レイテンシが1ms増えるだけです。そのため、AZの分散はほぼ常に行い、リージョンの分散は必要なときだけ行います。

責任共有: 境界を知らないと、どちらも守りません

判断基準は1つです。

自分が設定できるものは、自分の責任です。

自分の責任 クラウド事業者の責任
バケットの公開設定 ハイパーバイザーのパッチ
IAMキーの管理 物理的な入退室管理
OSのセキュリティアップデート 電源・冷却
アプリケーションの脆弱性 マネージドDBのマイナーパッチ
バックアップの設定 ハードウェアの交換

紛らわしいところが1つあります。AZの電源が落ちてインスタンスが止まったことは、事業者の責任です。しかし、そこにだけデプロイしていたことは、自分の責任です。事業者は最初から、AZが落ちることがあると言っており、複数のAZを使うよう案内しています。

事故はほとんど常に、双方が自分の仕事ではないと思った場所で起きます。

マネージドが高く見える理由

インフラ料金だけを比べるからです。

직접 운영  인프라 400$ + 사람 20시간 × 60$ = 1,600$
관리형                                        900$

人の時間が抜けると、マネージドが2倍高く見え、入れると700$安くなります。

人の時間は帳簿に載りません。すでに給料を払っているので「無料」に感じられます。しかし、その時間はたいてい夜に、事故が起きたときにかかり、その人はその間、別の仕事ができません。

損益分岐は次のように求まります。

(900 - 400) / 60 = 8.3시간

月に8時間未満なら、自前運用のほうが安くなります。バックアップの確認、パッチ、モニタリング、容量の点検、そして1回の障害対応まで、8時間でできるでしょうか。たいていはできません。

クラウドが答えではないとき

「クラウドは安い」ではなく、クラウドは柔軟なのです。柔軟性が必要なければ、その代金を払う理由もありません。

一方、負荷が不規則だったり、どれだけ必要になるかわからなかったり、早く始めなければならなかったりする場合は、クラウドのほうがほぼ常に優れています。そのとき買うのは、コンピュートではなく選択を先送りする権利です。

現場での姿