19. KVM による仮想化入門:Ubuntu Server 向け初心者ガイド

KVM による仮想化 は、単一の物理サーバー上で複数の仮想マシン(VM)を実行することで、リソース利用率とスケーラビリティを最大化できるようにする、革新的なテクノロジーです。最も人気のあるオープンソースの仮想化ソリューションの 1 つとして、KVM(Kernel-based Virtual Machine)は、堅牢なパフォーマンス、柔軟性、Linux 環境との統合を提供します。

このガイドでは、Ubuntu Server 22.04 に KVM をセットアップして構成する方法を説明し、インフラストラクチャのニーズに合わせて仮想化の力を活用するためのステップバイステップのアプローチを提供します。テスト環境の構築でも、本番ワークロードの展開でも、KVM は運用を効率的に合理化するためのツールを提供します。


以前の記事:

01. Ubuntu Server 入門 – SysOSX: AI & Cloud

02. 初めての Ubuntu Server のセットアップ方法:初心者向けガイド – SysOSX: AI & Cloud

03.Ubuntu Server のための Linux コマンドラインをマスターする – SysOSX: AI & Cloud

04. Ubuntu Server でのユーザーと権限の管理:包括的ガイド – SysOSX: AI & Cloud

05. Ubuntu Server のネットワーク基礎:包括的ガイド – SysOSX: AI & Cloud

06. Ubuntu Server へのソフトウェアのインストールと管理:完全ガイド – SysOSX: AI & Cloud

07.Ubuntu Server のパッチ適用と更新:包括的ガイド – SysOSX: AI & Cloud

08. Ubuntu Server のセキュリティ確保:強化と保護のための実践的な手順 – SysOSX: AI & Cloud

09. Ubuntu サーバーの監査とログ記録

10. Ubuntu Server のシステム監視ツール:包括的ガイド – SysOSX: AI & Cloud

11. Ubuntu サーバーの集中ログ管理:必読ガイド – SysOSX: AI & Cloud

12. Ubuntu Server の監査とコンプライアンス:ベストプラクティス – SysOSX: AI & Cloud

13.ホスティングと Web アプリケーションのための Ubuntu Server のセットアップ:究極のガイド – SysOSX: AI & Cloud

14. 1 台の Ubuntu Server で複数の Web サイトをホストする:役立つヒント – SysOSX: AI & Cloud

15. Ubuntu Server のストレージとディスクの管理:シンプルガイド – SysOSX: AI & Cloud

16. Ubuntu Server でのファイル共有サービスのセットアップ:完全ガイド – SysOSX: AI & Cloud

17. Ubuntu での安全なデータベースサーバーのセットアップ:MySQL 対 MariaDB – SysOSX: AI & Cloud

18. Ubuntu Server での LVM の構成と使用方法:包括的ガイド – SysOSX: AI & Cloud



KVM とは?

KVM(Kernel-based Virtual Machine)は、Linux サーバーをハイパーバイザーに変え、仮想マシンの作成と管理を可能にする、Linux ベースの仮想化テクノロジーです。Linux カーネルに直接組み込まれており、優れたパフォーマンスと Linux ツールとの統合を提供します。

KVM の主な機能:

  • オープンソース:無料で、広くサポートされています。
  • 高パフォーマンス:ハードウェア仮想化拡張機能(Intel VT-x または AMD-V)を活用し、ネイティブに近いパフォーマンスを実現します。
  • 柔軟性:Linux、Windows、macOS を含む、さまざまなゲストオペレーティングシステムをサポートします。
  • スケーラビリティ:小規模からエンタープライズレベルの展開まで、幅広く最適です。

Ubuntu Server 22.04 に KVM をセットアップするための前提条件

開始する前に、システムが次の要件を満たしていることを確認します:

ハードウェア要件:

  • 64 ビットプロセッサ:CPU は仮想化(Intel VT-x または AMD-V)をサポートしている必要があります。
  • 最小 RAM:複数の VM をホストするには、少なくとも 4 GB の RAM が推奨されます。

ソフトウェア要件:

  • Ubuntu Server 22.04:新規インストール済みであることを確認します。
  • Sudo または Root アクセス:KVM のインストールと構成に必要です。

仮想化サポートの確認:

次のコマンドを実行して、CPU が仮想化をサポートしているかどうかを確認します:

egrep -c '(vmx|svm)' /proc/cpuinfo

出力が 0 より大きければ、CPU は仮想化をサポートしています。


Ubuntu Server 22.04 に KVM をセットアップするためのステップバイステップガイド

ステップ 1:システムの更新

