kvm — linux virtual server
来源:互联网 发布:linux 设置时间格式 编辑:程序博客网 时间:2024/06/11 02:24
(一)
虚拟化 Kernel-baseed Virtual Machine
入门
虚拟化分类
1:完全虚拟化(Full Virtualization) 需要跑在宿主机之上 全虚拟化也成为原始虚拟化技术,该模型使用虚拟机协调guest操作系统和原始硬件,VMM在guest操作系统和裸硬件之间用于工作协调,一些受保护指令必须由Hypervisor(虚拟机管理程序)来捕获处理。 guest执行特权级操作,只能通过Hypervisor来处理。例如,guest执行 shutdown -h now,这条指令将会被Hypervisor所捕获到,因此不会真正的被CPU执行,而是被Hypervisor协调执行,从而关闭了虚拟机guest,而不是这个物理机上的OS 代表作品:Vmware Workstation, KVM2:半虚拟化(Para Virtualization)直接跑在硬件之上 半虚拟化是另一种类似于全虚拟化的技术,它使用Hypervisor分享存取底层的硬件,但是它的guest操作系统集成了虚拟化方面的代码。 代表作品:Xen, VMware vSphere,Huawei FusionSphere
KVM 入门
KVM必须保证CPU支持硬件虚拟化 Intel CPU:VT-x AMD CPU:AMD-V
KVM 管理、查看工具分类
qemu: qemu-kvm qemu-imglibvirt libvirtd 守护进程 图形化管理程序:virt-manager程序、virt-viewer程序 命令行管理程序:virt-install程序、virsh程序
在Wmware虚拟机上如何检查是否CPU支持虚拟化 和 加载kvm模块
# vmx或svm :表示VCPU支持虚拟化cat /proc/cpuinfo | grep vmx# 装载kvm模块modprobe kvm# 查看模块是否已经安装,必须保证安装了kvm_intel模块[root@7 ~]# lsmod | grep kvmkvm_intel 162153 0 kvm 525259 1 kvm_intel# 存在kvm设备文件[root@7 ~]# ll /dev/kvm crw-------. 1 root root 10, 232 Sep 28 20:40 /dev/kvm
安装libvirt管理套件
(C/S架构模式,用户管理kvm虚拟机)
# 1:安装程序包yum install -y libvirt virt-manager virt-viewer virt-install qemu-kvm# 2:启动libvirtd守护进程systemctl start libvirtd.servicesystemctl enable libvirtd.service# 3:输入ifconfig命令之后可以看到 virbr0,这是一个NAT网络[root@7 ~]# ifconfigvirbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255 ether 52:54:00:cf:ae:68 txqueuelen 0 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0# 在图形化界面启动virt-manager# 如果创建虚拟机不成功,请查看如下配置,查看是否CPU虚拟化嵌套功能开启cat /sys/module/kvm_intel/parameters/nested 如果是N,那么需要设置为Y# 开启CPU虚拟化嵌套功能modprobe -r kvm_intelmodprobe kvm_intel nested=1# 再次查看是否CPU虚拟化嵌套功能开启cat /sys/module/kvm_intel/parameters/nestedY# 由于linux的镜像比较大,如果大于4G是无法使用rz -y 从Windows系统上传的,因此可以选择挂载# 挂载之前需要下载Windows的ntfs文件系统yum install -y fuse-ntfs-3g# 查看USB的设备文件fdisk -l # 一般是/dev/sdb1为USB的设备文件# 挂载已经有Centos镜像的USB设备mount.ntfs-3g /dev/sdb1 /mnt# 此时就可以使用U盘或硬盘中的CentOS镜像了
- 使用命令virsh管理网络设备,创建桥设备 和 使用virt-manager创建虚拟机
# 1:查看网卡接口virsh iface-list Name State MAC Address--------------------------------------------------- eno16777736 active 00:0c:29:34:06:15 lo active 00:00:00:00:00:00# 2:完毕NetworkManager服务,不让nmtui接口管理网络设备systemctl stop NetworkManager.servicesystemctl disable NetworkManager.service# 3:创建br0桥设备,eno16777736就是交换机,br0就是桥设备,且具有IP地址,也可以认为是虚拟网卡virsh iface-bridge eno16777736 br0# 4:创建虚拟机virt-manager# 5:可以使用cobbler引导,或使用光盘镜像,如果使用cobbler需要PXE环境
- virsh命令创建虚拟机
# 查看已经创建的虚拟机virsh list# 停止虚拟机virsh destroy centos6.8这个命令行创建虚拟机太麻烦,基本上不用如果不是写论文,建议可以不去关注cat /proc/345232/cmdline 查看qemu-kvm的进程的启动命令
- 虚拟化网络介绍
- 使用qemu-img创建虚拟磁盘文件
# 安装qemu-imgyum install -y qemu-img# 获取帮助qemu-img --help# 支持的虚拟磁盘文件格式Supported formats: vvfat vpc vmdk(vmware,virtualbox磁盘文件) vhdx vdi ssh sheepdog rbd raw host_cdrom host_floppy host_device file qed qcow2(kvm的虚拟磁盘格式) qcow parallels(Mac上的parallels) nbd iscsi gluster dmg tftp ftps ftp https http cloop bochs blkverify blkdebug# 创建一个稀疏格式的虚拟磁盘文件, -f: 指定格式, -o:指定选项,/root/kvm.qcow2表示指定创建的虚拟磁盘路径, 80G指定磁盘大小qemu-img create -f qcow2 -o preallocation=metadata /root/kvm.qcow2 80G# 查看虚拟磁盘的预定大小[root@7 ~]# ls -lh /root/kvm.qcow2-rw-r--r--. 1 root root 81G Sep 29 11:30 /root/kvm.qcow2# 查看虚拟磁盘的实际大小[root@7 ~]# du -sh /root/kvm.qcow216M /root/kvm.qcow2# 需改大小,不能缩小,只能扩大qemu-img resize /root/kvm.qcow2 300G
- 使用 virt-install 创建虚拟机
virt-install --help
- 使用 qemu-kvm 创建虚拟机 介绍
1:命令路径:/usr/libexec/qemu-kvm2:添加至环境变量PATH中(也可以使用软连接ln -sv /etc/profile.d/kvm.sh /usr/bin)编辑 /etc/profile.d/kvm.sh 添加export PATH=/usr/libexec:$PATH. /etc/profile.d/kvm.sh
使用 qemu-kvm 创建虚拟机
qemu-kvm的基本用法:指定系统类型,CPU运行模式,NUMA(Non Uniform Memory Access Architecture), 软驱设备,光驱设备,硬件设备# 查看支持的系统类型qemu-kvm -M ?# 下载磁盘镜像文件wget http://download.cirros-cloud.net/0.3.3/cirros-0.3.3-x86_64-disk.img#
阅读全文
0 0
- kvm — linux virtual server
- kvm — linux virtual server深入解识
- Linux KVM: Kernel Virtual Machine Monitor
- Linux virtual server【LVS】
- Virtual Private Server - Linux
- lvs-- linux Virtual Server
- LVS(linux virtual Server)
- Linux virtual server
- LVS ( Linux Virtual Server)
- LVS-Linux Virtual Server
- Linux Virtual Server技术
- Linux Virtual Server项目
- LVS(Linux Virtual Server)
- LVS(Linux Virtual server)
- Linux Virtual Server概述
- lvs(linux virtual server)
- LVS(Linux Virtual Server)
- LVS(Linux virtual Server)
- Selenium自动测试工具-WebDriver
- 过程也是一种美
- hihoCoder 1582 Territorial Dispute
- MySQL编译安装
- printf、fprintf、sprintf和snprintf函数
- kvm — linux virtual server
- 【JAVA基础】[异常处理]项目中悄无声息的RuntimeException
- ZOJ
- hdu6215(双向链表)
- 回顾大一·C语言编程6.3(1)+7.1(1)(2)+7.2(1)(2)(3)+8.1(1)(2)(3)
- HDU
- 数据结构-树与二叉树
- Numpy基础操作
- 深度学习关键一点 特征的自动提取