虚拟网络设置:
KVM使用的是虚拟交换的技术实现虚拟机的网络互联,当部署完虚拟机后,libvirt进程会自动在宿主机上创建一个默认的虚拟交换virbr0 ,]# ifconfig virbr0 查看虚拟交换设备的详细信息。
虚拟交换由三种模式:NAT模式、路由模式、独立模式;
NAT模式:虚拟主机不可以连接宿主机之外的真实主机。
路由模式:宿主机承担路由的角色,实现虚拟机与真实设备的物理网络连接;
独立模式:使每个虚拟交换设备都是一个独立的网络,并且与宿主机也是相互独立的,连接在相同虚拟交换设备的虚拟主机是可以进行是可以进行通信的。
一、基础知识:
1.1 QEMU支持的网络模式
1)基于网桥的虚拟网卡
2)基于NAT的虚拟网路
3)QEMU内置的用户模式网路
4)直接分配网络设备的网络
1.2 常见的虚拟网卡类型
rtl8139——是qemu-kvm默认的模拟网卡类型;
e1000——是提供Inter e1000系列的网卡模拟;
virtio类型——是qemu-kvm对半虚拟化IO(virtio)驱动的支持;
1.3 虚拟机选择Bridge桥接可以实现虚拟机直接访问外部网络,但是需要宿主主机(真实机)创建一个共享的桥接网络设备。如果真实主机的物理网卡名称是eth0,则创建虚拟桥接设备(ifcfg-br0文件,需手动创建。)
搭建网络桥需要配置以下两个文件:
]# brctl addbr br0 //添加br0网桥
]# brctl addif br0 eth0 //将br0于eth0 绑定起来
]# brctl stp br0 on //将br0设置为启用STP生成树协议,
- vim /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
BRIDGE=br0 - vim /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.2
NETMASK=255.255.255.0
TYPE=Bridge
完成后重启网络即可生效
ifconfig br0 up
查看网桥:#brctl show
删除桥接过程
1)# ifconfig br0 down
2)# brctl delif br0 eth0
3)# brctl delbr br0
问题 1,虚拟机不能上网
前提条件,物理机能上网
1 物理机执行以下命令
sysctl -w net.ipv4.ip_forward=1
查找物理机上网的网卡名称 enp2s0 ,通过 ifconfig 查找的
systemctl stop firewalld
iptables -t nat -I POSTROUTING -s 192.168.4.0/24 -o enp2s0 -j MASQUERADE
查找物理机和虚拟机通讯的 ip 地址,通过 ifconfig 192.168.4.254
2 在虚拟机上执行
ip route replace default via 192.168.4.254
ping 202.106.196.115
1.5
查看主机网桥设备:]# brctl show
动态调整虚拟机内存setmem
setvcpus 修改cup配置
virsh domiflist 虚拟机名 ——查看虚拟机网卡
virsh attach-interface 创建新的网卡
使用 eth0 网卡 dhcp 动态获取ip地址:dhclient -I eth0 -v
更换光盘:change-media 虚拟机名称 设备名称 --source iso路径 [–eject拔出 | --insert插入]
change-media node1 sda --source /var/ftp/iso/Centos7-1708.iso --insert
查看块设备信息 :domblklist node1
查看网卡信息 :domiflist node1
命令添加网卡:
virsh -c qemu:///system attach-interface 虚拟机名称 bridge 网桥名称 --model virtio
命令添加硬盘
virsh -c qemu:///system attach-disk 虚拟机名称 /var/lib/libvirt/images/disk.img sdb --subdriver qcow2 --sourcetype file