Platform-as-a-Service(PaaS)とは
PaaS(Platform-as-a-Service)は、アプリケーションを開発、実行、および管理するための、機能が豊富で柔軟かつコスト効率の良いクラウド・プラットフォームを提供します。
IBMのニュースレターを購読する
黒と青の背景
PaaSとは

PaaS(Platform-as-a-Service)は、お客様に機能が豊富な クラウド ・プラットフォーム(ハードウェア、ソフトウェア、インフラストラクチャー)を提供する クラウド・コンピューティング ・モデルです。そのようなプラットフォームを オンプレミスで構築して維持するのにかかるコスト、複雑性、および硬直性を排除して、アプリケーションの開発、実行、および管理を行うことができます。

 PaaS プロバイダー は、サーバー、ネットワーク、ストレージ、 オペレーティング・システム・ソフトウェア、データベース、 開発ツールのすべてを データセンターで ホストしています。 通常、お客様は一定の料金を支払うことで、指定されたユーザー数に、指定された量のリソースを提供できます。あるいは、リソースの使用量に応じて料金を支払う 「従量制」 の料金設定を選択することもできます。 どちらを選択しても、 PaaS のお客様は、自社の オンプレミス ・プラットフォームを構築して管理する場合よりも迅速かつ安価に、アプリケーションの構築、テスト、導入、実行、更新、および拡張を行うことができます。

 Amazon Web Services (AWS)、Google Cloud、 IBM  Cloud、 Microsoft Azureを含む、すべての主要な クラウド・サービス ・プロバイダーは、独自の PaaS オファリングを提供しています。 人気のあるPaaSソリューションは オープン・ソース・プロジェクト (Apache Stratos、Cloud Foundryなど)として、またはソフトウェア・ベンダー (Red Hat OpenShift や Salesforce  Herokuなど)からも利用できます。

PaaSのメリット

オンプレミス・プラットフォームと比較した、 PaaSの最も一般的なメリットとしては、 以下のものがあります。

  • 商品化までの時間の短縮。 PaaS を使用すると、アプリケーション開発プラットフォームの構築と保守のためにハードウェアとソフトウェアを購入してインストールする必要がなく、そのために 開発チーム を待たせておく必要もありません。  クラウド・サービス ・プロバイダーの PaaS を利用するだけで、リソースのプロビジョニングと開発をすぐに始められれます。

  • 多様なリソースへの手頃な価格のアクセス。 PaaS プラットフォームは通常、ほとんどの組織が実際的または手頃な価格で自ら維持できるより幅広い選択肢のアプリケーション・スタック( オペレーティング・システム、 ミドルウェア、データベース 、開発 ツールを含む)へのアクセスを提供します。 

  • 自由度が高く、少ないリスクでの実験。 PaaS では、新しい オペレーティング・システム、言語、その他のツールを、それら自体、またはその実行に必要なインフラストラクチャーに大掛かりな投資を行わなくても、試行したりテストしたりすることもできます。

  •  費用対効果に優れた 容易な拡張性。  オンプレミス ・プラットフォームを使用すると、スケーリングは常に高価であり、無駄になることが多く、時には不十分になることがあります。トラフィックの急増を予測して、 コンピュート、ストレージ、ネットワーキングの追加容量を購入する必要がありますが、その容量の多くは、トラフィックが少ない期間中は使用されません。また、予期せぬ急増に合わせて容量を増やすことはできません。 PaaS を使用すると、必要なときにいつでも追加の容量を購入して、すぐに使用を開始することができます。

  •  開発チームの柔軟性の向上。 PaaS サービスは、共有ソフトウェア 開発環境を 提供して、 開発 チームと運用チームが、 インターネットに接続された任意の場所から必要なすべてのツールにアクセスできるようにします。

  • コスト全体の削減。 PaaS は、組織が アプリケーション・プラットフォームの構築とスケーリングに関連する資本設備費を回避できるようにすることで、コストを明確に削減します。  PaaS では、ソフトウェア・ライセンス・コストを削減でき、さらにはなくせる場合もあります。 また、 PaaS がパッチ、更新、その他の管理タスクを処理するので、アプリケーション管理コスト全体を削減できます。 
PaaSの仕組み

