サーバレスコンピューティングを利用すれば、アプリケーション運用が楽になり、コストも抑えられるという見方がある。しかし、これは一種の“誤解”だと言える。その理由とは。
「サーバレスコンピューティング」で何ができるのかについて、正しく理解されていないことがよくある。「運用作業から解放される」「コストを抑えることができる」という認識を持ったままアプリケーションを運用すると、“思わぬトラブル”に見舞われることがある。誤解しないためには、以降で紹介するサーバレスコンピューティングの仕組みや要点を理解することが重要だ。
サーバレスコンピューティングでは、サーバの設定や管理、定期的なパッチ(修正プログラム)の適用などをクラウドベンダーに任せられる。そのため、アプリケーションをサーバレス化すれば運用が楽になり、コストも抑えられるという意見がある。
一方で、サーバレスコンピューティングを導入した企業は物理サーバや仮想サーバを使わない代わりに、さまざまなコンポーネント(部品)を用意して、それらを動かすためのプログラムを管理する必要がある。コンポーネントには、以下のようなものが含まれる。
例えば、Amazon Web Services(AWS)のサーバレスコンピューティングサービス「AWS Lambda」の関数を実行する場合、コンポーネントの数は数十から数百個にまで上ることもある。
そのため、コンポーネントの起動と管理には、「Infrastructure as Code」(IaC:コードによるインフラの構成管理)ツールや、自動化ツールの活用が欠かせない。代表的なIaCツールには以下のようなものがある。
加えて、ソースコードのデプロイ(配備)には、CI/CD(継続的インテグレーション/継続的デリバリー)パイプラインを使う。サーバベースのアプリケーションと比べて、新しいソースコードをリリースする際に、更新するコンポーネント数が多くなる傾向にあるため、C I/CDパイプラインを使って自動化をするのが望ましい。
一部の企業は、これらツールを開発環境でのみ活用している。しかし筆者は、テスト環境や本番環境でもこうした自動化の仕組みを積極的に取り入れるべきだと考える。特に複数のコンポーネントを扱うサーバレスコンピューティングでは、管理をいかに自動化するかが重要となる。
サーバレスコンピューティングでは、コストを早い段階で見積もることが重要だ。一般的にクラウドベンダーは、以下のような要素に応じて課金する。
サーバレスコンピューティングは、リソースの使用量に基づいて課金されるため、費用対効果に優れた仕組みだと言える。一方で、使用量が一定以上になると、サーバを用意する場合と比べてコストが高くなる可能性もある。特に、常に負荷の高い計算が求められるアプリケーションをサーバレスで運用する場合、コストは高くなる傾向にある。
反対に、リソース使用量の変動が激しいアプリケーションはサーバレスコンピューティングと相性が良い。高い計算処理能力を持つサーバを常にプロビジョニング(利用可能な状態にすること)しておく必要がないためだ。
運用するアプリケーションによってコスト条件は大きく異なるため、サーバを用意するか、サーバレスで運用するか、絶対的な答えは存在しない。そのため、アプリケーションの設計から実装に至る早い段階で料金を試算することが重要なのだ。
このように、サーバレスコンピューティングの仕組みは非常に複雑だ。開発チームと運用チームは、サーバレスコンピューティングに適したユースケースと、その長所と短所をしっかり理解する必要がある。
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
お知らせ
米国TechTarget Inc.とInforma Techデジタル事業が業務提携したことが発表されました。TechTargetジャパンは従来どおり、アイティメディア(株)が運営を継続します。これからも日本企業のIT選定に役立つ情報を提供してまいります。
「ECプラットフォーム」売れ筋TOP10(2025年3月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。
Androidの偽アプリを使った新たな広告詐欺、広告主にもユーザーにも大迷惑な手口とは?
疑いを持たないユーザーと広告ネットワークを巧みに悪用する、高度に組織化された広告詐...
在任期間は短くても将来は明るい? データが示すCMO職のさらなる出世の可能性
CMOの約3分の2はポジションを離れた後、社内で昇進するか、他のブランドで同等またはより...