基礎知識:仮想マシンの構成とCPU仮想化

基礎知識:仮想マシンの構成とCPU仮想化

主な内容を思い出してください:

1. コンピューティング仮想化には、「1 つの仮想多数」と「多数の仮想 1 つ」が含まれます。この段階では、ハードウェアの能力が過剰であり、「1つの仮想多数」が主流になっています。

2. ベアメタル アーキテクチャは、VMWARE、CitrixXenServerv、RHEV などのリソース プールへの展開に適しており、エンタープライズでの使用に適しています。ホスト型アーキテクチャは、単一のマシンや個人での使用に適しています。

3. 完全仮想化と準仮想化にはそれぞれ長所と短所があります。 KVM は急速に発展しており、XEN は終焉の時期を迎え始めています。

実際、アプリケーションの観点から見ると、仮想マシンは X86 サーバーです。したがって、X86 サーバー上で実行できるアプリケーションは仮想マシン上でも実行できます。仮想マシンの構成は物理マシンとまったく同じで、主に CPU、メモリ、ハードディスク、入出力デバイスで構成されます。ただし、仮想マシンのこれらの「コンポーネント」は仮想的または共有的であり、それらが配置されている物理マシンによってすべて提供される可能性があります。ただし、仮想マシンの移行機能を実現するためには、仮想マシンのハードディスクをこの物理サーバーに接続された共有ストレージから提供する必要があります。

[[222329]]

CPU 仮想化技術は主に 2 つの部分に分かれています。 1 つ目は、CPU コアの実行時間をスライスし、VMM (仮想化レイヤー管理) スケジューリングを通じて CPU 実行時間スライスをさまざまな仮想マシンに割り当ててスケジュールすることです。仮想マシンが完了したりタイムアウトしたりすると、このタイムスライスの制御は次のスケジュールのために VMM に返されます。アプリケーションに割り当てられる vCPU は特定の CPU に固定されません。コマンドを実行できるのは、1 つまたは複数のタイム スライスだけです。今回はこれらの物理コアに割り当てられ、次回は他のコアに割り当てられます。タイムスライスを通じて、物理 CPU の使用率を向上させることができます。物理マシンの CPU は、通勤時には道路を走り、それ以外の時には道路に駐車している自家用車のようなものだということがわかります。 CPU がタイムスライスされてスケジュールされた後は、まるで「Uber」に加わった自家用車のように、道路を走り続け、需要があるときに乗客を乗せることで、利用率が向上します。

次に、CPU は仮想マシン上のオペレーティング システム (ゲスト OS) を「だまして」機密命令を実行させる必要があります。 CPU はリング レベルによってアクセス制御され、RING0、RING1、RING2、RING3 の 4 つのレベルに分かれています。 RING0 レイヤーは最高の権限を持ち、オペレーティング システムによって使用されます。すべてのレイヤーのデータにアクセスでき、他のドライバーは RING1 レイヤーと RING2 レイヤーに配置され、RING3 はアプリケーションを実行できます。各レイヤーは、そのレイヤー自体のデータと、それより権限の低いレイヤーのデータにのみアクセスできます。通常のアプリケーションが RING0 命令を実行しようとすると、「不正な命令」というエラー メッセージが表示されます。ただし、仮想マシンでは、RING0 はゲスト OS よりも「下位レベル」の VMM によって占有されており、RONG1 でのみ実行できます。オペレーティング システムの一部の命令は RING0 で実行する必要があり、これらの命令はセンシティブ命令と呼ばれます。 RING0 は「コントローラ」によって占有されています。浙江西部からの機密命令を実行すると、例外が発生し、システムが「停止」します。実行中に例外が必ず発生します。 「トラップされた」センシティブな命令をどのように処理するかは、CPU 仮想化で必要なことです。

この競合を解決するには、ソフトウェア エミュレーションとハードウェア サポート (Intel VT-x および AMD SVM) の 2 つの方法があります。

ソフトウェア シミュレーション方式では、これらの「トラップされた」命令がシミュレーションと実行のために VMM レイヤーに送信され、実行結果が仮想マシンのゲスト OS に返されます。実行をシミュレートする方法は多数ありますが、代表的なものはインタープリタ実行とバイナリ実行です。ソフトウェア シミュレーション方法の効率はハードウェア サポートの効率よりも低いため、リソース プール用に X86 サーバーを購入する場合は、現在の CPU ハードウェアでこの問題を解決できるため、Intel VT-x および AMD SVM ロゴ付きの 64 ビット サーバーを購入する必要があります。

Intel VT-x を例にとると、VT-x は VMX と呼ばれる新しい動作モードを提供します。このモードで動作するプロセッサには、VMX ルート操作と VMX 非ルート操作の 2 つの動作モードがあります。 VMM は VMX ルート操作を占有し、ゲスト OS は VMX 非ルート操作を使用します。オペレーティング システムの場合、VMX 非ルート操作モードは従来の x86 プロセッサと互換性があります。最大の違いは、仮想マシンがグローバル リソースにアクセスするための命令を実行すると、仮想マシンが終了 (VM-Exit) し、VMM が制御を取得してグローバル リソースにアクセスするための命令をシミュレートすることです。その後、VMM は仮想マシン エントリ操作 (VM-Entry) を通じて仮想マシンの制御を取り戻すことができます。

