San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
閉じる
プライバシー設定
ウェブサイト運営に必要なCookieや類似技術を使用しています。追加のCookieは貴社の同意がある場合のみ利用されます。同意は「Agree」をクリックすることでいただけます。どのデータが収集され、どのようにパートナーと共有されているかの詳細は、Cookieポリシープライバシーポリシーをご確認ください。
Cookieは、貴社デバイスの特性や、IPアドレス、閲覧履歴、位置情報、固有識別子などの特定の個人情報を取得、解析、保存するために使用されます。これらのデータは様々な目的で利用されます。分析Cookieによりパフォーマンスを評価し、オンライン体験やキャンペーンの効果向上に役立てます。パーソナライズCookieは、利用状況に応じた情報やサポートを通じ、貴社専用の体験を提供します。広告Cookieは、第三者が貴社のデータをもとにオーディエンスリストを作成し、ソーシャルメディアやネット上でのターゲット広告に使用します。貴社は各ページ下部のリンクから、いつでも同意の許可、拒否、または撤回が可能です。
ご送信ありがとうございます。内容を受け付けました。
申し訳ありません。フォーム送信時にエラーが発生しました。
/
/
DevSecOps

プラットフォーム・アズ・ア・サービス - PaaS

PaaSは、プロセッサ、ホスト、OS、通信、メモリ、データベース、分析など、アプリの作成・実行・保守に必要な全てが揃ったクラウドエコシステムです。つまり、柔軟性や複雑さと引き換えに、シンプルで迅速なアプリ開発が可能となります。

これにより、デザイナーは煩雑なインフラ固有のコーディングから解放され、ルールの策定に専念できます。この記事では、PaaSの定義、事例、仕組み、メリット・デメリットなどを解説します。それでは、解説を始めます。

著者
プラットフォーム・アズ・ア・サービス - PaaS

PaaSの概要

PaaS(Platform-as-a-Service)は、クラウド上でOSやインフラ設備を含む全体の仕組みを提供し、オンプレミスでの構築に伴う費用や不透明さ、不安定さを回避して、アプリの作成、運用、保守を単独で可能にする先進的なクラウドコンピューティングの手法です。

PaaS提供者は、コンピュータ、通信、スペース、実行環境、アプリ、アプリ作成フレームワークなど、すべてのネットワークインフラを管理しています。貴社は、利用分だけ支払う「従量課金」または、一定量の情報を一定人数向けに提供する定額料金のいずれかを選択できます。

どちらの方法でも、自社でインフラを構築・管理する場合に比べ、より迅速かつ経済的にアプリの作成、試作、公開、運用、更新、拡張が可能です。

主要なクラウドサービスプロバイダー(Google Cloud、AWS、IBM Cloud、MS Azureなど)は、それぞれ独自のPaaSソリューションを提供しています。また、一般的なPaaSはソフトウェアベンダー経由や、Cloud FoundryやApache Stratosなどのオープンソースとしても利用可能です。

PaaSを利用することで、デジタルアプリやその基盤となるネットワーク・ソフトウェア、Kubernetesなどのコンテナオーケストレーター、アプリのフレームワークなどを自社で調達・管理する手間と費用を省けます。基本的に、主要なPaaS提供者が環境全体を管理する中、貴社は自身で構築するサービスに専念できます。

PaaSの仕組み

IaaSやSaaSなどとは異なり、PaaSはアプリやサービスの開発に特化しています。こうしたプラットフォームには、通常以下の要素が含まれます。

  • クラウドサービス、スペース、ネットワーク機器、プロセッサなどが構成要素です。
  • システムには、ウィンドウ、プラットフォーム、機能試作版(SDK)、モジュール、その他のミドルウェアが含まれます。
  • コマンドラインインターフェース(CLI)、グラフィカルユーザーインターフェース(GUI)、APIインターフェースがあり、場合によっては全てが備わります。

通常、PaaSはプログラマがインターネット経由でアクセスできる安全なデジタル環境として提供されます。これにより、場所を問わずプロジェクトに取り組み、遠隔地のチームメンバーとも情報共有が可能です。アプリはPaaS上で直接開発され、完成次第すぐに公開できます。

PaaSの仕組み

Platform as a Serviceに含まれるもの

提供者やアプリによって機能は異なりますが、一般的なPaaSには技術、データ、設計ツール、コネクタ、OSが含まれます。

Infrastructure: 仮想化に関する全ての要素は、PaaS提供者が用意します。PaaSでは、ホスト、メモリ、サーバーファーム、ウェブサーバーの管理が含まれ、場合によりユーザーインターフェース(UI)やゲートウェイも提供されます。

管理・監視ツール: 利用状況の把握や従量課金、利用特性の説明、監視・分析といった企業向け知見を提供するため、これらのツールがパッケージに含まれることが一般的です。

アプリ開発・評価・設計ツール: PaaS利用者は、アプリの作成と保守に必要なツールをすべて利用できます。どこからでもブラウザでアクセスでき、デバッガ、オープンソースエディタ、コンパイラなどが提供されています。