一般的には、 PaaS ソリューション には、以下の3つのパーツがあります。

  •  仮想マシン (VM)、オペレーティング・システム・ソフトウェア、ストレージ、ネットワーキング、ファイアウォールなどのクラウド・インフラストラクチャー

  • アプリケーションの構築、導入、および管理のためのソフトウェア

  • 開発チームまたは DevOps チームがアプリケーション・ ライフサイクル全体を通してすべての作業を実行できる、グラフィック・ユーザー・インターフェース(GUI)

 PaaS は、GUIオンライン・インターフェースを通じてすべての標準 開発ツール を提供するため、開発者はどこからでもログインして、プロジェクトのコラボレーション、 新規アプリケーションのテスト、または完了した製品のロールアウトを行うことができます。 アプリケーションは、ミドルウェアを使用して PaaS の中で 設計および開発されます。 簡素化された ワークフローでは、複数の開発チームと運用チームが同時に同じプロジェクトで作業できます。

PaaS プロバイダー は、 クラウド・コンピューティング ・サービス(サーバー、 ランタイム 、仮想化など)の 大部分を管理します。 企業は PaaS の顧客としてアプリケーションとデータの管理を維持します。

PaaS、IaaS、およびSaaS

 PaaSと同様に、Infrastructure-as-a-Service(IaaS)およびSoftware-as-a-Service(SaaS) は、非常に一般的な クラウド・コンピューティング ・サービス ・モデルです。 実際、組織が3つすべてを個別に購入していない場合でも、3つすべてを使用していることもよくあります。 ここで明確にしておきます。

IaaS は、クラウド・プロバイダーによってホストされる「未加工の」 ITインフラストラクチャー(物理サーバー、 仮想マシン、ストレージ、ネットワーキング、 ファイアウォール)へのインターネット・アクセスです。 IaaS では、 オンプレミス・インフラストラクチャーの 所有、管理、および保守にかかるコストと作業が削減されます。 組織は IaaS を使用して、独自のアプリケーション・プラットフォームとアプリケーションを提供します。 

すべての PaaS オファリングには、それをホストするために必要な IaaS リソースが(これらのリソースが個別に分割されていなかったり、 IaaSと呼ばれない場合でも)、 必然的に含まれています。

SaaS は、ご使用のコンピューターにインストール されている かのように、クラウドを介して使用するアプリケーション・ソフトウェアです(場合によっては、その一部がご使用のコンピューターにインストールされています)。 SaaS を使用すると、組織は、アプリケーションを実行するためのインフラストラクチャーのセットアップの費用や、その維持(例えば、バグ修正や更新の適用、停止への対応)のための労力や人員を必要とせずに、アプリケーションを使用することができます。 Salesforce およびSlackは、一般的な SaaS オファリングの例です。ほとんどの Webアプリケーション は、 SaaSとみなされます。

すべての SaaS オファリングには、それをホストするために必要な IaaS リソースが含まれており、少なくとも、それを実行するために必要な PaaS コンポーネントが含まれています。 一部の SaaS ベンダーは、サード・パーティーが SaaS オファリングをカスタマイズできるようにする個別の PaaS も提供しています。

IaaS、PaaS、およびSaaSの詳細をお読みください。
PaaSのユースケース

統合されてすぐに使用できるプラットフォームを提供することにより、 また組織がクラウド・プロバイダーにインフラストラクチャー管理の負担を任せて、アプリケーションの構築、導入、管理に集中できるようにすることにより、PaaS は、以下のような数多くのITイニシアチブを容易にしたり、進展させることができます。

  • API の開発と管理:  PaaS にはフレームワークが組み込まれているため、アプリケーション間でデータと 機能 を共有するためのAPI (アプリケーション・プログラミング・インターフェース) をチームが開発、実行、管理、および 保護 することがより簡単になります。

  • モノのインターネット(IoT): PaaS は、 IoT アプリケーション開発 や、 IoT デバイスによって生成されたデータの リアルタイム 処理に使用される、さまざまな プログラミング言語 (Java、Python、Swiftなど)、ツール、アプリケーション環境をサポートしており、すぐに利用可能です。

  • アジャイル開発とDevOps: PaaS は、ソフトウェア・アプリケーション・ライフサイクル(統合、デリバリー、セキュリティー、テスト、およびデプロイ)を自動化するための、完全に構成された環境を提供できます。

  • クラウドへの移行とクラウドネイティブ開発: すぐに使用できるツールと統合機能により、 PaaS は既存のアプリケーションのクラウドへの移行を簡素化することができます。特に、 リプラットフォーミング (クラウドの拡張性、 ロード・バランシング 、その他の機能を活用するための変更を加えてアプリケーションをクラウドに移行)、または リファクタリング ( マイクロサービス 、コンテナ 、その他の クラウドネイティブ ・テクノロジーを使用してアプリケーションの一部またはすべてを再設計)によってそれを実現します。

  • ハイブリッドクラウド 戦略: ハイブリッドクラウド は、 パブリッククラウド・ サービス、 プライベートクラウド・ サービス、 オンプレミスの インフラストラクチャー を統合し、3つのサービス、すべてにわたってオーケストレーション、管理、およびアプリケーションの移植性を提供します。 その結果、統一された柔軟な分散コンピューティング環境が提供されます。この環境で組織は、最も適切なコンピューティング・モデルで従来型(レガシー)またはクラウドネイティブのワークロードを実行および拡張することができます。 適切なPaaSソリューションを使用すると、開発者は一度構築すれば、 ハイブリッド クラウド 環境の任意の場所に導入して管理することができます。