KVM をインストールする前に、システムパッケージを更新します:

sudo apt update && sudo apt upgrade -y

ステップ 2:KVM と必要なツールのインストール

 libvirt と virt-managerなどの必須ツールと一緒に KVM をインストールします:

sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager

ステップ 3:KVM インストールの確認

インストール後、 libvirtd サービスがアクティブであることを確認します:

sudo systemctl status libvirtd

サービスが実行されていることが確認できるはずです。さらに、次のコマンドで KVM のサポートを確認します:

kvm-ok

出力に「KVM acceleration can be used」が含まれていれば、セットアップは完了です。

ステップ 4:ユーザーを KVM グループに追加する

root としてコマンドを実行しないように、ユーザーを kvm と libvirt グループに追加します:

sudo usermod -aG kvm $USER
sudo usermod -aG libvirt $USER

変更を有効にするために、一度ログアウトしてから再度ログインします。


KVM で最初の仮想マシンを作成する

オプション 1: virt-manager (GUI)を使用する

Ubuntu Server に GUI アクセスがある場合は、 virt-manager を使用して、VM を簡単に作成および管理できます:

  1.  virt-managerを起動します: virt-manager
  2.  File > New Virtual Machineをクリックします。
  3. ウィザードに従って VM を構成します:
    • オペレーティングシステム用の ISO イメージを選択します。
    • CPU と RAM のリソースを割り当てます。
    • VM のストレージを設定します。

オプション 2: virt-install (コマンドライン)を使用する

GUI のないサーバーの場合は、 virt-install コマンドを使用します。Ubuntu を実行する VM を作成する例を次に示します:

sudo virt-install \
--name ubuntu-vm \
--ram 2048 \
--vcpus 2 \
--disk path=/var/lib/libvirt/images/ubuntu-vm.img,size=20 \
--os-type linux \
--os-variant ubuntu22.04 \
--network bridge=virbr0 \
--graphics none \
--cdrom /path/to/ubuntu.iso

 /path/to/ubuntu.iso を、Ubuntu 22.04 ISO ファイルの実際のパスに置き換えます。


KVM による仮想マシンの管理

VM を作成したら、 virsh(libvirt の強力なコマンドラインインターフェース)を使用して管理できます。

VM の起動:

virsh start ubuntu-vm

すべての VM の一覧表示:

virsh list --all

VM の停止:

virsh shutdown ubuntu-vm

VM の削除:

virsh undefine ubuntu-vm --remove-all-storage

高度な管理については、 libvirt ドキュメントを参照してください。


仮想マシンのネットワーク設定

KVM は 仮想ブリッジ を使用して VM をネットワークに接続します。既定では、 virbr0 ブリッジがインストール時に作成され、NAT ベースのネットワークを提供します。ローカルネットワークに直接アクセスするには、ブリッジネットワークを構成できます:

ブリッジネットワークの構成:

  •  net-tools パッケージをインストールします:
 sudo apt install net-tools
  • ネットワーク設定ファイルを編集します:
sudo nano /etc/network/interfaces
  • ブリッジ用に次の設定を追加します( eth0 を、ご利用のネットワークインターフェースに置き換えます):
auto br0
iface br0 inet dhcp
    bridge_ports eth0
    bridge_stp off
    bridge_fd 0
    bridge_maxwait 0

  • ネットワークサービスを再起動します: sudo systemctl restart networking

仮想化に KVM を使用するメリット

  1. コスト効率:KVM は無料でオープンソースであり、ライセンス料がかかりません。
  2. 高パフォーマンス:ハードウェアアクセラレーションにより、ネイティブに近いパフォーマンスを提供します。
  3. 柔軟性:幅広いゲストオペレーティングシステムをサポートします。
  4. スケーラビリティ:複数の VM に対応できるよう、リソースを簡単にスケールできます。
  5. 統合:libvirt、QEMU、virt-manager などの Linux ツールとシームレスに連携します。

結論

KVM は、Linux 環境向けの堅牢で効率的な仮想化ソリューションであり、開発者、システム管理者、企業にとって理想的です。このガイドに従うことで、 Ubuntu Server 22.04 上で仮想マシンを簡単にセットアップおよび管理できます。テスト環境の作成、アプリケーションのホスティング、プライベートクラウドの構築のいずれの場合でも、KVM は必要な柔軟性とパフォーマンスを提供します。

詳細については、 公式 KVM ドキュメントを参照してください。

次は、 Ubuntu Server に Docker をインストールする方法 を学び、最初のコンテナ化アプリを実行しましょう!🐳🐧

コメントを残す