KVMの概念、アーキテクチャ、機能、一般的なツール、仮想化の展開に関する詳細な説明

KVMの概念、アーキテクチャ、機能、一般的なツール、仮想化の展開に関する詳細な説明

[[326014]]

概要

一般的に、仮想化には 2 つのタイプがあります。

ハイパーバイザーはホストのロジックに直接インストールされます。

  • ハイパーバイザーは物理マシンに直接インストールされ、複数の仮想マシンがハイパーバイザー上で実行されます。
  • ハイパーバイザーの実装は通常、特別にカスタマイズされた Linux システムです。 Xen と VMWare の ESXi はどちらもこのタイプに属します。

KVM の概念

KVM はカーネルベースの仮想マシンの略です。これは、Linux をハイパーバイザーに変換する Linux カーネル モジュールです。

これは、2008 年に Red Hat に買収された Quramnet によって開発されました。x86 (32 ビットおよび 64 ビット)、s390、Powerpc などの CPU をサポートし、Linux 2.6.20 以降では Linux カーネルにモジュールとして組み込まれています。

ただし、KVM には仮想化拡張機能をサポートする CPU が必要です。

KVM アーキテクチャ

KVM は、仮想化拡張機能 (Intel VT または AMD-V) を備えた X86 ハードウェアに基づくオープンソースの Linux ネイティブ完全仮想化ソリューションです。 KVM では、仮想マシンは通常の Linux プロセスとして実装され、標準の Linux スケジューラによってスケジュールされます。仮想マシンの各仮想 CPU は、通常の Linux プロセスとして実装されます。これにより、KMV は Linux カーネルの既存の機能を使用できるようになります。

ただし、KVM 自体はハードウェア エミュレーションを実行しないため、クライアント スペース プログラムが /dev/kvm インターフェイスを介してクライアント仮想サーバーのアドレス空間を設定し、シミュレートされた I/O を提供し、ビデオ ディスプレイをホストのディスプレイにマップし直す必要があります。現在このアプリケーションは QEMU です。

Linux 上のユーザー空間、カーネル空間、仮想マシン:

KVM アーキテクチャ

例:

  • ゲスト: CPU (vCPU)、メモリ、ドライバー (コンソール、ネットワーク カード、I/O デバイス ドライバーなど) を含むクライアント システムは、KVM によって制限された CPU モードで実行されるように配置されます。
  • KVM: カーネル空間で実行され、CPU とメモリの仮想化、およびクライアント I/O インターセプションを提供します。ゲストの I/O が KVM によってインターセプトされた後、処理のために QEMU に渡されます。
  • QEMU: ユーザー空間で実行され、ハードウェア I/O 仮想化を提供し、IOCTL /dev/kvm デバイスを介して KVM と対話する、KVM 仮想マシン用に変更された QEMU コード。

KVM の機能

KVM でサポートされる機能は次のとおりです。

  • CPUとメモリのオーバーコミットをサポート
  • 準仮想化 I/O (virtio) のサポート
  • ホットプラグをサポート(CPU、ブロックデバイス、ネットワークデバイスなど)
  • 対称型マルチプロセッシング(SMP)をサポート
  • ライブマイグレーションをサポート
  • PCIデバイスの直接割り当てとシングルルートI/O仮想化(SR-IOV)をサポート
  • カーネル同一ページマージ (KSM) をサポート
  • NUMA (非均一メモリアクセス) をサポート

KVM 共通ツール

ここでは、KVM の一般的なツールについて簡単に紹介します。

libvirt: KVM 仮想マシンを操作および管理するための仮想化 API。これは C で書かれており、Python、Ruby、Perl、PHP、Java などの言語から呼び出すことができます。 KVM、vmware、XEN、Hyper-v、LXC などのハイパーバイザーを操作できます。

Virsh: libvirt ベースのコマンドライン ツール (CLI)

Virt-Manager: libvirt をベースにした GUI ツール

virt-v2v: 仮想マシンフォーマット移行ツール

virt-*ツール: Virt-install (KVM仮想マシンを作成するためのコマンドラインツール)、Virt-viewer (仮想マシン画面に接続するためのツール) など

  1. grep -E '(vmx|svm)' /proc/cpuinfo

画面を開閉するツール)、Virt-clone(仮想マシンのクローン作成ツール)、virt-topなど。

sVirt: セキュリティツール

kvmをインストールする

1. システムが仮想化をサポートしているかどうかを確認する

  1. grep -E '(vmx|svm)' /proc/cpuinfo

2. ソフトウェアをインストールする

  1. --CentOSの最小インストールではいくつかの基本パッケージがインストールされます 
  2. yum インストール epel-release net-tools vim 解凍 zip wget ftp -y
  3. --centos6  
  4. yum groupinstall "仮想化"   「仮想化クライアント」   「仮想化プラットフォーム」   「仮想化ツール」 -y
  5. --centos7  
  6. yum インストール *qemu* *virt* *kvm* -y

3. サービスを開始する

  1. /etc/init.d/libvirtd を起動

4. kvm モジュールのロードを確認します。

  1. lsmod | grep kvm
  2. kvm_intel 53484 3
  3. kvm 316506 1 kvm_intel