専用のPaaSのタイプ

多くのクラウド・ベンダー、ソフトウェア・ベンダー、ハードウェア・ベンダーは、特定のタイプのアプリケーションまたは、特定のタイプのハードウェア、ソフトウェア、またはデバイスと対話するアプリケーションを構築するための PaaS ソリューション を提供しています。

  • AIPaaS(人工知能用のPaaS)  により 、開発チームは、人工知能アプリケーションが必要とする、膨大なコンピューティング能力、ストレージ機能、ネットワーキング容量の購入、管理、保守に高額な費用をかけずに、人工知能(AI) アプリケーションを 構築 できます。 通常、AIPaaSには、事前にトレーニングを受けた 機械学習 と ディープ・ラーニング・ モデルが含まれ、開発者がそのまま使用したり、カスタマイズしたりできます。また、特定のAI機能( 音声 認識 または音声からテキストへの変換など)を既存のアプリケーション または新しいアプリケーションに統合するための既成の API も含まれまています。

  • iPaaS (integration platform as a service) は、アプリケーションを統合するための、クラウド・ホスティング・ソリューションです。 iPaaSは独自の バックエンド の統合ハードウェア、 ミドルウェア 、ソフトウェアを購入、インストール、および管理することなく、 パブリッククラウド環境 、プライベートクラウド環境 、 オンプレミス の環境全体で、データ、プロセス、およびサービスに接続する標準的な方法を組織に提供します。 ( PaaS ソリューションには、 多くの場合、API 管理など、ある程度の統合機能が含まれていますが、iPaaSはより包括的なものです。)

  • cPaaS(サービスとしての通信プラットフォーム ) は、開発者が、専門の通信ハードウェアやソフトウェアに投資することなく、音声(受信/発信の通話)、動画(ビデオ会議を含む)、メッセージング(テキストとソーシャル・メディア)の機能をアプリケーションに簡単に追加できるようにする PaaS です。 

  • mPaaS (mobile platform as a service) はモバイル・デバイスの アプリケーション開発 を簡素化する PaaS です。 mPaaSは、通常、デバイス固有の機能(携帯電話のカメラ、マイク、モーション・センサー、地理位置情報(GPS)機能)にアクセスするためにローコード(さらにシンプルなドラッグ・アンド・ドロップ)方式を提供します。
関連ソリューション
IBM Cloud Pak® for Applications

既存のアプリケーションのモダナイズと新しいアプリケーションの構築をサポートしながら、コストを削減してROIを最大限に高めます。

IBM Cloud Pak® for Applicationsの詳細はこちら
Red Hat® OpenShift® on IBM Cloud®

可用性の高いフルマネージドのクラスターをクリックするだけで展開できます。

Red Hat® OpenShift® on IBM Cloud®の詳細はこちら
参考情報 企業内のマイクロサービス(2021年)

アプリケーション開発へのマイクロサービス・アプローチは、どのような組織にも重大な課題をもたらす可能性があります。 ただし、マイクロサービスのユーザー間では、その導入の成果(開発者の生産性の向上、顧客満足度の向上、および市場投入時間の短縮など)は、労力を費やす価値があるものという認識が広まっています。

IaaS、PaaS、SaaS

最も人気の高いクラウド・コンピューティングの3つのサービス・モデルを説明して比較します。

クラウド・コンピューティングとは何か

クラウド・コンピューティングでは、インターネット経由でインフラストラクチャーに「接続」し、オンプレミスでのインストールと保守を行わずにコンピューティング・リソースを使用することができます。

次のステップ

Red Hat® OpenShift® on IBM Cloud®は、IBM Cloudのエンタープライズ規模とセキュリティーを使用して、更新、スケーリング、およびプロビジョニングを自動化し、トラフィックの予期しない急増を処理することができる、フルマネージドのOpenShiftサービスです。 お客様のチームは、さまざまなツールと機能を活用して開発とアプリケーションのモダナイゼーションをすぐに開始し、可用性の高いフルマネージド・クラスターをシングルクリックで導入できます。

Red Hat® OpenShift® on IBM Cloud®についての詳細情報