KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します

内容:
(1.1)仮想化入門
(1.2)KVMの導入およびインストール
(1.3)guestosは、仮想マシンのインストールと管理
の展開VMを自動化する(1.4)を使用するスクリプト
(1.5)例:HA環境は急速に建てを


(1.1)仮想化の説明
(1.1.1)初期の頃、いない仮想化環境では、私たちのサービスは、物理マシン上で直接実行されています。実際に、私たちはお互いを乱すことなく、例えば、我々は、サーバー上のMySQLサービスを実行して、各サービスは、独自のオペレーティング環境、独自のCPUメモリおよびその他のリソースを持っていることを期待し、SQL文のエラーとして、IOリソースの大規模な消費が行われています私たちは、さまざまなサービス間のリソースが互いに分離されている願っていますので、同じ物理マシン上の他のサービスへのリードは、実行することはできません。
私たちの伝統的な仮想化の下でサーバアーキテクチャでは、これは、ケース底は、OSの層が続く物理的なハードウェアは、オペレーティングシステムの層であり、その後、さらに上のサーバーを実行しているの伝統的なモデルであるアプリサービスアプリケーション層は、あるされていません私たちは他のサービスを持っている場合は、あなたが他のサービスの単一の物理マシンの展開をカスタマイズする必要があり、問題は私たちが持って来るだけCPUリソースの消費の約10%、例えば、物理マシンごとに、毎日の消費を見つけるという問題が生じますハードウェアリソースの大きな無駄。KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
、この問題を軽減する資源利用の効率を向上させるために、我々は一般的に仮想化技術、仮想化技術のアーキテクチャを使用して開始し、一番下には、ハードウェア層である、層までは、オペレーティングシステムのOS層であり、その後、さらに私たちが実行するもので各仮想マシンは、我々はguestosアーキテクチャのため、guestosを呼び出して、各仮想マシンは、ハードウェア層、オペレーティングシステムのOS層であり、このような三層アプリケーションのサービスアプリケーション層として。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
ユーザがringe3レベル、すなわちアプリケーションの命令、及び一般に敏感ringe0指示コマンドのために指示する場合、一般的なCPUの命令実行時間にringe3、ringe2、ringe1、ringe0 4レベルに分割され、ユーザがされますそのような指示を出すことができない、唯一のカーネルはCPUにringe0レベルの指示が発行されます。、今、私たちは、仮想マシンのレベルにジャンプするだけでなく、仮想ハードウェア層のうち、仮想マシン内で、ringe0レベルの命令を送信する場合がありますが、仮想マシンは、ユーザー空間で働いているので、唯一ringe3レベルの命令を送信することができますまた、仮想マシンにつながったこのような状況は正常に動作しないことができるので、この場合には、仮想マシンがringe0命令を送信することができない、命令のringe0レベルを送信することは不可能です。だから、初期のCPUの動作は、仮想化につながっているので、可能ではありません。1998年にVMware社は、技術BT新技術を開発した、BT技術指導は、バイナリ変換技術は、仮想マシンに返される結果の実施後の物理マシンを実行し、実行するための物理CPUに仮想マシンを変換しますですこれは、仮想マシンのCPU ringe0レベルの命令は、ユーザ空間で実行することができます。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
とき(1.1.2)私たちは、クエリ情報にcpuコマンドcpuinfoプロセッサ/#grepの名は/ procを使用するには、一貫性のあるCPUのCPU情報は、仮想マシンと物理マシンの情報で見つけることができます。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.1.3)は、いわゆる仮想マシンは、具体的guestosを作成し、VMware Workstationのように、それが仮想化製品である仮想化製品のいくつかの種類の一例であり、各仮想マシンを管理するための管理システムであり、バーチャル仮想マシンは、基本的なアプリケーションです。三つのカテゴリーに完全仮想化、準仮想化とハードウェア支援による仮想化に分割仮想化の種類に従って分類されます。
この仮想化製品の代表的な(1.1.4)ハードウェアがアナログであるため、実行時の性能が比較的低いので、ハードウェアの最初の完全仮想化タイプは、シミュレートされているが、VMwareおよび非常に性能のためにVirtualBoxは、主に低い、ないプロモーションに適した、同社はVMware社のVMwareツールのツールセットを提供しますが、仮想マシン(図1-5)のパフォーマンスを向上させることができました。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.1.5)準仮想化の第二のタイプ、実際のハードウェアへのアクセスは、当社のハードウェア層、オペレーティングシステムのOS層の一部に、他の部分は、VMM /ハイパーバイザー層であり、我々はハードウェアリソースと100Gのハードディスクドライブと仮定します16Gメモリ、および何の仮想マシン、この時間は、ビューのOS層の観点からは存在しない、オペレーティングシステムは、排他的100Gおよび16Gハードディスクメモリリソースである、そして我々は、仮想マシンでVMM /ハイパーバイザ層、上の2台の仮想マシンを作成します私たちは、OS層を見てみましょう。この時間がありますので、当社のハードウェアリソースへの直接アクセス、4Gのメモリと20Gのハードディスクドライブを使用して、各仮想マシンは、その後、物理的なハードウェアは本当に仮想マシンに関連するリソースを出てくる割り当てますオペレーティングシステムは現在のメモリと60Gハードディスクドライブの8Gのみを使用することができます。ドメイン0と呼ばれる私たちのOS層、ドメインUと呼ばれる各仮想マシンの一つ、仮想マシンがハードウェアリソースに直接アクセスであるため、パフォーマンスが非常に高いので、そしてguestosは、ハードウェア層にアクセスする必要があるため、その各guestosコアは修正されなければならなかったので、guestosオプションは、そのようなので、上のLinux、Unixやオープンソースとして、あるカーネル。また、Windowsのシステムのように、それは、オープンソースのオペレーティングシステムではないため、パフォーマンスが極性であるので、カーネルは、変更することはできません、それは一般的にguestosカーネルであるWindowsオペレーティングシステムでは、準仮想化ドライバにインストールされますされた下側のパフォーマンスの問題を軽減することができます。準仮想化は、Xenのタイプの代表である
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
、CPUの仮想化機能(1.1.6)ハードウェア支援による仮想化の第三のタイプなので、私たちは、仮想マシンが物理マシンのCPUの仮想化機能をオンにする必要がありますインストールする必要がある場合。ハードウェア支援による仮想化は、上記の3つのカテゴリは、仮想化の種類に応じて行われる、KVMで表されます。
(1.1.7)仮想化の使用の範囲に応じては、2つのカテゴリに主に分類される:個人的な使用のための1仮想化製品; 2エンタープライズクラスの仮想化製品。
これは個々の仮想化製品は主に含まれます:VMware Workstationの、VirtualBoxのを。主に最下層のためのフレームワークの仮想化製品のこのタイプは、ハードウェア層は、OSのオペレーティングシステムレイヤアップ層は、層が1 guestosであるし、さらにVMM /ハイパーバイザは、その後、床の上に下るであり、我々通常、私たちが実行される仮想マシン上で、関連する管理と制御を行うためにVMware Workstationの、この層のVMM /ハイパーバイザー属しVirtualBoxは、(図1-7)を見ました。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.1.8)エンタープライズクラスの仮想化製品は、主に、次のとおりのvSphere、Citrix社、RHEVを。仮想フレームのこのタイプは、底部生成物は、ハードウェア層であるアップ層は、仮想マシン層の層の上にさらにその後VMM /ハイパーバイザを設置して、ステーションです。そこには、オペレーティングシステムの層ではなく、むしろハードウェアに直接実装するので、従来の実装方法は、CD-ROM、Uディスク、又はネットワークを介してインストールされている、VMM /ハイパーバイザ層です。VMMはESXIあるので、仮想マシン上で実行してくださいあなたは、同社のvSphereのVMwareの仮想化製品を使用している場合は、VMM /ハイパーバイザー各ベンダーの製品の層が異なるためには、VMwareであり、あなたがそうシトリックス社の仮想化製品を使用している場合あなたがそうRHEV VMM IS RHEVH、仮想マシン上で実行するRed Hatの仮想化製品を使用している場合、KVM(図1-8)は、VMMは、Xen仮想マシン上でそれを実行し、XenServerのです。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.1.9)のVMwareワークステーション同等のGUIクライアントとVMM /ハイパーバイザ一体化は、vSphereのために、それがvCenterを作成して、VMwareのvCenterServerは、仮想化管理のための基礎を築いた、スケーラブルで拡張可能なプラットフォームを提供します基盤。vCenter VMware vSphereのは、中央で大幅に強化するITは、仮想環境の制御を管理者に、他の管理プラットフォームに比べて環境を管理することができます。


