クラウド ミドルウェア
- 5 分
ミドルウェアは、個別の (多くの場合は複雑で既存の) プログラムを "接着" する機能を持つソフトウェアを示す一般的な用語です。 ミドルウェアという用語は多くのコンテキストで使用されます。 たとえば、単一コンピューターのコンテキストでは、オペレーティング システム カーネルとアプリケーション プログラムの間に API の形でミドルウェアが存在し、ハードウェア デバイスなどのシステム リソースへのアクセスが管理されます。 Web アプリケーションでは、ミドルウェアが要求処理パイプラインに存在することが多く、認証や要求ルーティングなどのサービスが提供されます。
クラウド ミドルウェアとは、ユーザーがサービス要求を発行し、クラウド プロバイダーがインフラストラクチャを管理できるように、さまざまなクラウド サービスを制御および調整するソフトウェア プラットフォームを指します。 クラウド ミドルウェアは、システムの複雑さを隠し、クラウド サービスの一部であるさまざまなアプリケーション、サービス、およびデバイス間の通信を可能にする複数の抽象化レイヤーで構成されます (図 2.3)。
図 2.3: クラウド ミドルウェアの機能。
クラウド ミドルウェアの機能
クラウド ミドルウェアにはさまざまな機能が用意されており、それぞれに独自のメリットがあります。 クラウド ミドルウェア スタックの最も重要な役割は、次のとおりです。
相互運用性: クラウド ミドルウェアは、複数の異なるアプリケーションとサービスが相互に接続して通信できるようにする、ことわざの "接着" です。 具体的には、ミドルウェアによって、異なる API を持つ個別のアプリケーション サービスが相互に接続されます。 たとえば、VM をプロビジョニングするために、クラウド サービス API では、プログラムから命令を取得し、クラウド プロビジョニング サービスで認識できるサービス コールに変換することにより、クラウド プロビジョニング サービスのミドルウェアとして機能します。 これらの命令は、クラウド サービス プロバイダーの終端にあるミドルウェア スタックにさらに渡され、アクションが実行されます。たとえば、仮想マシンの作成、ディスク領域の割り当て、データベース テーブルの作成などです。
仮想化管理: クラウド ミドルウェアは、物理リソースからの仮想化リソースの構成、割り当て、作成、管理、および破棄も担当します。 たとえば、クラウド サービス プロバイダーで、クライアントから仮想マシンをプロビジョニングする要求を受け取ると、クライアントの仮想マシンの構成と割り当てを処理するハイパーバイザー レイヤーに到達するまで、複数のミドルウェア レイヤーを経由してその要求を処理します。
リソースの割り当てとスケジュール: 前述のように、クラウド ミドルウェアの重要な側面はリソースの管理です。 この役割の一環として、ミドルウェアは、パフォーマンス、分離、使用率などの複数の目標を達成するために、複数種類のリソースの割り当てとスケジュールを管理する必要があります。
負荷分散とフォールト トレランス: クラウド サービス プロバイダーは、複数のバックエンド サービスと物理インフラストラクチャでの負荷の分散を最適化するために、ミドルウェアで適切な負荷分散メカニズムを利用する必要があります。 また、ミドルウェアではバックエンド リソースと連携して、エンドツーエンドのフォールト トレランスを提供し、クライアントに対するサービスの可用性が必要な SLO を満たすようにする必要があります。
リソースの監視: ミドルウェアの重要な役割は、リソースの監視です。 監視によって、前述のように、割り当て、スケジュール、負荷分散、フォールト トレランスなどの内部ミドルウェア機能に役立つデータのソースが提供されます。 さらに、監視システムからのデータをクライアントが利用できるようにすることで、クライアントはアプリケーションやプロビジョニングされたリソースの状態をさらに可視化することができます。
ユーザー管理とセキュリティ: クラウド ミドルウェアでは、アクセス制御のサポートも提供し、個々のリソースへのアクセスを制御するさまざまな種類の資格情報を管理するための標準的なセキュリティ プラクティスを採用する必要があります。 ミドルウェアのユーザー管理システムでは、クラウド クライアントがユーザーやグループなどのエンティティを作成および破棄し、個々のユーザーやグループがアクセスできるリソースを定義するアクセス制御リスト (ACL) を構成できる機能を提供する必要があります。
ユーザー インターフェイスと API: 最後に、クラウド ミドルウェアは、クライアント向けの API のセットを使用できるようにする必要があります。 クラウド ミドルウェアでは、一般的に、プロビジョニングされたリソースにクライアントがログインして管理し、サービス リクエストを行うことができるユーザー フレンドリなインターフェイス (通常は Web インターフェイスの形式) も提供されます。
知識を確認
フィードバック
このページはお役に立ちましたか?
いいえ
このトピックについてサポートが必要ですか?
このトピックの意図を把握したり、理解を深めたりするために Ask Learn を使ってみませんか?