ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

virt-manager创建虚拟机

2020-05-10 17:03:10  阅读:530  来源: 互联网

标签:宿主机 virt 虚拟机 kvm KVM manager virsh 虚机


一、virt-manager创建虚机 (1)首先通过命令 virt-manager 启动图形界面: 点下面的图标创建虚机 (2)给虚机命名为 kvm1,这里选择从哪里启动虚机。如果是安装新的 OS,可以选择第一项。如果已经有安装好的镜像文件,选最后一项(如下图)。  (3)接下来需要告诉 virt-manager 镜像的位置,点击 “Browser” (4)需要在系统中上传一个镜像文件到宿主机上,放到 /var/lib/libvirt/images/ 目录下,这是 KVM 默认查找镜像文件的地方。 (5)为虚拟机分配 CPU、内存和磁盘          (6)为虚拟机命名,并在安装前配置硬件参数,点击“Finish”。网络选 择创建的br0网桥,点击绿色“对勾”开始安装 (7)控制台弹出如下图,安装linux安装步骤安装即可: virt-manager 可以对虚机进行各种管理操作,界面直观友好,很容易上手。 同时我们也可以用命令 virsh 管理虚机,比如查看宿主机上的虚机:   二、远程管理kvm虚机   (1)上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机。其实 virt-manager 也可以管理其他宿主机上的虚机。只需要简单的将宿主机添加进来,如下图: 接下来,我们就可以像管理本地虚机一样去管理远程宿主机上的虚机了 (2)有些情况下,有一个要配置的地方。 因为 KVM(准确说是 Libvirt)默认不接受远程管理,需要按下面的内容配置被管理宿主机中的两个文件: vim /etc/default/libvirt-bin start_libvirtd="yes" libvirtd_opts="-d -l"   vim /etc/libvirt/libvirtd.conf listen_tls = 0 listen_tcp = 1 unix_sock_group = "libvirtd" unix_sock_ro_perms = "0777" unix_sock_rw_perms = "0770" auth_unix_ro = "none" auth_unix_rw = "none" auth_tcp = "none" 然后重启 Libvirtd 服务就可以远程管理了。 systemctl restart libvirt-bin 三、virsh命令行下管理虚拟机 virsh 既有命令行模式,也有交互模式,在命令行直接输入 virsh 就进入交互模式, virsh 后面跟命令参数,则是命令行模式;   (1)基础操作 --- 命令行下管理虚拟机   语法结构:   virsh <command> <domain-id> [OPTIONS]   help            列出命令下的所有参数   help list      列出 list 命令下的参数   帮助菜单 virsh list           列出当前宿主机上处于运行状态的虚拟机 virsh list --all    列出当前宿主机上所有的虚拟机 virsh start vm1 (虚拟机name) 开启某一台虚拟机 virsh shutdown vm1   (虚拟机name) 正常关闭一台虚拟机 virsh destroy vm1      强制关闭某一台虚拟机 virsh autostart vm1    开机自启动虚拟机vm1 virsh autostart  --disable vm1 关闭开机自启动 virsh edit vm1   编辑某个虚拟机的配置文件 virsh pool-list   列出存储池   qemu-img create -f qcow2 -o size=9G /export/kvm/test.qcow2 创建一个大小为 9G 的格式为 qcow2 的磁盘镜像   查看磁盘信息: qemu-img info /export/kvm/test.qcow2   命令行下创建 && 管理虚拟机 Virt-install:命令行下创建虚拟机的命令,不过在它后面需要跟上很多的参数     --name: 虚拟机的名字。     --disk Location: 磁盘映像的位置。     --graphics : 怎样连接 VM ,通常是 SPICE 。     --vcpu : 虚拟 CPU 的数量。     --ram : 以兆字节计算的已分配内存大小。     --location : 指定安装源路径     --network : 指定虚拟网络,通常是 virbr0 或者自己设定的 br0   例如: virt-install --name=test --disk path=/export/kvm/test.qcow2 --ram=1024 --vcpus=1 --graphics spice --location=/export/download/software/iso/CentOS-7.3-x86_64-DVD.iso --network bridge=br0 注:以此安装操作之后,会在桌面显示一个 virtviewer ,进入到安装步骤   (2)除了这些简单命令,实际在 virsh 形式下还有更多的命令: virsh help     打印帮助 virsh attach-device      从一个 XML 文件附加装置 virsh attach-disk          附加磁盘设备 virsh attach-interface   获得网络界面 virsh destroy                删除一个域 virsh detach-device      从一个 XML 文件分离设备 virsh detach-disk         分离磁盘设备 virsh detach-interface  分离网络界面 virsh define                 从一个 XML 文件定义(但不开始)一个域 virsh undefine             删除一个虚机域   克隆一个虚机: virt-clone -o vm2 -n vm4 -f /var/lib/libvirt/images/vm4.qcow2  四、KVM 通过virsh console连入虚拟机  新安装一台虚拟机后,是无法通过virsh console 命令连入虚拟机中的,这时我们需要开启虚拟机的console功能。 1、centos7以下,及其他情况 (1)添加ttyS0的许可,允许root登陆          [root@localhost ~]# echo "ttyS0" >> /etc/securetty (2)编辑/etc/grub.conf中加入console=ttyS0 (3)编辑/etc/inittab,在最后一行加入内容:S0:12345:respawn:/sbin/agetty ttyS0 115200        (4)重启服务器          reboot (5)宿主机上测试          virsh console vm-name (6)退出console连接的虚拟机li          按 ctrl+] 组合键退出virsh console 2、对于centos7 (1)在虚机里运行   [root@localhost ~]# grubby --update-kernel=ALL --args="console=ttyS0" (2)重启虚机   [root@localhost ~]# reboot   即可 3、VNC Viewer 远程管理kvm主机 (1)在window中安装VNC Viewer 软件,一直下一步完成 (2)打开vnc viewer 软件连接kvm主机 (3)点击Continue,即可连接里面的虚机 五、KVM虚拟化透传 KVM 虚拟化需要处理器对虚拟化技术的支持,当我们需要进行虚拟机嵌套虚拟机时,我们需要让虚拟机中处理器对 VT 功能的支持达到透传的效果。   nested 虚拟机嵌套( kvm on kvm ):nested 技术,简单的说,就是在虚拟机上跑虚拟机。   KVM 虚拟机嵌套和 VMWare 原理不同, VMWare第一层是用的硬件虚拟化技术,第二层就是完全软件模拟出来的,所以 VMWare 只能做两层嵌套。 KVM 是将物理 CPU 的特性全部传给虚拟机,所有理论上可以嵌套 N 多层。   1、查看一层客户端是否支持 VT #grep vmx /proc/cpuinfo 查询未果,证明一层 KVM 的虚拟机,并未将宿主机处理器的 VT 功能成功透传。所以,没有对 VT功能的支持,我们不能实现在该层虚拟机中嵌套KVM 虚拟机。   2、在物理服务器上为嵌套虚拟机做准备 --- CPU 虚拟化透传 (1)# vim /etc/modprobe.d/kvm-nested.conf # 在文件中添加下面语句(由于截图问题,实际不需要加空行) options kvm_intel nested=1   # 在宿主机启用 kvm_intel 模块的嵌套虚拟化功能,并且使透传永久有效 (2)重新加载 kvm 模块 # modprobe -r kvm_intel          -r参数:remove掉kvm_intel模块 # modprobe kvm_intel              加载kvm_intel模块 (3)验证是否加载成功 #cat /sys/module/kvm_intel/parameters/nested   Y ---“Y” 表示 cpu 虚拟化透传功能开启   3、编辑需要做虚拟化透传的虚拟机的配置文件 #virsh edit centos7 ( Virtual Machine Name ) <cpu mode='host-passthrough'>   host-passthrough 直接将物理 CPU 暴露给虚拟机使用,在虚拟机上完全可以看到的就是物理 CPU的型号   4、进入虚拟机中查看cpu是否透传成功 在一层虚拟机中查看cpu是否支持虚拟化  

标签:宿主机,virt,虚拟机,kvm,KVM,manager,virsh,虚机
来源: https://www.cnblogs.com/hao6/p/12864116.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有