これは機械翻訳されたテキストであり、誤りを含む可能性があります!
クラウドサービスと仮想化は密接に関連しています。どちらも、すべてのハードウェアを所有せずにデータリソースを使用することです。しかし、いくつかの重要な違いがあります。
仮想化とは?
仮想化とは、1つの物理マシン上で複数の「仮想」マシンを実行することを意味します。Webサーバー、データベース、ファイルサーバーのためにそれぞれ個別の物理サーバーを持つ代わりに、これらすべてを1つのマシン上で仮想マシンとして実行できます。
これを可能にするソフトウェアは ハイパーバイザー と呼ばれます:
| タイプ | 説明 | 例 |
|---|---|---|
| タイプ1 (ベアメタル) | 通常のOSの下ではなく、ハードウェア上で直接実行されます | Proxmox, VMware ESXi |
| タイプ2 (ホスト型) | 通常のオペレーティングシステム上で実行されます | VirtualBox, VMware Workstation |
Type 1 vs. Type 2
- Type 1 は、本番環境やサーバー室で使用するものです。Proxmox はサーバーに直接実行されます。
- Type 2 は、ご自身の PC でテストするために使用するものです。VirtualBox は Windows または macOS の上に実行されます。
仮想マシン (VM) とは何ですか?
VM は、別のオペレーティングシステム内で実行される完全なオペレーティングシステムです。独自の (仮想) メモリ、CPU、およびディスクを持ちますが、物理ハードウェアは他の VM と共有します。
VM の利点:
- 分離 - 各 VM は独立しています。1 つの VM がクラッシュしても、他の VM に影響はありません。
- 柔軟性 - 同じマシン上でさまざまなオペレーティングシステムを実行できます (例: Ubuntu と Windows Server)。
- スナップショット/バックアップ - VM のスナップショットを取得し、問題が発生した場合にロールバックできます。
- リソースの活用 - 多くの RAM と CPU を持つ物理マシンは、多くの VM を実行できます。
コンテナとは?
コンテナはVMよりも軽量です。ホストマシンのオペレーティングシステムカーネルを共有しますが、隔離された環境で実行されます。
| プロパティ | VM | コンテナ |
|---|---|---|
| サイズ | 大きい (OS全体) | 小さい (アプリケーションと依存関係のみ) |
| 起動時間 | 分 | 秒 |
| 隔離 | 強い (独自のOS) | 良好、ただしOSカーネルを共有 |
| 使用例 | 完全に独自のOSが必要な場合 | 単一アプリケーションとマイクロサービス |
| 例 | Proxmox VM, VirtualBox | Docker, Podman |
Når bruker vi hva?
- VMを、完全なオペレーティングシステムが必要な場合(例:Windows ServerやLinuxサーバーで完全な制御が必要な場合)に使用します。
- アプリケーション(例:Webサーバー、データベース、Grafana)の実行のみが必要な場合は、**コンテナ**を使用します。
実際には、両方を頻繁に使用します。DockerコンテナのホストとしてVMを使用します。
クラウドサービス
クラウドサービスとは、他者がハードウェアを所有し、運用し、必要なものをインターネット経由でレンタルすることを意味します。物理サーバーを購入して維持する代わりに、クラウド内の仮想マシンを使用するために料金を支払います。
サービスモデル
クラウドサービスには、主に3つのモデルがあります。
| モデル | 完全名称 | 提供されるもの | 自身で管理するもの | 例 |
|---|---|---|---|---|
| IaaS | Infrastructure as a Service | 仮想マシン、ネットワーク、ストレージ | OS、アプリケーション、設定 | Azure VM, AWS EC2 |
| PaaS | Platform as a Service | コードを実行するための完成されたプラットフォーム | アプリケーションのみ | Azure App Service, Heroku |
| SaaS | Software as a Service | ブラウザ経由で使用する完成されたアプリケーション | 技術的なものは何も | Microsoft 365, Google Docs |
En enkel måte å huske det på
- IaaS = あなたは空の機械を借りる。すべて自分でインストールして設定します。
- PaaS = あなたは完成された環境を借りる。あなたのコードを入力するだけです。
- SaaS = あなたは完成されたアプリを借りる。ログインして使用するだけです。
配信モデル
クラウドサービスは、さまざまな方法で提供できます。
| モデル | 説明 | 例 |
|---|---|---|
| パブリッククラウド | すべての人に利用可能な共有インフラストラクチャ | Azure, AWS, Google Cloud |
| プライベートクラウド | 企業専用の専用インフラストラクチャ | 学校のサーバールームのProxmox |
| ハイブリッドクラウド | パブリックとプライベートの組み合わせ | 一部のサービスをローカルに、一部をAzureに |
VPS: 一般的なクラウドソリューション
VPS (Virtual Private Server) は、最も一般的な IaaS ソリューションの 1 つです。クラウドプロバイダーから仮想マシンをレンタルし、まるで自分自身のサーバーを持っているかのように、完全に制御できます。
典型的な用途:
- Web サーバーの実行
- VPN サービスのセットアップ
- アプリケーションのホスティング (例: Flask + データベース)
- 自分のハードウェアを危険にさらすことなく、テストを行う
一般的な VPS プロバイダー:
| プロバイダー | 利点 |
|---|---|
| Linode (Akamai) | シンプル、価格が良い、優れたガイド |
| DigitalOcean | 使いやすい、優れたドキュメント |
| Hetzner | 安価、ヨーロッパ (GDPR 互換) |
| Azure | Microsoft エコシステムとの統合 |
Kostnader i skyen
クラウドサービスには費用がかかり、注意しないとすぐに高額になる可能性があります。使用後にオフにする仮想マシンよりも、24時間365日稼働する仮想マシンのほうがコストがかかります。常に料金を確認し、コストに関するアラートを設定してください。
ローカル vs. クラウド
多くの企業が、ローカルサーバーとクラウドサービスの組み合わせを使用しています。考慮すべき要素を以下に示します。
| 要素 | ローカル (オンプレミス) | クラウド |
|---|---|---|
| コントロール | ハードウェアとデータに対する完全な制御 | ベンダーに依存する |
| コスト | 最初に大きな投資が必要 | 継続的な月額コスト |
| スケーラビリティ | 物理的なハードウェアによって制限される | 必要に応じてスケールアップおよびスケールダウンが可能 |
| メンテナンス | すべてを自分で修正する必要がある | ベンダーがハードウェアを処理する |
| プライバシー | データの保存場所を把握できる | データが他の国に保存される可能性がある |
課題 1 - 自分のマシンで VM を実行する
VirtualBox (無料) をダウンロードし、Ubuntu Desktop や Linux Mint などの Linux ディストリビューションのインストールを試してください。
- VM に割り当てる RAM と CPU はどれくらいにしますか?
- VM が実行されている間、PC が遅くなることに気づきますか?
- マシンの RAM よりも多くの RAM を VM に割り当てようとするとどうなりますか?
これにより、VM が物理マシンのリソースをどのように共有するかを理解できます。
課題 2 - Docker でコンテナを起動する
Docker がインストールされている場合 (または Docker がインストールされた VM にアクセスできる場合)、以下を実行してみてください。
docker run -d -p 8080:80 nginx # nginxコンテナをバックグラウンドで実行し、ポート8080をポート80にマッピングします
次に、ブラウザで http://localhost:8080 にアクセスしてください。これで、コンテナでWebサーバーを実行できるようになりました! Nginxで完全なVMをセットアップするのにかかった時間と比較してください。
課題3 - 既にどのようなクラウドサービスを利用していますか?
日々の生活で利用しているサービスについて考えてみましょう。
- Microsoft 365 (Word, Teams, OneDrive) は SaaS です
- GitHub Pages でウェブサイトをホストすることは PaaS です
- 学校で Proxmox 上に VM を作成する場合、それは実質的に IaaS です (ただしローカル環境のみ)
他の利用しているサービスを分類できますか?
課題 4 - データの保存場所はどこですか?
Microsoft Privacy Dashboard にアクセスして、Microsoft があなたについて保存している内容を確認してください。 また、あなたが使用しているクラウドサービスの利用規約も確認してください。
- データは世界のどこに保存されていますか?
- アカウントを削除した場合、データはどうなりますか?
- あなたは自分のデータを所有していますか、それともプロバイダーが所有していますか?
これらの質問は、GDPR およびプライバシーを考慮すると特に重要です。
要約
- 仮想化 を使うと、VMまたはコンテナとして、1つのハードウェア上で複数のサービスを実行できます。
- クラウドサービス とは、他の人がハードウェアを所有し、必要なものをレンタルすることを意味します。
- IaaS、PaaS、SaaS は、自分でどの程度の責任を負うかを説明します。
- 実際には、多くの人が ハイブリッド ソリューションを使用しており、オンプレミスとクラウドベースのサービスを組み合わせています。
- オンプレミスとクラウドの選択は、制御、コスト、スケーラビリティ、プライバシーに関するものです。