(1.2)KVM的介绍及安装
KVM的全称是Kernel-based Virtual Machine,它属于vmm/hypervisor,是虚拟机的管理器,属于内核的模块。KVM是一个开源的系统虚拟化模块,自Linux2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源代码很少。目前KVM已经成为学术界的主流vmm之一。
(1.2.1)因为KVM属于内核模块,是内核空间的组成部分,用户是无法直接管理的,如果用户需要控制KVM那么就必须要使用对应的工具,早期使用的工具是qemu,它是一种模拟器(emulation),纯粹是模拟出来的,和物理硬件没有任何的关联性,qemu是用户空间的一个管理工具,结合KVM使用,随着后来的发展出现了qemu-kvm这样专门的管理工具。后来红帽公司基于qumu基础上开发出了一个libvirt的API程序,在这个API之上有很多的管理工具,例如openstack、rhev、virt-manager、virsh、virt-install、virt-view,其中libvirt不仅可以管理KVM,还可以管理qemu,例如使用openstack管理虚拟机的时候,就是使用libvirt管理qemu,同样也是可以使用libvirt管理KVM的,所以当我们的libvirt服务没有启动起来,那么是无法创建虚拟机的,因此我们需要保证libvirtd服务一直处于正常运行的状态。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.2.2)我们目前使用的是vmware workstation模拟物理机,在vmware中在创建所需的KVM虚拟机,这是一种嵌套虚拟化,由于KVM属于硬件辅助虚拟化,所以必须要开启CPU的支持。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.2.3)接着我们在vms002主机上将KVM安装起来,首先在vms002主机上查询可以安装的包virtual,接着使用yum将virtual软件包使用groupinstall方式安装起来。此时我们重启系统后使用# egrep '(vmx|svm)' /proc/cpuinfo查询到当前环境的cpu虚拟化支持已经启用了。并且发现此时libvirtd服务已经正常的启动了,且自动设置了开机自动启动。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.2.4)接着我们介绍相关管理KVM的工具,在xshell中我们我们使用软件自带的传输方式将Windows物理机中的rhel7.1的镜像传到vms002虚拟机上,使用快捷键Ctrl+Alt+F(ctrl+alt+f)。并在.bash_profile文件中的环境变量处添加qemu-kvm可执行命令的路径,使得系统可以执行qemu-kvm命令。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.2.5)接着我们准备创建一个虚拟机出来,①首先为这个虚拟机创建一个硬盘文件,②接着创建一个虚拟机,使用刚刚创建出来的这个硬盘文件。KVM生成的文件格式一般为raw和qcow2,vmware生成的文件格式一般为vmdk,virtualbox生成的文件格式一般为vdi,Xen生成的文件格式一般为raw和qcow2。使用命令# qemu-img create -f qcow2 test.qcow2 8G,此时我们便创建了一个8G的硬盘文件了。
注意:# qemu-img --help可以通过此命令查询帮助信息。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.2.6)我们使用-m命令指定所需要的内存的大小为512M,--smp指定的是启动的顺序,--boot order=cd指的是boot启动先从c(hard disk)启动,再从d(CD-ROM)启动,-cdrom指的是从我们所添加的光盘镜像开始启动,-hda指的是我们从哪块硬盘开始启动的。此时我们便创建了一个虚拟机,监听在本地回环接口的5900端口
注意:# qemu-kvm --help可以通过这个命令查询相关的帮助信息。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.2.7)此时我们保持vms002主机上创建的虚拟机一直运行,并打开另外一个连接vms002的终端去安装VNC软件。安装完毕后,便可以使用vnc连接到5900端口,此时便正常的连接到了虚拟机。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.2.8)随着我们在QEMU管理工具中开始安装操作系统,我们的虚拟机的硬盘文件的容量也开始逐渐增大了,虚拟机硬盘文件在/vdisk/目录下的test.qcow2文件中。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.2.9)对于生成的test.qcow2文件,我们也可以对虚拟机的硬盘文件进行压缩以节约空间资源,其中convert指的是类型转换,-c表示的是压缩,-O表示的是输出的格式,输出的文件名rhel7.img。此时我们使用压缩过的rhel7.img文件引导虚拟机,发现仍然是可以正常的引导起来的。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します


