【IoT用語集】クラウドネイティブとは?

【IoT用語集】クラウドネイティブとは? – 記事

はじめに

クラウドネイティブ(英語:cloud native)とは、クラウドサービスの上で利用・運用することを前提として開発されたシステムやサービスのことを言います。

Microsoft AzureやAmazon AWSのように、サーバ・ネットワークから開発環境までクラウドサービスにより提供されることが可能になっています。そこで、コスト面や開発工数の面から効率的なITサービスを導入するには、クラウドネイティブによることでエンタープライズユーザーの人々にとって自然とメリットが出やすいと言えます。

また、大手のクラウドサービスをベースにしていることから、一般にはサービスの品質・可用性などの信頼性が高いと考えられます。

さらに、最近では、エンタープライズユーザーが数種類のクラウドサービスを組み合わせて便利に利用することが多いため、クラウドサービスの選択は幅が広くなりつつあります。

その一方、クラウドサービスから受ける制約をどうやって克服するかも課題となっており、クラウドネイティブによりクラウド化を進めるか、他の手法によるかも重要な論点となっているところです。

クラウドネイティブのメリット

クラウドネイティブのアプリケーションには、次のようなメリットがあります。

開発コスト・メンテナンスコストが低い 
クラウドサービスは、開発プラットフォームを提供しています。また、開発工程の効率性にも配慮したアーキテクチャを持っており、たいていの場合、アーキテクチャは再利用が可能です。新しい開発は、本質的な部分に関して言うとスケールアップかダウンに過ぎないとさえ考えられます。

そして、ボリュームを増やす意味での開発コストがかかったとしても、新規の調達コストはないと言ってよいでしょう。メンテナンスについても、クラウドサービス、とくにプラットフォーム側で主要なメンテナンスを行うために、コストを下げることが可能になります。

クラウドサービスの高可用性をベースに開発可能 
クラウドネイティブのアプリケーションは、オンプレミスの場合と比べてより障害に強く、かつ高負荷の処理を前提とした開発が可能です。従来では考えられない規模の企業が、高可用性を要する高品質のWebサービスを提供することも可能になります。

アップデート・アップグレードに強い 
クラウドサービスそのものがアップデート・アップグレードされることから、ソフトウエアライフサイクルの管理が容易です。

セキュリティにかけるコストもコントロールしやすい 
クラウドネイティブアプリケーションは、アーキテクチャの共通性が相互に高いといえます。セキュリティ関連の検証試験も共通部分について予測可能です。また、クラウドサービスのセキュリティに依存している性質があるといった理由でセキュリティに関連するコストを押し下げることも可能です。

クラウドネイティブの限界

ビッグデータ活用やBCP、最新のネットワークインフラの利用といったエンタープライズユーザーの共通の課題を考えると、基幹システムの運用に一切クラウドの利用がないということは、まず考えにくい状況となっています。

しかし、いざ基幹システムをクラウドに移行する場合の手法として、次にあげるようなクラウドネイティブの限界のためクラウドイネーブルドと使い分けるのが一般的です。

レガシーIT資産の再利用がしにくい 
長年蓄積されたデータ・メインフレームといったIT資産の活用を考えるときは、技術的連続性が少ないクラウドネイティブのアプリケーションによりにくい面があります。データフォーマットや言語の点で技術的連続性が高く、オンプレミス向けに設計されているソフトウエアアーキテクチャをベースにクラウドイネーブルドの設計を行うほうが効率的です。

クラウドサービスは一種類によりにくい 
大手ベンダーのクラウドサービスを数種類ハイブリッドで利用するケースが増えています。各社のクラウドサービスの利点を享受することができますが、コストの面でのクラウドのメリットが減殺されます。ハイブリッドクラウドの利用のほか、カスタマイズしたプライベートクラウドによることにより、何種類ものクラウドサービスを導入することを避ける動きもあります。

クラウドサービスのパフォーマンスに依存している 
クラウドサービスに期待されたパフォーマンスが実現されていない場合、コストメリットがあったとしても、そのままクラウドネイティブ開発によることには問題が大きいです。

クラウドサービスそのものを変更することが難しい時でも異なる設計思想のアプリケーションを用いたクラウドイネーブルドを選択することでパフォーマンスの問題が解決できるようなケースも見られます。

まとめ

以上に見たように、エンタープライズITにおいて、そのメリットからクラウドネイティブの価値は大きいといえます。一方で、クラウドネイティブという手法の持つ限界から適切な場面でクラウドネイティブによることが必要です。

クラウドイネーブルドとも比較し、社内のITサービス全体の中で、変えるもの・変えなくてよいものの見極めたうえ、クラウドネイティブアプリケーション開発を行うことが重要といえるでしょう。

関連記事はこちら:
【日本海外事例集】BitPesaとSBI Remitが日本とアフリカ間のブロックチェーン支払いのために提携
日立エンジニアリング、LevyxとのOEMライセンス契約を締結