手当たり次第に書くんだ

飽きっぽいのは本能

クラウドとは何か – 場所ではなく運用モデルと責任分界で考える

クラウド設計と費用判断の関連記事

クラウドとは何か。

IT の世界では、クラウドという言葉が当たり前に使われています。AWS、Azure、Google Cloud、SaaS、クラウド移行、クラウドネイティブ。今では、クラウドを使っていること自体は珍しくありません。

しかし、クラウドという言葉だけでは、設計を説明したことにはなりません。

クラウドは、単にインターネット越しにサーバーやサービスを使うことではありません。それだけなら、昔からあるホスティングやレンタルサーバーでも成立します。

クラウドの本質は、場所ではなく、リソースをどう抽象化し、どう払い出し、どう計測し、誰がどこまで責任を持ち、どのように運用するかにあります。

この記事の結論

クラウドとは、どこにサーバーがあるかを示す言葉ではありません。リソースを標準化し、API やセルフサービスで払い出し、利用量を計測し、責任分界を定義する運用モデルです。AWS を使えば自動的にクラウド設計になるわけではなく、オンプレミスでも運用モデル次第でクラウド的な設計は成立します。

クラウドは場所の名前ではない

クラウドを「他人のサーバー」と説明することがあります。

この説明は、入口としては分かりやすいです。自社のサーバールームではなく、クラウド事業者のデータセンターにある基盤を使う。物理的には、たしかにそのような構図があります。

ただし、それだけではクラウドの本質を捉えられません。

単に他人のサーバーを使うだけなら、従来型のホスティングやレンタルサーバーも同じです。クラウドらしさは、サーバーの所有者ではなく、利用者がリソースをどのように扱えるかにあります。

必要な時にリソースを払い出す。不要になれば削除する。API や IaC で構成を再現する。利用量を計測し、費用や性能に反映する。標準化された部品としてネットワーク、コンピュート、ストレージ、DB を扱う。

この運用モデルこそがクラウドの中核です。

NIST の定義で見るクラウドの特徴

クラウドを考える時には、NIST SP 800-145 の整理が今でも基準として使いやすいです。

NIST はクラウドを、ネットワーク経由で共有された構成可能なコンピューティングリソースを、必要に応じて迅速に提供・解放できるモデルとして整理しています。

ここで重要なのは、クラウドが単にネットワーク越しであることではありません。次の性質を持つ運用モデルであることです。

性質意味設計上の見方
オンデマンドセルフサービス利用者が必要なリソースを自分で払い出せる申請待ちではなく、標準化された手段で提供できるか
広範なネットワークアクセス標準的なネットワーク経由で利用できる場所ではなく接続性と到達性で扱えるか
リソースプーリング物理リソースを共有し、論理的に分離して提供する個別機器ではなくプールとして設計できるか
迅速な伸縮性必要に応じてリソースを増減できる増減が運用手順ではなく設計前提になっているか
計測可能なサービス利用量を測定し、管理や課金に反映できるコスト、性能、利用量を可視化できるか

この観点で見ると、AWS だからクラウドなのではありません。

オンデマンド、抽象化、リソースプール、伸縮性、計測、責任分界を備えた運用モデルだから、クラウドとして扱えるわけです。

クラウドの本質は運用モデルにある

クラウドの本質を設計寄りに分解すると、次の要素になります。

要素内容雑に扱った時の問題
抽象化物理サーバー、ストレージ、ネットワークをリソースとして扱う裏側の制約を忘れ、性能や障害範囲を誤解する
標準化インスタンス、ネットワーク、DB などを決まった型で提供する個別最適が増え、運用が再現できなくなる
自動化API、IaC、テンプレートで構成を再現する手作業が増え、変更管理と復旧が属人化する
セルフサービス利用者が必要なリソースを払い出せる自由度だけが増え、責任や費用が拡散する
計測利用量、コスト、性能、責任範囲を見える形にする使っているのに説明できない状態になる
責任分界事業者と利用者の責任範囲を分ける障害時や監査時に誰が見る問題か曖昧になる

この要素がそろっているほど、クラウド的です。

逆に、クラウドサービス上で動いていても、すべて手作業で構築し、標準化も自動化もなく、責任分界も曖昧なら、クラウドを使っているだけでクラウド設計にはなっていません。

IaaS / PaaS / SaaS は責任分界の違いで見る

クラウドを理解する時に、IaaS / PaaS / SaaS の違いは避けて通れません。

ただし、これは単なるサービス分類ではありません。どこまでをサービス側へ任せ、どこからを利用者側が設計・運用するのかという責任分界の違いです。

分類利用者が主に見るもの責任分界の特徴
IaaSVM、ネットワーク、ストレージOS 以上の設計・運用責任が利用者側に残りやすい
PaaS実行環境、DB、アプリケーション基盤ミドルウェア運用の一部をサービス側へ寄せられる
SaaS完成された業務アプリケーション設定、権限、データ管理、業務運用が利用者側の中心になる