5. kvmをアンインストールする

  1. yum で rpm -qa を消去します | egrep '(qemu|virt|kvm)' `
  2. rm -rf /var/lib/libvirt /etc/libvirt/

6. 接続プールを作成する

  1. 1. フォルダベースのストレージプール(ディレクトリ)を作成する
  2. mkdir -p /data/vmfs
  3. 2. ストレージプールとそのディレクトリを定義する
  4. virsh pool-define- as vmdisk --type dir --target /data/vmfs  
  5. 3. 定義済みのストレージプールを作成する
  6. (1)定義済みのストレージプールを作成する
  7. virsh プールビルド vmdisk
  8. (2)定義されたストレージプールを確認します。ストレージ プールはアクティブ化されていない場合は使用できません。
  9. virsh プールリスト--all  
  10. 4. 定義されたストレージプールをアクティブ化し、自動的に起動する
  11. virsh プール開始 vmdisk
  12. virsh プール自動起動 vmdisk
  13. ここで vmdisk ストレージ プールが作成され、このストレージ プール内に仮想ディスク ファイルを直接作成できます。
  14. 5. ストレージプールに仮想マシンストレージボリュームを作成する
  15. (1)ストレージプールに仮想マシンストレージボリュームを作成する
  16. virsh vol- create - as vmdisk oeltest03.qcow2 20G --format qcow2  
  17. (2)作成した仮想マシンストレージボリュームに基づいて仮想マシンをインストールする
  18. virt-install --name=oeltest03 --os-variant=RHEL6 \  
  19. --ram 1024 --vcpus=1 --disk パス=/data/vmfs/oeltest03.qcow2, \  
  20. フォーマット=qcow2、サイズ=20、バス=virtio --accelerate --cdrom \  
  21. /data/iso/oel63x64.iso --vnc --vncport=5910 \  
  22. --vnclisten=0.0.0.0 --ネットワーク ブリッジ=br0,モデル=virtio --noautoconsole  

<<:  Kafka と Redis のそれぞれの利点と欠点をご存知ですか?この記事はあなたの選択を最適化するのに役立ちます

>>:  Alibaba Cloud の自社開発データベース AnalyticDB が TPC-DS の世界記録を更新

推薦する

医療業界のウェブサイトのSEO最適化の第一歩:ターゲット顧客を特定する

ウェブサイトの最適化に関しては、どの業界でもうまくやることができますが、顧客層を理解し、顧客が何を求...

2018 年のクラウド コンピューティング: ハイブリッド、エッジ、AI

時が経ち、2018 年半ばには、クラウド コンピューティングに対する企業の姿勢も変化しています。 I...

銀行間引き出しの失敗が分散取引に関する考えを引き起こした

シナリオ皆さんはこんな状況に遭遇したことがあるでしょうか。たとえば、ATM でお金を引き出すとき、1...

現在の状況で医療ウェブサイトはどのようにして Baidu でのランキングを最適化できるでしょうか?

検索エンジンのアルゴリズムが更新されて以来、多くの業界のウェブサイト、特に医療ウェブサイトはさまざま...

virmach-シンプルなレビュー:フェニックスデータセンター、2Gメモリ特別価格VPS

昨日の virmach の VPS の特別価格 [virmach-$2/Win/1g メモリ/15g...

テンセント、公開アカウントを厳しく監視するWeChatアカデミーを開設

【A5ウェブマスターネットワークニュース】最近、WeChatパブリックプラットフォームのパブリックア...

コンテンツ + 外部リンク + 方法のどれが王様か

タイトルは非常に明確です。今日は主に3つの側面から私の見解をお話しします。SEOを行う人なら誰でも「...

ウェブサイト運営:ターゲットユーザーはどこにいるのか?

宝くじサイトの存在の根本的な理由と意義はユーザーです。宝くじサイトのターゲットユーザーグループを獲得...

デルテクノロジーズ、AIとエッジコンピューティング向けの次世代PowerEdgeサーバーを発表

Dell Technologies (NYSE: DELL) は本日、より強力で安全な新世代の De...

ライブストリーミングによる618の混乱の背後

今年の618は、DouyinとKuaishouの電子商取引にとって特別な意味を持つかもしれない。特に...

マーケティングとトラフィック生成にTik Tokをどのように活用すればよいでしょうか?

ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービス世界は、最初に主導権を握...

#站群サーバ# raksmart-159USD/258IPv4/Windows または Linux/米国データセンター

raksmart は、かなり前から存在しているビジネスです。彼らは米国に会社を登録しており、実際には...

個人ブログでは、ウェブサイトの位置付けとキーワードの選択も適切に行う必要がある。

最近、突然ひらめきがあり、SEOをしている友達がみんな自分のブログを持っているのを見て、自分でWor...

ウェブサイト内部リンク最適化の典型的な3つのケースの分析

皆さんご存知のとおり、著者は、毎日の記事の更新に加えて、合理的なリンク構造がウェブサイトの最適化の鍵...

おもちゃ: HVH-$3.5/Windows/768m メモリ/20g ハードディスク/3T トラフィック

安価で高トラフィックの Windows VPS 業者として、hudsonvalleyhost をおす...