(1.3)guestos安装及管理虚拟机
(1.3.1)由于QEMU工具管理工具是传统的使用方式,使用起来非常的不方便,目前企业中通常使用的是libvirt这个API接口来管理虚拟机,在上层使用比较便捷的工具是virt-manager。(记住:要等qemu-kvm安装的虚拟机完成后在使用virt-manager)
注意:打开远端图形化界面的三个条件:①ssh -X;②服务器那边要有Xclient,同时也要安装了xorg-x11-xauth;③客户端需要运行Xserver
# yum list xauth*---查询图形化界面的安装软件包
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.2)我们选择本地镜像安装,内存大小选择512M。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.3)我们创建的硬盘大小选择8G即可,默认镜像文件的存放位置是在/var/lib/libvirt/images/目录当中的。如果我们想将镜像文件的位置改变,则可以选择“选择管理的或者其他现有存储”,此时如果我们存放的位置是在一个逻辑卷当中,那么以后就可以使用逻辑卷的快照功能对虚拟机做备份,那么备份的效率会非常的高。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.4)接着我们给虚拟机设置一个名称,在安装前自定义配置,并使用默认的网络设置。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.5)接着我们在Disk 1当中的磁盘总线选择VirtIO,这样虚拟机使用的便是半虚拟化技术,性能是非常高的,如果选择的是IDE或者其他的类型,那么使用的将是全虚拟化技术,会感觉到性能非常的低。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.6)接着NIC网卡的设备类型也要选择VirtIO,这样虚拟机使用的是半虚拟化技术,性能也是非常高的。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.7)我们的显示协议部分,选择的类型为VNC,Keymap要对应的选择en-us,这样我们的虚拟机的显示器部分才会显示正常,此时选择完毕后点击应用,便可以开始正常的安装了。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.8)此时我们一台虚拟机便已经创建了出来,并且在/var/lib/libvirt/images/目录下也产生了虚拟机的硬盘镜像文件了。通过控制台也可以方便的对虚拟机进行控制操作了。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.9)目前在我们vms002主机上的sda上划分一个分区用来创建逻辑卷node
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.10)接着我们在此逻辑卷上创建一个虚拟机node
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.11)并且设置好硬盘类型、网卡类型以及显示协议类型为VirtIO
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.12)此时我们安装的虚拟机就会开始安装在/dev/vg0/node逻辑卷中了
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.13)以上都是自己创建一个全新的虚拟机,其实我们也是可以通过导入已经安装好系统的虚拟机镜像来创建虚拟机的。我们将之前的压缩镜像rhel7.img拷贝到/var/lib/libvirt/images/目录。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.14)接着硬盘类型选择VirtIO、网卡的类型选择VirtIO、显示协议选择VNC且字符编码选择en-us
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.3.15)此时通过导入已有镜像快速创建虚拟机的方式便实现了。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します