データベース: 顧客向けの専用プログラムやデータベース管理ツールの提供に加え、PaaS提供者がデータベース自体を管理することが多いです。

ミドルウェア: OSとアプリを結ぶソフトが通常含まれており、内部でミドルウェアを開発する必要がなくなります。

OS: DigitalOceanなどの有名プロバイダーは、アプリの動作や開発に必要なOSを提供します。

PaaSとIaaSの違い

選択するカテゴリに応じ、ベンダーやネットワーク運営者が技術スタックの各部分を管理します。そのため、多くの人は、PaaSとIaaSの論争は解決済みと考え、プログラマの大半がIaaSの構成要素を組み合わせてアプリを自作しています。しかし、迅速さと効率を追求するプログラマにとっては、依然としてPaaSが有用です。

これはトレードオフを伴い、他の開発選択と同様、企業の目標に依存します。たとえば、PaaSが迅速に適切なアプリを作成できるなら、企業は最新の成長戦略への移行時の混乱を抑えられます。また、開発者の選択肢が限定されることが、厳しい規制下ではメリットとなる場合もあります。

PaaSのメリットと課題

PaaSは、インフラサービスとしてIaaSと同様の利点を提供します。さらに、ミドルウェアやアプリ作成フレームワークなどのコンポーネントからも大きな恩恵が得られます。

  • コーディング時間の短縮: ワークフロー、ドメインコントローラー、セキュリティ機構、分析などの市販ソフトウェアモジュールが既に組み込まれており、デバッグツールにより新規アプリの開発と提供が迅速化されます。
  • さまざまなチャンネルへの対応が容易: 信頼性の高いPaaSなら、クロスプラットフォーム対応のアプリを迅速かつ円滑に作成でき、PC、モバイル、ウェブなど広範囲なプラットフォーム向け開発に適しています。
  • 開発効率の向上: 専門知識を持つ人材を追加で採用することなく、PaaSの機能により独自の革新が実現できます。
  • 世界中の開発者の連携: 情報がPaaS上にあるため、各地の開発チームがインターネット経由で協力しながら作業できます。
  • アプリのライフサイクル管理: 開発、実装、削除、運用、更新と、一貫したエコシステム内でアプリの全過程をサポートするツールが揃っています。
  • 高度なツールの利用: 高価なデバッグツールやデータ分析、先進的な解析ツールも、従量課金モデルにより利用可能となります。

課題

デメリットは以下の通りです。

データセキュリティ

組織のデータは機密であるため、重要か否かに関わらず、社外に保管するとプライバシーリスクが生じる可能性があります。PaaSのセキュリティ対策が不十分だと、望ましくない結果を招く恐れがあります。

互換性

アプリがオンプレミスとクラウド上に分かれて運用される場合、両者を統合する際に複雑さが増す可能性があります。

サプライヤーロックイン

PaaS提供者固有のフレームワークに基づいてアプリが構築されるため、他社への移行が困難になる場合があります。

PaaSの種類

  • パブリックPaaS

基本となるパブリッククラウド環境において、ホスティング企業がOS、ライブラリ、ホスト、ストレージなどの主要なITコンポーネントを管理しますが、利用者はソフトウェアのインストールを自由に行えます。

パブリックPaaSの提供者は、システムや分析の構築・管理の負担をプログラマから解放する技術を提供します。そのため、パブリッククラウド上でIaaSと共存する形でPaaSが運用されますが、あらかじめ特定のクラウドサービスを選ぶ必要がある点は注意が必要です。

  • プライベートPaaS

プライバシー、法令遵守、利点を守りながら、プライベートデータ施設のコスト削減とパブリックPaaSに近い柔軟性を実現します。通常、企業内のオンサイトサーバーファームで管理されるファイアウォール内に、ハードウェアやソフトとして構築され、任意の技術でプライベートクラウド向けのPaaSが提供されます。

プライベートPaaSにより、プログラマに最適な環境が提供され、既存資産を有効活用し、高額なインターネット拡張費用を抑制できます。また、厳格な安全性、機密性、認証基準を満たしながら、アプリの保守・開発が可能です。

  • AI PaaS

AI PaaSは、AIや機械学習のソフトウェア群により、AI機能を持つアプリの開発、改善、実装を支援します。インフラの購入や維持に頼らず、AIベースのソリューション構築をサポートします。

通常、従量課金方式で必要なAIサービスを利用できる全てを含むクラウドシステムとして提供され、制御されたサブサービスやサードパーティAPIを統合して、すぐに利用可能な革新的手法を実現します。

  • ハイブリッドPaaS

パブリックPaaSの無制限な作業能力と、プライベートPaaSによるコスト削減および管理の利点を組み合わせたもので、ハイブリッドクラウド環境上で実現されます。

  • コミュニケーションPaaS(CPaaS)

バックエンドのアーキテクチャやプロトコルの構築なしに、CPaaSというクラウドプラットフォームを利用して、即時の通信機能をアプリに組み込めます。通常、電話、Skype、FaceTime、WhatsAppなど、専用アプリを通じた通信が行われます。

