KVM网络优化

我们可以使用 VMware Workstation 来创建 KVM 虚拟机,在创建虚拟机后我们发现网络是不通的,不能ping 公网或者同网段的ip ,现在我将来解决它。

打开 VMware Workstation ,找到下面这个选项点击

启动 VMware Workstation 用以下命令可以检查当前CPU是否支持 KVM 虚拟化

cat /proc/cpuinfo | egrep '(vmx|svm)'

#若出现以下字段则支持

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch arat tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec

#安装虚拟化软件包

yum install -y qemu-kvm libvirt libguestfs-tools virt-install virt-manager libvirt-python

查看安装完KVM后的服务:

systemctl start libvirtd

systemctl enable libvirtd

systemctl is-enabled libvirtd

输出 : enabled

systemctl status libvirtd

● libvirtd.service - Virtualization daemon Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-11-19 01:44:57 EST; 1min 31s ago Docs: man:libvirtd(8) http://libvirt.org Main PID: 1055 (libvirtd) CGroup: /system.slice/libvirtd.service ├─1055 /usr/sbin/libvirtd ├─2365 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf... └─2366 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf...

Nov 19 01:44:52 server39 systemd[1]: Starting Virtualization daemon... Nov 19 01:44:57 server39 systemd[1]: Started Virtualization daemon. Nov 19 01:44:58 server39 dnsmasq[2365]: started, version 2.66 cachesize 150 Nov 19 01:44:58 server39 dnsmasq[2365]: compile time options: IPv6 GNU-getopt D...th Nov 19 01:44:58 server39 dnsmasq-dhcp[2365]: DHCP, IP range 192.168.122.2 -- 192...h Nov 19 01:44:58 server39 dnsmasq[2365]: reading /etc/resolv.conf Nov 19 01:44:58 server39 dnsmasq[2365]: using nameserver 114.114.114.114#53 Nov 19 01:44:58 server39 dnsmasq[2365]: read /etc/hosts - 2 addresses Nov 19 01:44:58 server39 dnsmasq[2365]: read /var/lib/libvirt/dnsmasq/default.a...es Nov 19 01:44:58 server39 dnsmasq-dhcp[2365]: read /var/lib/libvirt/dnsmasq/defau...e Hint: Some lines were ellipsized, use -l to show in full.

#验证KVM模块是否成功加载

lsmod | grep kvm

kvm_intel 170181 0 kvm 554609 1 kvm_intel irqbypass 13503 1 kvm

#验证libvirtd服务是否正常启动

virsh -c qemu:///system list
Id    Name                           State
----------------------------------------------------
#如果已经成功启动,则会输出以上结果;如果出现错误,则表示libvirtd服务没有成功启动。

在创建 KVM 虚拟机之前我们要配置 KVM 网络桥接功能

1、添加桥接设备 br0: 相当于一个二层交换机

安装桥设备工具:

rpm -ivh /yum/Packages/bridge-utils-1.5-9.el7.x86_64.rpm

或者

yum install -y bridge-utils

2、把 ens33 绑到 br0 桥设备上:

cd /etc/sysconfig/network-scripts/

cp ifcfg-ens33 /opt #将 ifcfg-ens33 文件备份

vim ifcfg-ens33

cat ifcfg-ens33

TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no NAME=ens33 DEVICE=ens33 ONBOOT=yes #IPADDR=192.168.20.39 #NETMASK=255.255.255.0 #GATEWAY=192.168.20.2 #DNS1=114.114.114.114 BRIDGE="br0"

#注意:BRIDGE 要大写

生成桥设备的配置文件:

vim ifcfg-br0

cat ifcfg-br0

DEVICE="br0" NM_CONTROLLED="yes" ONBOOT="yes" TYPE="Bridge" BOOTPROTO=none IPADDR=192.168.20.39 NETMASK=255.255.255.0 GATEWAY=192.168.20.2 DNS1=192.168.20.2

#注意:TYPE="Bridge" , B要大写

systemctl restart network 重启网卡

ifconfig

ping www.baidu.com

brctl show

bridge name   bridge id         STP enabled    interfaces

br0        8000.0050562c10d8           no             ens33

virbr0    8000.5254001d0148           yes         virbr0-nic

3、为 VMware Workstation 添加一块硬盘,并且创建一个分区,用于存放安装好的 Linux 操作系统:

echo "- - -" > /sys/class/scsi_host/host0/scan

ls /dev/sd*

/dev/sda /dev/sda1 /dev/sda2 /dev/sdb

fdisk /dev/sdb

Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them. Be careful before using the write command.

Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0x00a68b27.

Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): First sector (2048-41943039, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): Using default value 41943039 Partition 1 of type Linux and of size 20 GiB is set

Command (m for help): p

Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x00a68b27

Device Boot Start End Blocks Id System /dev/sdb1 2048 41943039 20970496 83 Linux

Command (m for help): w The partition table has been altered!

Calling ioctl() to re-read partition table. Syncing disks.

ls /dev/sd*

/dev/sda /dev/sda1 /dev/sda2 /dev/sdb /dev/sdb1

格式化,并且挂载使用

mkfs.xfs /dev/sdb1

echo "/dev/sdb1 /var/lib/libvirt/images/ xfs defaults 0 0" >> /etc/fstab

mount -a

df -h

Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel-root 47G 3.1G 44G 7% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 88K 1.9G 1% /dev/shm tmpfs 1.9G 9.0M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sr0 3.6G 3.6G 0 100% /yum /dev/sdb1 20G 4.9G 16G 25% /var/lib/libvirt/images /dev/sda1 1014M 140M 875M 14% /boot tmpfs 378M 16K 378M 1% /run/user/0

4、准备系统镜像,并将它放到 /etc/sysconfig/network-scripts 目录下

ls -hl

total 3.6G

-rw-r--r-- 1 root root 3.6G Aug 15 07:17 rhel-server-7.3-x86_64-dvd.iso

5、接下来我们要下载图形化界面,如果已有就忽略这一步

yum install -y xorg* gnome* glx*

6、下载好后就去图形化界面操作

init 5 #切换到图形化界面

##最好使用 root 用户登录图形化界面,权限较大且不易出错

virt-manager #会出现安装 KVM 虚拟机的窗口

接下来就是自行选择安装虚拟机的操作了,我这里就不一一列举

最后的安装完成界面是这样的,点击右下角的重启,那么 KVM 虚拟机就创建好了

7、 KVM 虚拟机常用命令

virsh shutdown rhel7.3 #关闭 rhel7.3 虚拟机

virsh start rhel7.3 #启动 rhel7.3 虚拟机

systemctl enable libvirtd #设置 rhel7.3 虚拟机在物理机开机后自动启动

8、配置虚拟机网络

vi /etc/sysconfig/network-scripts/ifcfg-eth0

只需要将里面的 ONBOOT=no 改为 ONBOOT=yes 就行了

systemctl restart network #重启网卡

ip a #查看ip信息

9、尝试 ping 相同网段的ip和公网网络

ping 192.168.20.39

ping www.baidu.com

至此,方法成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值