(1.4)利用脚本自动部署vm
KVM的定制性能很强,使用虚拟机来自动部署主要有两类环境,1.第一种是使用光盘镜像安装在逻辑卷中;2.第二种是通过导入虚拟机已经安装好的镜像实现。
(1.4.1)对于使用光盘镜像安装在逻辑卷中的情形,我们是把已经安装好的虚拟机,作为一个模板,然后利用逻辑卷的快照功能部署虚拟机。首先通过# virsh list --all查看当前KVM中运行的虚拟机个数和状态,在/etc/libvirt/qemu/文件中存放着KVM虚拟机的配置文件
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.2)由于每个虚拟机的OS中都有自己独有的SID,所以对模板虚拟机需要进行重封装,首先进入到KVM中的node虚拟机中的/etc/sysconfig/network-scripts/目录中,并编辑ifcfg-eth0文件
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.3)在node的虚拟机中,将/etc/ssh/目录下的所有ssh_host_开头的文件全部删除,并将虚拟机关闭。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.4)接着在vms002主机上查询安装虚拟机重封装的软件包名,并将软件包安装起来。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.5)接着我们在vms002主机上使用命令# virt-sysprep -d node对虚拟机进行重封装的操作。因为我们node虚拟机是装在/dev/vg0/node这个逻辑卷中的,所以我们现在对node这个虚拟机所做的所有的操作,都会保存在逻辑卷里。我们在vms002主机上操作,创建一个node虚拟机的快照命名为node1,空间为2G。此时我们使用逻辑卷LVM的快照功能进行备份的操作便实现了,非常的方便。LVM逻辑卷快照备份
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.6)接着我们对虚拟机的配置文件进行复制,进入到/etc/libvirt/qemu目录中,复制node.xml为一个新的文件node1.xml,并对node1.xml配置文件进行编辑。并使用uuidgen随机生成一个新的UUID
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.7)接着在node1.xml配置文件中将如下独有的信息进行修改。接着在KVM的面板中创建node1虚拟机,并将虚拟机启动起来。
# virsh define node1.xml
# virsh start node1
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.8-1)故障排错:此时创建的node1虚拟机已经可以运行了,但是发现无法正常的登录系统,出现了grub>报错。此时我们将node1虚拟机关闭掉,然后将cdrom启用起来,并连接到rhel7.1.iso的光盘镜像。并且设置Boot Option中启用引导菜单选项。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.8-2)同时还要在grub界面执行如下的命令(可省)
# set root=(hd0,msdos1)
# linux16 /vmlinuz-3.10.0-229.el7.x86_64 ro root=/dev/vda1
# initrd16 /initramfs-3.10.0-229.el7.x86_64.img
# boot
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.9)故障排错:此时重启虚拟机发现通过F12可以进入到引导菜单了,接着选择Troubleshooting,并选择救援模式。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.10)故障排错:接着选择Continue,此时我们便进入到光盘镜像的系统中了,接着使用切换根的命令chroot,进入到/mnt/sysimage目录中,此为虚拟机操作系统所在的目录。
# chroot /mnt/sysimages
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.11)故障排错:接着在node1虚拟机中操作如下的命令,此时我们的系统就可以正常的启动起来了
# mount /dev/cdrom /mnt
# rpm -ivh /mnt/Packages/kernel-3.10.0-229.el7.x86_64.rpm --force
# grub2-mkconfig -o /boot/grub2/grub.cfg
# grub2-install /dev/vda
# vim /etc/sysconfig/selinux-----将SELinux值改为disabled
# exit
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.12)以后我们创建虚拟机的时候,可以将node虚拟机作为一个模板,例如在node虚拟机中创建一个/bin/aa.sh的脚本,使得开机的时候自动的运行系统所需的服务,例如在/etc/rc.d/rc.local中进行配置运行/bin/aa.sh。运行完一次后再运行# sed -i ‘/aa.sh/d’ /etc/rc.local将运行aa.sh脚本的条目删除掉,在node中把这样的一个设置写完后关机再保存成一个模板后,以后使用模板重启虚拟机时就都只会第一次运行aa.sh脚本,后面再重启都不会再运行这个aa.sh脚本了(参考虚拟机脚本.png)
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.13)此时我们看到执行完脚本后node1虚拟机便已经消失了
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.14)现在我们完成一个用脚本自动部署实例,首先我们将vms002系统还原到最初始的状态,然后将rh436_new.tar.gz文件解压。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.15)首先我们运行server.sh脚本将环境设置一下,然后执行reinstall.sh脚本便可以开始创建虚拟机了。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.4.16)我们已经正常的创建了第一台KVM虚拟机,然后我们按照同样的方式一共创建3台虚拟机。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します


