
クラウドネイティブ|知る×学ぶ
アプリケーション開発環境のクラウド化が求められる理由とは
オンプレミス環境下でデータを管理しなければならない業界においては、オンプレミス環境下でAWS互換のクラウドネイティブ・アプリケーションを開発できるハイブリッドクラウド環境が必要となります。
カナダと北米とイスラエルに拠点があり、ハイブリッドクラウド向けのソフトウェアテクノロジーを開発するStratoscale社の創業者でもあるAriel Maislos CEOが、ハイブリッドクラウドに対応したクラウドネイティブ・アプリケーションの開発環境について講演しました。
より近代的なアプリケーションを開発するために、クラウドネイティブ・アプリケーションが求められる中で、オンプレミス環境下でそれをどう実現していくのか、そのカギとなるアーキテクチャをMaislos CEOが語ります。

Stratoscale 社
FOUNDER & CEO
Ariel Maislos 氏
▼ 目次
・クラウドネイティブ・アプリケーションが求められる背景
・アプリケーション開発環境のハイブリッドクラウド化が求められる理由
・クラウドネイティブ・アプリケーションの開発をオンプレミスで実現する方法
・クラウドネイティブ・アプリケーションを構成する要素とプラットフォーム
1. クラウドネイティブ・アプリケーション開発が求められる背景
クラウドネイティブ・アプリケーション開発への需要は、スタートアップ企業のような新規ビジネスだけではなく、金融機関のサービスにも求められるようになっています。
お客さまの資産を取り扱う銀行システムは、極めて高いセキュリティや安定性が求められている一方で、FinTechという言葉に象徴されるように、近年、金融と先端テクノロジーとの融合も求められています。
例えば、金融機関の顧客は銀行支店の窓口に出向くのではなく、スマートフォンを使ってオンラインで様々な取引を実施したい、などの需要に応えて金融機関の競争力を維持するためには、クラウドネイティブ・アプリケーションの開発が必須となっています。
しかし、優秀な新卒人材の多くは、金融機関ではなくGoogleやFacebookのような企業で働きたがっており、深刻な人材不足につながっているとMaislos CEOは現状を分析します。
その結果、金融機関ではハイブリッドクラウドの環境の中で、どのようにクラウドネイティブ・アプリケーションを開発するかが、重要な課題となっています。
図1は、AWSとオンプレミス環境を比較したスライドです。このように、企業にはまったく異なる二つのIT世界が存在しているのです。

図 1. 企業に存在する2つの異なるITの世界
2. アプリケーション開発環境のハイブリッドクラウド化が求められる理由
金融機関や医療関係など、オンプレミス環境下に重要なデータを保存して管理しなければならない業界がある一方で、モダンで先進的なアプリケーションを開発するためには、クラウドネイティブ・アプリケーションの環境が求められています。
この大きなギャップを埋めるためには、ハイブリッドクラウドに対応したクラウドネイティブ・アプリケーションの開発環境がカギを握るのです。

図 2. ハイブリッドクラウドが重要とされる理由
アプリケーションの開発環境のハイブリッドクラウド化が求められる理由を、3つの代表的な事例を踏まえて解説します。
2-1. 法的な規制によるデータ運用の事例
多くの国では個人情報や金融関連に官公庁のデータなどを国外で保存することを禁止しています。
こうした法的な制度に対応するためには、パブリッククラウドとオンプレミス環境下で管理するデータを分ける必要があります。

図 3. 法的な規制によるデータ運用の事例
2-2. コスト管理の事例
開発者が自由にアマゾン ウェブ サービス(AWS)のアカウントにアクセスできると、まるで月までロケットが飛ぶような感覚で料金が加算され、利用料金が高くなります。
クラウドには、新しいサービスを短期間で提供できるメリットがあるので、その利用は重要です。
そこで、プライベートクラウドを組み合わせてAWSのコストを1/3に削減するためにハイブリッドクラウドを活用する事例が増えています。

図 4. コスト管理の事例
3-3. アプリケーションのモダナイゼーションの事例
顧客向けのサービスだけではなく「社内のユーザーからもITはもっと早くビジネスのニーズに対応するサービスを提供するべきだ」という意見が増えています。
こうした声に応えていくためには、ハイブリッドクラウド戦略が必要になります。

図 5. アプリケーションのモダナイゼーションの事例
モダナイゼーションの概要解説については、以下よりご覧いただけます。
3. クラウドネイティブ・アプリケーションの開発をオンプレミスで実現する方法
Stratoscaleは一般的にAWSのオンプレミス版とも言われていますが、オンプレミス環境に構築することができるAWSと互換性のあるクラウドネイティブ・アプリケーション開発プラットフォームです。

図 6. オンプレミス環境とAWS環境のギャップを埋めるStratoscale
Stratoscaleをオンプレミス環境に導入することで、Amazon S3(Amazon Simple Storage Service :AWS上で利用できるストレージサービス)と互換性のあるオブジェクトストレージや、Amazon EFS(Amazon Elastic File System :AWS上で利用できる共有ファイルストレージ)互換のファイルサーバーに、Amazon EBS(Amazon Elastic Block Store:AWS上で利用できるブロックストレージ)互換のブロックストレージも実装できます。
Amazon EC2(Amazon Elastic Compute Cloud)に互換性のあるサービスには仮想化やインスタンス管理にGPUへの対応含まれます。機械学習のためにNVIDIAを活用できます。もちろん、AWS同様に7つのデータベースもサポートしています。

図 7. Stratoscaleが提供するAWS互換機能
Stratoscaleは、AWS互換プラットフォームとして、AWS APIやDevOpsツールを提供し、オンプレミス環境でクラウドネイティブ・アプリケーションの開発を実現します。Stratoscaleは、フルマネージドサービスを提供し、ポータブルで拡張性に優れ、AWSと比較して70%のTCO削減を可能にします。
クラウドネイティブ・アプリケーションは、例えば軍が所有するジープの中、または工場・支店・モバイルなど、さまざまな利用環境でのニーズが増えています。
こうした需要において、ポータビリティに優れクラウド環境がなくてもクラウドネイティブ・アプリケーションの開発を実現するStratoscaleは、ハイブリッドクラウドにおいてもセキュアなコントロールと運用を実現する優れたプラットフォームです。

図 8. Stratoscaleが提供するサービスカタログ
4. クラウドネイティブ・アプリケーション開発環境の一例
図9は、クラウドネイティブ・アプリケーションを開発するテンプレートの一例です。たくさんの部品に分かれているサービスをコラボレーションすることで、一つの形を構成する開発方法が、クラウドネイティブ・アプリケーションになっています。

図 9. クラウドネイティブ・アプリケーションを開発するテンプレートの一例
実際の開発では、次の図のようにAWS Web ServicesにJava、dockerやpythonなどの開発言語を使い、クラウドネイティブ・アプリケーションを開発していきます。

図 10. クラウドネイティブ・アプリケーションに使用される開発言語
なぜ、このような開発方法が人気を集めているのでしょうか。
その理由は「開発時間を大幅に短縮できるから」だと、Maislos CEOは指摘します。
3~5人の開発者がチームを編成してファイルサーバーやデータベースを管理しなければならないとすれば、AWSのようなクラウドサービスを利用することで、より少ない人材でも対応できるのです。
さいごに
海外トレンドを把握することが、一歩先の国内ITトレンドを予測するのに役立つかもしれません。数年後にはそのトレンドが国内にも到来する可能性があるからです。
クラウドネイティブに関わる情報については、以下にまとめています。是非こちらもご覧ください。