プログラマが自前でインフラを構築する必要はなく、標準化されたインターフェース、生産性ツール、既製ソリューション、アプリ作成フレームワークを備えた完全な技術プラットフォームが提供されます。

  • モバイルPaaS(mPaaS)

利益目的の統合開発フレームワークを用いて、モバイルアプリの構築を支援します。スマートフォンのGPS、センサー、ウェブカメラ、マイクなどに直接アクセスでき、オブジェクトベースのドラッグ&ドロップUIにより、HTML5やネイティブアプリの作成が容易になります。多数のモバイルOSにも対応しています。

  • iPaaS

iPaaSは、連携しにくい複数のワークフローやアプリを統合するための包括的なソリューションを指し、企業内の異なるプロセス間の障壁を低減することを目指しています。

  • オープンPaaS

その構造により新規アプリを迅速に展開できるPaaSで、特にハイブリッドクラウド環境での企業間コラボレーション向けに提供されます。

  • Integration platform as a service (iPaaS)

iPaaSは、連携しにくい複数のワークフローやアプリを統合するための包括的なソリューションを示す総称です。

  • Database as a service (DBaaS)

DBaaSは、顧客がデータベースを管理するために必要なすべての要素を含み、地域やクラウドベースのワークフローでAPIを用いて管理されるソリューションで、通常は月額制で提供されます。

  • Middleware as a service (MWaaS)

MWaaSを活用することで、企業はAPIを通じ、フロントエンドの問い合わせとバックエンドのストレージや計算処理を連携させ、複雑で異なるアプリ同士を結びつけることができます。

PaaSの利用ケース

  • クラウド移行とクラウドネイティブ開発

PaaSを利用すれば、新規アプリのクラウド移行が容易になり、シンプルな切替やメタプログラミングで実現できます。

  • IoT(モノのインターネット)

Java、Python、Swiftなど多様なプログラミング言語や技術、手法に対応し、IoTアプリの開発や、IoT機器が生成するデータの即時解析を支援します。

  • APIの作成と管理

確立された基盤により、情報や機能の交換を目的としたAPIの作成、運用、保守、そして守ることが、企業にとって非常に容易になります。

KubernetesとPaaSの比較

その可能性を考えると、プログラマがより自由度と制御を求めたため、PaaSはエンタープライズ向けアプリの開発には広く採用されませんでした。皮肉にも、これがKubernetesやコンテナ技術の時代を迎えるきっかけとなりました。

最近のVMware、Red Hat、パブリッククラウドキャリアによるコンテナおよびKubernetesの展開促進を背景に、プロセスと自動化の概念へと大きくシフトしている可能性があります。

これにより、管理されたKubernetes、サーバーレスコンピューティング、FaaS、CaaSなど、多様なソリューションが登場し、コンテナ群の管理負担を軽減しながらも、プログラマに必要な柔軟性と管理性を提供しています。

PaaS提供者の例

多くのPaaSプロバイダーが、クラウド上でビジネスアプリと連携を構築するためのツールと支援を提供しています。以下はその代表的な例です。

  • Mendix aPaaS
  • Wasabi Cloud Storage
  • AWS
  • Heroku container-based PaaS
  • Red Hat OpenShift
  • Oracle Cloud Platform (OCP)
  • Microsoft Azure
  • VMware (Pivotal) Cloud Foundry
  • Engine Yard Cloud PaaS
  • Apache CloudStack
  • OpenStack

PaaSの選び方と購入のコツ

PaaSソリューションを選ぶ際は、次の点を検討する必要があります。

どのような機能があるか

貴社のアプリと効果的に連携できるか確認してください。利用者が増加するにつれ、拡張性や必要な選択肢が提供されるかも重要です。

利用中のインフラや開発言語に適しているか

適合していない場合、処理速度に問題が生じる恐れがあります。

必要な期間、サービスが利用可能か

信頼性と長期利用実績があるかを確認する必要があります。

PaaSの未来

PaaSは、新たな創造力とビジネスの柔軟性を促進する次の段階を担っています。Amazon、eBay、Google、YouTubeのような企業がブラウザを通じ新たな能力を生み出す基盤と同様の革新性を備えています。

PaaSは、専門的かつ経済的なアプリの作成と配信のアプローチを提供し、複雑なハード・ソフトの維持管理から解放され、エンジニアがアプリ開発に専念できる環境を実現します。

オンライン革命の進展とともに、クラウドコンピューティング採用の理由は次第に強固になっています。まとめると、以下の要因が挙げられます。

  • デジタル技術の標準化の普及
  • モバイルデバイスとビジネス向けアプリの利用拡大
  • ウェブ技術の利用増加と受け入れ拡大
  • ブロードバンド環境の拡大と性能向上

FAQ

Open
PaaS上でどんなアプリを構築できる?
Open
Platform-as-a-Service (PaaS)とは何か?
Open
PaaSはどんな利点があるのですか?
Open
PaaSはどのくらい安全?
Open
PaaSはIaaSやSaaSなど他のクラウドサービスモデルとどう違うのか?

参考資料

最新情報を購読

更新日:
April 6, 2025
学習目標
最新情報を購読
購読
関連トピック