(1.5)实例:快速搭建HA环境
(1.5.1)首先我们从vms002主机上连接到node1、node2、node3这三台虚拟机上,并在每台虚拟机上安装高可用集群软件
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.5.2)接着在node1、node2、node3虚拟机上将pcsd服务启动起来并设置开机自动启动。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.5.3)接着给三台虚拟机的高可用集群的用户设置密码,并对三台虚拟机的集群环境进行验证。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.5.4)接着在vms002主机上使用浏览器界面打开,使用https连接node1节点的2224端口。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.5.5)此时我们便可以使用高可用集群创建Nginx、MySQL等服务都是可以的。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.5.6)注意:我们也是可以使用如下的一些子命令进行具体设置的
# virsh --help |grep list
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.5.7)例如我们现在给node1虚拟机中添加一块硬盘,我们在/var/lib/libvirt/images/目录中创建一个node1-2.qcow2的硬盘。
# qemu-img create -f qcow2 node1-2.qcow2 2G
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.5.8)给node1虚拟机添加一块硬盘node1-2.qcow2,并且将添加的硬盘命名为vdb
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します
(1.5.9)如果需要删除指定的虚拟机上的一块硬盘,那么可以使用# virsh detach-disk node1 vdb命令。
KVM仮想化技術は、()の説明 - 仮想化は自動化された導入と管理を紹介します

------この記事を締結、読んでくれてありがとう------

おすすめ

転載: blog.51cto.com/13613726/2460499