第12章クラウドネイティブアプリケーション開発
Cloud Deployment Modelsクラウドの配置モデル
Cloud deployment models dictate how cloud services are implemented, hosted, and accessed by end users. They revolve around the principle of virtualizing server computing power into segmented, software-driven applications offering processing, storage, and networking capabilities. The following sections elaborate on various cloud deployment models, including private, community, public, and hybrid clouds.
英語のヒント
クラウドの配置モデルは、クラウドサービスをどのように実装し、ホストし、最終利用者がアクセスするかを定める。その中心にあるのは、サーバーの計算能力を仮想化し、処理、記憶領域、ネットワークの機能を提供する、分割されたソフトウェア駆動のアプリケーションにするという原則である。以下では、プライベート、コミュニティ、パブリック、ハイブリッドなどの配置モデルを詳しく説明する。
Public Cloud Model
パブリッククラウドモデル
A public cloud is a cloud deployment model where resources are remotely accessible by anyone offered through subscriptions or on-demand pricing plans. A public cloud deployment model is shown in Figure 12.25. This approach allows for the flexibility of provisioning resources on-demand and pay only for what is consumed. Public cloud resources are owned and managed by the cloud service provider. This type of cloud hosting allows cloud service providers to provide various services to a variety of customers. A cloud service provider’s resources are provisioned for any type of customer from individual users to major industry groups.
英語のヒント
パブリッククラウドは、定額契約または必要に応じた料金プランを通じて提供される資源に、誰でも遠隔からアクセスできる配置モデルである。図12.25に示す。この手法では、必要に応じて資源を用意し、消費した分だけ支払う柔軟性がある。パブリッククラウドの資源は、クラウド事業者が所有し、管理する。この種のクラウドホスティングでは、事業者が幅広い顧客に、さまざまなサービスを提供できる。個人利用者から大規模な企業集団まで、あらゆる種類の顧客のために資源が用意される。

attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license · CC BY 4.0 · Source出典
Figure 12.25 A public cloud deployment model consists of resources accessible to all users. (attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license)
図12.25 パブリッククラウドの配置モデルは、すべての利用者がアクセスできる資源からなる。(出典:Copyright Rice University, OpenStax、CC BY 4.0ライセンス)
Private Cloud Model
プライベートクラウドモデル
A private cloud is a cloud deployment model where resources are dedicated to one customer such as a single organization for internal use where cloud resources are accessed and managed by an organization. A private cloud deployment model is shown in Figure 12.26. It is not open to the public. Private clouds are isolated and contain the proper security to restrict access to them. They are protected with robust firewalls and a supervised secure environment. Private clouds could run on-premises but can also run on vendor-owned data centers remotely. Private cloud resources are managed either internally by the organization or by a third party. Figure 12.26 shows two private clouds. A cloud service provider’s secured resources are provisioned and dedicated to an organization.
英語のヒント

attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license · CC BY 4.0 · Source出典
Figure 12.26 A private cloud deployment model consists of dedicated resources with restricted access. (attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license)
図12.26 プライベートクラウドの配置モデルは、アクセスが制限された専用の資源からなる。(出典:Copyright Rice University, OpenStax、CC BY 4.0ライセンス)
Community Cloud Model
コミュニティクラウドモデル
A community cloud is a cloud deployment model where resources are only accessible by a selected group of organizations. The resources of a community cloud are mutually shared between the organizations that belong to a particular community or industry. Examples of community clouds are clouds for banks or governments. The community or industry members generally share similar privacy, performance, and security concerns. A community cloud consists of an infrastructure that integrates the services of different clouds to meet the specific needs of the community or industry. Community cloud resources are managed either by members of the community or industry or by a third party. Figure 12.27 outlines a community cloud deployment model and shows two community clouds. A cloud service provider’s resources are provisioned and dedicated to a community of organizations or government entities.
英語のヒント
コミュニティクラウドは、選ばれた組織の集団だけが資源にアクセスできる配置モデルである。特定のコミュニティや産業に属する組織が、資源を共同で使う。銀行や政府機関向けのクラウドが、その例である。参加者は、通常、プライバシー、性能、セキュリティについて似た懸念を持つ。コミュニティクラウドの基盤は、コミュニティや産業の具体的な必要を満たすため、異なるクラウドのサービスを統合する。資源は、参加組織や業界の構成員、または第三者が管理する。図12.27は、この配置モデルの概要として、2つのコミュニティクラウドを示している。クラウド事業者の資源が用意され、組織や政府機関のコミュニティに専用化される。

attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license · CC BY 4.0 · Source出典
Figure 12.27 A community cloud deployment model consists of dedicated resources limiting access to a community. (attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license)
図12.27 コミュニティクラウドの配置モデルは、アクセスを特定のコミュニティへ限定した専用資源からなる。(出典:Copyright Rice University, OpenStax、CC BY 4.0ライセンス)
Hybrid Cloud Model
ハイブリッドクラウドモデル
A hybrid cloud is a distributed computing architecture with two or more environments consisting of private and public clouds and on-premises infrastructure. A hybrid cloud deployment model is shown in Figure 12.28. This model provides greater flexibility compared to other cloud deployment models because it provides orchestration and management across all environments that lets customers run workloads wherever they need them increasing workload portability across all cloud environments.
英語のヒント
ハイブリッドクラウドは、プライベートクラウド、パブリッククラウド、オンプレミスの基盤からなる、2つ以上の環境を使う分散コンピューティングのアーキテクチャである。図12.28に、この配置モデルを示す。すべての環境にまたがるオーケストレーションと管理を提供し、顧客が必要な場所でワークロードを実行できるようにするため、ほかの配置モデルより柔軟性が高い。また、すべてのクラウド環境間でワークロードの移植性が高まる。

attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license · CC BY 4.0 · Source出典
Figure 12.28 A hybrid cloud deployment model combines two or more cloud deployment models. (attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license)
図12.28 ハイブリッドクラウドの配置モデルは、2つ以上のクラウド配置モデルを組み合わせる。(出典:Copyright Rice University, OpenStax、CC BY 4.0ライセンス)
Cloud Deployment Technology Optionsクラウドの配置技術の選択肢
Cloud deployment technologies offered by cloud service providers include bare metal servers, virtual machines (VMs), and containers. The following sections elaborate on each of these deployment technologies. Another deployment technology that is available, however not widely used, are unikernels. Unikernels are also discussed in detail in the following sections. IaaS and PaaS are two service models through which these deployment technologies are provided. There are additional service models through which deployment technologies are provided: Containers as a Service (CaaS) (i.e., a version of IaaS where applications are deployed, managed, and scaled using a container-based virtualization); and serverless computing, also known as Function as a Service (FaaS). Figure 12.29 shows how PaaS and FaaS may leverage CaaS or IaaS for deployment. CaaS is positioned between IaaS and PaaS in the cloud computing stack. CaaS leverages the virtualization of compute, storage, and network resources from the underlying IaaS infrastructure. PaaS allows users to focus on application dependencies and runtime environments while having less control of the operating system and limited portability. CaaS, on the other hand, returns this control as it provides increased portability by facilitating operating system virtualization and customization in containerized deployments.
英語のヒント
クラウド事業者が提供する配置技術には、ベアメタルサーバー、仮想マシン(VM)、コンテナーがある。以下で、それぞれを詳しく説明する。広く使われてはいないが、ユニカーネルという配置技術もあり、これについても詳しく扱う。これらの技術を提供するサービスモデルの2つが、IaaSとPaaSである。ほかにも、Containers as a Service(CaaS)と、Function as a Service(FaaS)とも呼ばれるサーバーレスコンピューティングがある。CaaSはIaaSの一種であり、コンテナーを基にした仮想化を使って、アプリケーションを配置・管理・拡張する。図12.29は、PaaSとFaaSが配置にCaaSやIaaSを利用する方法を示している。CaaSは、クラウドコンピューティングのスタックで、IaaSとPaaSの間に位置する。基盤となるIaaSの計算、記憶領域、ネットワーク資源の仮想化を活用する。PaaSでは、利用者はアプリケーションの依存関係と実行環境に集中できるが、OSの制御が少なく、移植性も限られる。一方CaaSは、コンテナー配置でOSの仮想化と調整を容易にし、移植性を高めることで、その制御を利用者へ戻す。

attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license · CC BY 4.0 · Source出典
Figure 12.29 Cloud deployment technology options are available when IaaS is leveraged by other service models, including FaaS, PaaS, and CaaS. (attribution: Copyright Rice University, OpenStax, under CC BY 4.0 license)
図12.29 IaaSをFaaS、PaaS、CaaSなどのほかのサービスモデルが活用することで、さまざまなクラウド配置技術の選択肢が得られる。(出典:Copyright Rice University, OpenStax、CC BY 4.0ライセンス)