|
PaaS(Platform as a Service)とは、アプリケーションの開発、実行、管理のためのプラットフォームを顧客に提供するクラウドコンピューティングサービスを指します。これにより、アプリケーションの開発とリリースに伴うインフラストラクチャの構築と保守の複雑な作業が不要になります。これは、クラウドネイティブアプリケーションとサポートシステムが依存する中核プラットフォームです。 PaaSには通常、アプリケーションプラットフォーム、統合プラットフォーム、ビジネス分析プラットフォーム、イベントストリーミングサービス、モバイルバックエンドサービスなど、さまざまなアプリケーションインフラストラクチャ機能が含まれます。さらに、監視、管理、デプロイメント関連の機能スイートも含まれています。 開発者は開発環境の迅速性と効率性を求める一方、運用チームはパフォーマンスと安定性を重視します。そのため、両者の間でしばしば対立が生じます。PaaSは両者にとって快適な環境を実現します。サービスとして提供されるアプリケーションプラットフォームはPaaSと呼ばれ、ユーザーコードのデプロイに使用されます。Cloud Foundry、Cloudify、OpenShiftなどのオープンソース環境はすべてPaaSとして利用できます。 PaaSの採用パターンクラウドコンピューティングは、オンデマンドサービス、ネットワークアクセス、リソースプーリング、弾力性、そして測定可能なサービスという5つの基本特性を満たす必要があります。この目的を達成するために、クラウドコンピューティングは、Software as a Service (SaaS)、Platform as a Service (PaaS)、Infrastructure as a Service (IaaS)という3つのサービスモデルを提供しています。 企業が PaaS を選択する主な要因:
Simple PaaS :PaaSの世界へのゲートウェイ。アプリケーションサービスを提供し、セルフサービスカタログで公開します。また、サービスで使用されるリソースのデプロイメントと計測を自動化します。 PaaS 管理: 復元力、アプリケーション パフォーマンス、セキュリティなど、構成されたアプリケーションのサービス レベル アグリーメント (SLA) とサービス品質 (QoS) を管理します。 プログラミング PaaS : アプリケーションを外部アプリケーションまたはパブリック クラウドと統合し、自動スケーリングとクラウド バーストのシナリオを可能にします。 プロセス指向の PaaS : 継続的な配信プロセスを作成して、アプリケーションを自動的に構築、テストし、クラウド環境に配信できる DevOps プロセスを実装できます。 これらの採用パターンに加えて、次のような他の PaaS バリアントも存在し、これらは上記のパターンとある程度重複する可能性があります。 統合プラットフォーム・アズ・ア・サービス(iPaaS) :統合フローの開発、実行、管理を可能にするクラウドサービス群。統合フローは、個人内部で構築することも、複数の組織にまたがって接続することもでき、社内またはクラウドベースのプロセス、サービス、アプリケーション、データなど、あらゆるものを含めることができます。これらの組み合わせは、MuleSoft CloudHubやBizTalkなど、前述のパターンのいずれかに準拠する場合もあります。 モバイル プラットフォーム アズ ア サービス (mPaaS) : 複数のモバイル プラットフォームをサポートする、モバイル アプリケーションを開発するための統合開発環境 (IDE)。 データベース プラットフォーム アズ ア サービス (dbPaaS) : データベースの構成と管理を自動化する、オンデマンドで安全かつスケーラブルなセルフサービス データベース プラットフォームです。dbPaaS により、データベースのスケーリングがより簡単に、より信頼性高く行えます。 IoT Platform as a Service (IoTPaaS) : 異機種混在のIoTトポロジーの実装に必要な通信、セキュリティ、分析、管理のための共通インフラストラクチャを提供します。IoTソリューションを構築するための、よりシンプルで俊敏なモデルを提供します。 ビジネスプロセス管理プラットフォーム(bpmPaaS) :クラウドでホストされ、サービスとして提供される、統合済みの包括的なビジネスプロセス管理プラットフォーム。企業全体にわたるビジネスプロセスとワークフロー中心のアプリケーションの開発と実行に使用されます。例としては、Pega CloudやOpenText Cordys Cloudなどが挙げられます。 PaaS の基本的な特徴:
主要なオープンソースPaaSPaaS プラットフォームを選択する前に、企業は次の重要なポイントを考慮する必要があります。
人気のあるオープンソース PaaS を簡単に見てみましょう。 Cloud Foundryは、多様なクラウドオプション、開発者フレームワーク、アプリケーションサービスを提供します。Cloud Foundryを利用することで、アプリケーションの構築、テスト、デプロイ、スケーリングをより迅速かつ容易に行うことができます。 様々なディストリビューションがありますが、PivotalとIBMが最も人気があります。Pivotalにはアプリケーションランタイムとコンテナランタイムが含まれています。Pivotalにはアプリケーションサービスとコンテナサービスが含まれています。 OpenShift :Red HatのクラウドコンピューティングPaaS製品。アプリケーション開発者やチームがアプリケーションを構築、テスト、デプロイ、実行できるクラウドベースのアプリケーションプラットフォームです。 Cloudify :IT変革の革命を推進するために、オープンな原則に基づいて開発・設計されています。組織は、Cloudifyを活用することで、幅広いビジネスアプリケーションとネットワークサービスを設計、構築、提供できます。最新バージョンのCloudify 4.3では、セキュリティ、制御、そして真のセルフサービスにおける高度な機能強化が図られています。また、Kubernetesコンテナオーケストレーションのための全く新しいコンセプトも導入されています。 <一部表示されない場合は左右にスワイプしてください>
表1は、Cloud Foundry、Cloudify、OpenShiftの基本機能と、対応するアーキテクチャコンポーネントを示しています。上記は完全に個人的な意見に基づくものであり、サポートされる機能の実際のニーズについては、クラウドプロバイダーにご確認ください。 業界統計は、PaaSの利用が急速に増加していることを明確に示しています。PaaSを利用することで、エンタープライズアプリケーションはクラウドに依存しなくなり、パブリッククラウドでもプライベートクラウドでも、あらゆるクラウドプラットフォームで実行できるようになります。つまり、Amazon AWSで開発されたアプリケーションは、Microsoft Azure、VMware vSphere、Red Hat RHEVなどの他のプラットフォームにも簡単に移植できるということです。 PaaSは、複数の開発者が開発プロジェクトで共同作業を行う場合や、外部ユーザーが開発プロセスに協力する必要がある場合に役立ちます。そのため、PaaSは迅速なソフトウェア開発と反復の難易度を軽減するため、アジャイル開発に特に適しています。 謝辞著者は、この記事の執筆に協力してくれた、Wipro Ltd のデジタル アーキテクチャ プラクティスの Kiran MR 氏と Raju Alluri 氏に感謝します。 |