IaaS は自由度が高い代わりに、OS、ミドルウェア、パッチ、監視、バックアップ、セキュリティ設定を利用者側で設計する範囲が広くなります。

PaaS は、その一部をサービス側へ寄せます。アプリケーション実行環境やデータベース運用の負担は減りますが、設計責任が消えるわけではありません。

SaaS は完成されたアプリケーションを利用する形です。インフラやアプリケーション基盤の運用負荷は小さくなりますが、権限設計、データ管理、業務ルール、監査、解約時のデータ移行は利用者側に残ります。

つまり、IaaS / PaaS / SaaS は便利さの順番ではありません。責任の置き場所が違うだけです。

責任共有モデルを曖昧にしない

クラウドでは、責任共有モデルが重要です。

クラウド事業者が基盤を提供していても、利用者側の設定、認証、ネットワーク、データ、アプリケーション、業務運用の責任がなくなるわけではありません。

マネージドサービスを使えば、運用作業は減ります。しかし、どの設定で使うのか、どのデータを置くのか、誰に権限を与えるのか、どの障害を想定するのかは、利用者側の判断として残ります。

クラウド障害を考える時も同じです。クラウド事業者側の障害なのか、利用者側の設計・設定・監視・冗長化の問題なのかを分ける必要があります。

クラウドを使うとは、責任をすべて外へ出すことではありません。責任の置き場所を変えることです。

クラウド設計で確認すること

クラウドを使う時は、リソースの払い出し方法、標準化の範囲、IaC の有無、利用量とコストの計測、権限設計、データ管理、障害時の責任分界、撤退条件まで確認する必要があります。

クラウド化は OPEX 化であり、責任の再配置である

クラウド移行では、CAPEX を OPEX 化できるという説明がよく使われます。

物理サーバーやデータセンター設備を自社で購入せず、クラウドサービスとして利用するなら、初期投資を抑え、利用量に応じた費用へ寄せやすくなります。

ただし、OPEX 化はコスト最適化そのものではありません。

クラウドは、使えば使うほど費用が発生します。払い出しが簡単になるほど、停止条件、所有者、タグ、予算、監視、削除ルールが必要になります。

クラウド化とは、サーバーの置き場所を変えることではありません。資産、費用、運用責任、障害対応、セキュリティ、コスト説明責任の配置を変えることです。

その意味で、クラウド設計は技術設計であると同時に、組織設計でもあります。

オンプレミスでもクラウド的な設計はできる

クラウドの本質を運用モデルとして捉えるなら、オンプレミスでもクラウド的な設計は可能です。

仮想化基盤、Kubernetes、IaC、自動化、標準化、セルフサービス化、監視、構成管理を組み合わせれば、オンプレミスでもクラウドに近い運用モデルは作れます。

たとえば、自宅のマイクロデータセンター のような環境でも、VM、ネットワーク、ストレージ、Kubernetes、監視、構成管理を一体で設計すれば、単なる自宅サーバーとは違う性質を持ちます。

重要なのは、場所が自宅かデータセンターか AWS かではありません。

その基盤が、どれだけ標準化され、自動化され、再現可能で、計測可能で、責任分界が明確かです。

クラウドを使っていることとクラウド設計は違う

クラウドを使っていることと、クラウド設計ができていることは違います。

AWS 上に手作業でサーバーを作り、設定を人の記憶で管理し、費用の所有者も分からず、障害時の責任分界も曖昧であれば、それはクラウド上に置かれた従来型運用です。

逆に、オンプレミスであっても、リソースが標準化され、API や IaC で管理され、利用量が計測され、責任分界と変更管理が明確なら、クラウド的な設計に近づきます。

クラウドという言葉に安心してはいけません。

見るべきなのは、どの制約を隠蔽し、どの責任を移し、どの判断を自動化し、どのコストを見える化しているのかです。

まとめ

クラウドとは、単にインターネット越しにサーバーやサービスを使うことではありません。

クラウドの本質は、リソースを抽象化し、標準化し、自動化し、セルフサービスで払い出し、利用量を計測し、責任分界を明確にする運用モデルにあります。

AWS、Azure、Google Cloud を使えば、それだけでクラウド設計になるわけではありません。IaaS / PaaS / SaaS のどれを使うかによって、責任の置き場所は変わりますが、利用者側の設計責任は残ります。

クラウド化は、OPEX 化や初期投資削減だけの話でもありません。資産、費用、責任、制約、運用モデルをどう再配置するかという設計判断です。

だからこそ、クラウドを語る時は「どこにあるか」ではなく、「どのように提供し、誰が何を持ち、どう運用するのか」を見る必要があります。

参考
書籍
参考書籍

Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂 4 版

AWS を題材に、クラウド上のネットワーク、サーバー、責任範囲を具体的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。

Amazon で見る

このリンクは Amazon アソシエイトリンクです。

関連する記事
クラウドとは何か – 場所ではなく運用モデルと責任分界で考える

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る