虚拟化(2)kvm虚拟机+tap网卡+网桥
  rWgDHz1n5dfs 2023年11月02日 55 0

环境

和文章虚拟化(1)相同

目标

虚机能和主机,和web互联

步骤

(1)在文章1中原本打算先创建虚拟网卡,这符合普通人思维。但是从一些博客了解到:kvm启动参数中,指定虚拟网卡名,指定网络脚本

(2)上一篇记错了一件事,kvm命令不是内核自带,需要安装,apt install qemu-system-x86,这会安装一堆软件。

(3)参考该博客 (文中说自己写脚本qemu-ifup,上一步安装软件时会自动创建的,所以我没自己写 ),先创建一个无网卡虚机centos7, 安装过程卡住, 这篇文章说多等一会,我等了1小时也卡,如果网友知道解决方法,跪求指点!所以删了,下载了centos6,kvm参数中我多加了-vga qxl 避免虚机超出物理屏幕或者分辨率太低。安装后进入系统,ip a 显示有线网卡没有ip 这是因为安装时没设置网络,网卡未启动。

(4)此时主机nmcli c 已经启动的是switch和bridge-slave,正如上一篇博客的结果。

文件格式的区别:img用dd命令创建,qcow2用qemu-img创建,用前者安装系统时,qemu做快照时,不能把快照写入img文件内部。

参考 这篇博客 介绍的网络拓扑,

kvm --hda centos7.img -smp 2 -m 2048 -net nic -net tap,ifname=tap1,script=/etc/qemu-ifup,downscript=no  -daemonize
其中网络设置可以简写为 -nic tap,ifname=....

这里提示必须sudo,上一步创建虚机的命令,可以不加sudo ,为什么这里必须加?跪求网友指点如何可以不加,因为我觉得不加权限安全一点。

然后执行还是无法启动,所以我删了第2步自带的脚本,参考第3步介绍的脚本自己创建了一个,并且把命令中的-vnc一项去掉。kill kvm进程。再次运行kvm命令,就成功启动 了系统。

登录后因为装系统时没有网络,所以网卡没启动。

ifup eth0

再ip a 成功显示了192.168.43.104 ,而我的主机网桥是 .101  ,至此本文的目标实现了。

brctl show 可以看到网桥下面挂载的设备有2个,验证了第4步博客中的那个拓扑。

当建立多个虚拟机时,如果不指定mac则它们的mac地址可能相同。-nic tap,mac=...

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论