仮想化された CPU と物理マシンの CPU の間にはまだいくつかの違いがあります。上記の例のように、物理マシンの CPU はオペレーティング システムによって固定的に占有されます。使用されるかどうかはオペレーティング システムによって制御されます。したがって、CPU 構成が大きいほど、アプリケーションの実行への影響は少なくなります。 CPU 使用率はどんどん低下していきます。しかし、仮想 CPU の場合は異なります。より多くの CPU コアを構成する場合、基本的には対応する数のコアのタイムスライスを待機することになり、VMM スケジューラは、構成されたすべての vCPU コアが配置されるまで待機してから実行する必要があります。したがって、オーバープロビジョニングの場合、コアの数が増えるほど、待機時間が長くなります。仮想 CPU では、需要を満たしながらできるだけ少ない CPU を使用するという構成原則が採用されています。前回の記事「基礎知識 - CPU 割り当ての原則」もご覧ください。

もう一つ注意すべき点は、仮想マシンのクロックが実際のクロックよりも遅くなることです。コンピュータの時間は CPU のメイン周波数によって計算されますが、仮想マシンの時間も vCPU によって計算され、vCPU が他の仮想マシンにスケジュールされることが多く、「時間が盗まれ」、仮想マシン上の時間が遅くなります。したがって、仮想マシン *** は時刻同期サーバーに接続します。

<<:  マイクロソフトと21Vianetは長期にわたり協力関係を深め、中国クラウドに注力し、クラウドサービスをリードし続けている。

>>:  【ビッグデータ】運用保守事例20選、完全分散型Hadoopクラスターの完璧な展開!

推薦する

1ドルのアプリがApple App Storeに登場

今朝早くから、中国のAppleのApp Storeに1元アプリやゲームが多数登場した。情報筋によると...

百度の歴代Kステーションについての私の推測

みなさんこんにちは。私はHongtu Internetです。端午節の休暇以来、当社のウェブサイトのい...

cloudcone - VPS の時間単位の支払いをサポート、月額 1.99 ドル / KVM / 512m メモリ / 3T トラフィック / ロサンゼルス

昨日の Cloudcone の新しいプロモーション メール: 3 つの特別版 KVM 仮想 VPS、...

「私は特殊部隊の兵士2: 国家の刃」のマーケティングハイライトを共有します

最近、江蘇衛星テレビのドラマ「私は特殊部隊の兵士2:国家の刃」が大人気で、筆者も最近このドラマを追い...

便利な Kubernetes Helm チャート ツール 16 選

[51CTO.com クイック翻訳] Helm は Kubernetes の非常に実用的なコンポーネ...

ウェブサイトの SEO プロセスにおける 4 つの危険な時期に対処する方法

通常のウェブサイト最適化方法でも、不正なウェブサイト最適化方法でも、新しいサイトを立ち上げた後のレビ...

地方支局で良い仕事をする方法:いくつかの支局モデルの分析

各地に支社を設立することに戸惑い、何をすべきか分からないことはありませんか?特にメインサイトと支社サ...

ユーザーエクスペリエンスを向上させるウェブサイト最適化の3つのポイント

周知のとおり、ウェブサイトを最適化するプロセスではユーザーエクスペリエンスが重要であり、Baidu ...

小紅書ブランドマーケティングの発展を1つの記事で理解する

私たちがよく知っている「リトル・レッド・ブック」が変化しつつあることに気づいているかどうかはわかりま...

コメント: 検索は死んでいない、データの不滅性が検索エンジンを次のステップに進める

2年前、私は検索エンジンについての記事を書きました。インターネットにページをアップロードすると、世界...

#シンガポール高防御VPS# OVH: OpenStack/$5/1gメモリ/30g SSD/1Tトラフィック

フランスのIDC業界の大手OVHは、シンガポールデータセンター(シンガポールにあるOVHの自社コンピ...

Baidu Shareは次のBaidu Knowsになるかもしれない

Baidu を注意深く観察すると、最近、Google+1 や Facebook の「いいね!」に似た...

ウェブサイト分析: Google の新しいナビゲーション バーはどんどん大きくなり、使いにくくなっています

RWW ウェブマスターの Jared Smith が Google の新しいナビゲーション バーのス...

(長期アップデート)「China Mobile」ユーザーに適した海外VPSの一括推奨

中国移動はアジアでの直接接続にのみ適していますが、ヨーロッパと米国での速度が遅すぎます。国内のモバイ...

PacificRack のブラックフライデー「ハイブリッドサーバー」の簡単なレビュー

Pacificrack は、ブラックフライデー向けにハイブリッド サーバーの 70% オフ プロモー...