ubuntu20.04使用kvm搭建虚拟机+bridge网桥,亲测有效 您所在的位置:网站首页 网桥ip地址怎么设置 ubuntu20.04使用kvm搭建虚拟机+bridge网桥,亲测有效

ubuntu20.04使用kvm搭建虚拟机+bridge网桥,亲测有效

2024-07-12 06:08| 来源: 网络整理| 查看: 265

前提

主机配置如下:

电脑为笔记本

处理器 intel i5-6300 HQ 2.30GHz * 4

内存 16G

硬盘 500G 固态

系统 Ubuntu 20.04.3 LTS 64-bit

检查 检查CPU是否支持虚拟化 $ grep -Eoc '(vmx|svm)' /proc/cpuinfo # 输出大于 0 即可 8

输出结果大于0表示支持虚拟化

检查主板是否开启虚拟化 $ sudo apt update && sudo apt install cpu-checker -y $ kvm-ok # 以下输出结果可用 INFO: /dev/kvm exists KVM acceleration can be used 安装KVM套件 安装相关包 sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager -y

qemu-kvm: 提供硬件底层虚拟化。 libvirt-daemon-system: 为 libvirt作为系统服务的守护程序运行。 libvirt-clients: 为不同的虚拟机提供长期稳定的C API bridge-utils:提供网络桥接功能 virtinst: 为libvirt创建虚拟机提供一系列的命令行工作 virt-manager: KVM虚拟机管理图形界面,如果服务器没有安装图形化界面,没有必要安装它。

检查 libvirtd $ sudo systemctl is-active libvirtd # 输出以下结果表示可用 active 将当前用户加入到 libvirt 和 kvm 用户组

USER 为当前用户

sudo usermod -aG libvirt USER sudo usermod -aG kvm USER 配置网桥 sudo vim /etc/sysctl.d/bridge.conf

内容如下:

net.bridge.bridge-nf-call-ip6tables=0 net.bridge.bridge-nf-call-iptables=0 net.bridge.bridge-nf-call-arptables=0 sudo vim /etc/udev/rules.d/99-bridge.rules

内容如下:

ACTION=="add", SUBSYSTEM=="module", KERNEL=="br_netfilter", \ RUN+="/sbin/sysctl -p /etc/sysctl.d/bridge.conf" ip link

KVM 安装后,会有默认创建的接口,需要删除

查看接口

$ ip link 1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eno1: mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether d4:be:d9:f3:1e:5f brd ff:ff:ff:ff:ff:ff 6: virbr0: mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:1d:5b:25 brd ff:ff:ff:ff:ff:ff 7: virbr0-nic: mtu 1500 qdisc fq_codel master virbr0 state DOWN mode DEFAULT group default qlen 1000 link/ether 52:54:00:1d:5b:25 brd ff:ff:ff:ff:ff:ff

删除默认的网口

$ sudo virsh net-destroy default $ sudo virsh net-undefine default

再次查看

$ ip link 1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eno1: mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether d4:be:d9:f3:1e:5f brd ff:ff:ff:ff:ff:ff

如果还有,则需要手动删除

$ ip link delete virbr0 type brigde $ ip link delete virbr0-nic sudo vim /etc/netplan/00-installer-config.yaml

内容如下:

network: ethernets: eno1: dhcp4: false dhcp6: false bridges: br0: interfaces: [ eno1 ] addresses: [192.168.0.100/24] gateway4: 192.168.0.1 mtu: 1500 nameservers: addresses: [8.8.8.8,8.8.4.4] parameters: stp: true forward-delay: 4 dhcp4: no dhcp6: no version: 2

注意自行更换:

eno1: 为笔记本有线网卡的网卡名,不能使用无线网卡

addresses:里面的ip为可局域网中的真实 ip 地址和掩码

gateway4:网关为局域网中的网关

sudo netplan apply

执行后则 br0 网桥就会被创建成功

$ ip link 1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eno1: mtu 1500 qdisc fq_codel master br0 state UP mode DEFAULT group default qlen 1000 link/ether c8:d3:ff:dd:74:f1 brd ff:ff:ff:ff:ff:ff altname enp9s0 3: wlo1: mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000 link/ether c8:21:58:17:5a:bb brd ff:ff:ff:ff:ff:ff altname wlp8s0 4: br0: mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000 link/ether c8:d3:ff:dd:74:f1 brd ff:ff:ff:ff:ff:ff vim host-bridge.xml

创建kvm网桥配置文件

host-bridge 创建 kvm 的网桥 $ sudo virsh net-define host-bridge.xml $ sudo virsh net-start host-bridge $ sudo virsh net-autostart host-bridge 查看是否创建成功 $ virsh net-list --all Name State Autostart Persistent ------------------------------------------------ host-bridge active yes yes 创建虚拟机 sudo virt-install --name=centos7_2003 --ram=4096 --vcpus=2 --virt-type=kvm --os-type=linux --os-variant=centos7.0 --network default,model=virtio --graphics=vnc,password=123123,port=5911,listen=0.0.0.0 --noautoconsole --accelerate --cdrom=/var/lib/libvirt/images/CentOS-7-x86_64-Minimal-2003.iso --disk path=/var/lib/libvirt/images/CentOS7.qcow2,device=disk,format=qcow2,bus=virtio,cache=writeback,size=40

可自行修改:

--name=centos7_2003 为虚拟机名字

--ram=4096 为虚拟机内存

--vcpus=2 为cpu核数

password=123123 为访问虚拟机界面时需要的密码(可以删除掉)

-cdrom=/var/lib/libvirt/images/CentOS-7-x86_64-Minimal-2003.iso 为镜像路径,自行下载 阿里云centos7

-disk path=/var/lib/libvirt/images/CentOS7.qcow2 disk存放路径

size=40 磁盘大小

检查是否运行成功

$ virsh list --all Id Name State ------------------------------ 1 centos7_2003 running 配置虚拟机静态 ip $ vi /etc/sysconfig/network-scripts/ifcfg-eth0 # 内容如下 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static # 需要改为 static DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=eth0 UUID=c45492fe-bc6f-40f4-a799-e620660c5b61 DEVICE=eth0 ONBOOT=yes # 需要改为 yes IPADDR=192.168.0.100 # 和 br0 相同网络下的 ip METMASK=255.255.255.0 # 和 br0 相同的掩码 DNS1=114.114.114.114 GATEWAY=192.168.0.1 # 和 br0 相同的网关 IPV6_PEERNDS=yes IPV6_PEEROUTES=yes IPV6_PRIVACY=no # 内容结束

查看是否连通

#重启网络 $ systemctl restart NetworkManager # 查看网络是否连通 $ ping 114.114.114.114 PING 114.114.114.114 (114.114.114.114) 56(84) bytes of data. 64 bytes from 114.114.114.114: icmp_seq=1 ttl=94 time=39.9 ms 64 bytes from 114.114.114.114: icmp_seq=2 ttl=68 time=39.7 ms $ ping www.baidu.com PING www.a.shifen.com (220.181.38.149) 56(84) bytes of data. 64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=1 ttl=52 time=43.6 ms 64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=2 ttl=52 time=43.7 ms 总结

宿主机重启后,所有相关网络都会自动创建,亲测有效

kvm搭建

网桥搭建,国外网站,不一定都能打开



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有