見出し画像

クラウドネイティブとシステムコスト

クラウドのネガティブな神話の代表が先日取り上げた「クラウドはセキュリティが不安」だとすれば、ポジティブな神話の代表は「クラウドを使えば安くなる」だと思う。僕が説明するときは「コストを下げるチャンスが生まれる」とお話ししている。そのチャンスを掴むために最初に必要になるのが、きっとクラウドネイティブ思考だ。

「そのままクラウドへ」でも運用でコストは変わる

多くのクラウドのコストは従量課金、使った分だけになる。例えば仮想マシンの場合は稼働時間が主要な課金対象だ。これを24時間×週7日の運用として、5年間の費用を試算すると、同程度の物理マシンを買うのと変わらなく見えることもある。

でももし始業時間〜就業時間の9時間+前後30分の10時間×週7日稼働に切り替えられるなら、コストは10/24になり、58%抑えられる。さらに土日も止めて10時間×週5日稼働なら70%抑えられることになる。Azureの仮想マシン(D2s v3)で試算すると、こんな感じになる。

現在オンプレミスのシステムを、そのままIaaSに移行するクラウド導入を「リフト&シフト」方式という。システムの移行ではなく、そのままの設計で新規構築する「設計のリフト&シフト」もあるかもしれない。その場合でも、運用はリフト&シフトにせず、見直すと、コストが下がる余地がある。

クラウドでの「いろんな実現方法」でコストは変わる

先日、リフト&シフトするシステムで「ファイルバックアップ先を考えたいのだけど、単純なファイルコピーでいいんだ」という相談を受けた。この実現方法を考えるのは、いい例になると思う。

まず従来方式の設計を踏襲できるのは、バックアップ先として十分なサイズのデータディスクを付けた仮想マシンを立ててしまう方式だろう。これであれば、通信方法、コピー方法の制約がほとんどなく、サードパーティーのバックアップソリューションなどもかなり自由に使える。つまり設計を「リフト&シフト」できる。これをファイルサーバー方式と呼んでおこう。

そこまでの自由度はないけどオンプレミスのスキルだけでできる方法には、Azure Storage Filesを使うという選択肢がある。これはNASのように扱え、SMBマウント、つまり共有フォルダとして扱えるから、あとばバックアップ元からファイルコピーをしてやればいい。

「オンプレミスと同じ方法」にこだわらないなら、Azure Storage Blobも選択肢に入ってくる。この場合ファイルコピーは、APIAzCopyコマンド、Azure Storage Explorerアプリケーションによる操作とどれも専用の方式にはなる。これをクラウドネイティブ方式と呼んでおく。

各方式でのAzureサービス利用費用を月額で試算してみる。主要費用項目として、ファイルサーバーでは仮想マシン(標準的なDS2v3インスタンス+OSディスク)と仮想ディスク、NAS方式ではAzure Storage Files、クラウドネイティブ方式ではAzure Storage Blobを試算対象にした(※1)。どの形態でも、この他にネットワーク帯域やストレージ操作回数に対する課金が発生するが、ここでは無視した。試算結果は、以下のようになった。

ファイルサーバー方式でないとできないこともある。例えば現在はバックアップ先でコピーされたファイルのウィルスチェックをしている、クラウド化後も必須となったら、NAS方式やクラウドネイティブ方式では作り込みが(そしてウィルスチェックサーバーとしての仮想マシンが)必要になってくる。でもその要否、つまり運用の制約もクラウド化にあわせて再検討できるなら、このケースでもコスト低減のチャンスが生まれることになる。

クラウドネイティブ思考とシステムコスト

クラウドでは多くのことに「オンプレミスそのまま」「オンプレミスに類似」「クラウドネイティブ」と複数の実現方法が出てくる。オンプレミスからリフト&シフトした設計の他に、クラウドを前提にしつつオンプレミスでも可能な両対応設計や、クラウドでしかできないクラウドネイティブ設計が候補に入り、ふたたび選択肢が複数になる。

その中でも、オンプレミスで経験・実績のある人や組織であれば、自然に出てくるのはオンプレミスそのままの設計かも知れない。オンプレミスでは、実現方法はだいたいオーソドックス、スタンダード、あるいはベストプラクティスと呼ばれる方法に収れんしているだろう。いまさら他の方法は検討しないし、試行錯誤も要らない。

ただ、クラウドでは「クラウドの作法」に従って開発するとよいとされる。例えば、The Twelve-Factor Appはその古典と言えるお作法集だし、最新の作法はAWSAzureのアーキテクチャセンターで公開されている。そこまで見直さなくてもシステムを作れるよ、というのは本当だけど、でもOSを動かすだけとかファイルコピーするだけでも、クラウドの作法にどこまで寄せるかで結構な違いが出ることは簡単な試算でも見えてきた。

必ずしもクラウドネイティブ設計が安価なわけではない。でも「オンプレミスでやったらこうかな」というイメージと同じくらい自然に「クラウドらしくやったらこうかな」というイメージが浮かぶなら、コスト削減のチャンスを試せる。先日参加したAzure Antennaの雑談中、講師がAzureのスキルより下の素地として「クラウドネイティブ思考&スキル」を挙げていたのが印象的だった。それは慣れ親しんだ「オンプレらしく」が先走ることなく、同時に自然に「クラウドらしく」をイメージできることかな、と思う。

――――
※1:より詳細には、ファイルサーバー方式ではWindows仮想マシン(DS2v3)+OSディスク(32GB Premium SSD )+データディスク(HDD)とした。NAS方式ではAzure Storage Files(汎用v2, 冗長性:LRS)とした。クラウドネイティブ方式ではAzure Storage Blob(汎用v2, 冗長性:LRS、クール)とした。いずれも東日本リージョンで、2018年8月8日時点での価格を使用した。

この記事が気に入ったらサポートをしてみませんか?