什么是虚拟化: 1 2 3 vmm、Hypervisor 是提供真正虚拟机管理程序的,---创建,删除-开关机。 Hypervisor是属于内核功能的,操作系统内核的一个模块。把和内核交互的工具称之为用户肽工具:比如:virsh命令行、virt-manager图形界面,
虚拟化产品分类: 桌面级虚拟化企业级虚拟机化
虚拟化产品分类: 1 2 3 4 5 6 7 8 1.Kvm(redhat-----企业级) 2.Vmware: Vmware-workstation(windows和linux)----桌面级 Vmware-fusion(mac) Vmware-esxi-----(企业级别)本身就是一个操作系统。 3.hyper-v(微软) 4.Ovm(oracle公司--Windows linux) virtulbox 5.Xen(rhel6之前所有版本默认用的虚拟化产品)
部署 第一步先在VMware上创建一个虚拟机(内存能多大就做多大)
虚拟机安装好,打开设置--处理器--虚拟化引擎--勾选第一个
打开虚拟机,查看cpu是否支持虚拟化
1 2 [root@kvm-server ~] cmx|svm支持其中一个就可以
构建环境 关闭防火墙和selinux
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 清理环境,卸载机器自带的kvm[root@kvm-server ~] [root@kvm-server ~] [root@kvm-server ~] [root@kvm-server ~] 其实下载的是下面几款软件 qemu-kvm : 主包 libvirt:api接口 virt-manager:图形化界面 kvm负责cpu虚拟化+内存虚拟化,实现了cpu和内存的虚拟化,但kvm不能模拟其他设备; qemu是模拟IO设备(网卡,磁盘),kvm加上qemu之后就能实现真正意义上服务器虚拟化。 因为用到了上面两个东西,所以一般都称之为qemu-kvm。 libvirt则是调用kvm虚拟化技术的接口用于管理的,用libvirt管理方便,直接用qemu-kvm的接口太繁琐。[root@kvm-server ~] [root@kvm-server ~] kvm_intel 188644 0 kvm 621480 1 kvm_intel irqbypass 13503 1 kvm 如果看到有这两行,说明支持kvm模块
下面就可以在VMware里面再安装虚拟机了
图形添加虚拟机 1 在终端输入virt-manager--点击电脑图标创建--本地安装介质--选择使用ISO映像,另外
文本添加虚拟机 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 [root@kvm-server ~] [root@kvm-server ~] [root@kvm-server ~] [root@kvm-server ~] 注意: virt-install bash: virt-install: 未找到命令... 如果还是有问题没办法安装,需要vsftp匿名授权,添加以下内容 vim /etc/vsftpd/vsftpd.conf //配置文件anonymous_enable =YES //开启匿名登录anon_upload_enable =YES //匿名读anon_mkdir_write_enable =YES //匿名写[root@kvm-server ~] 参数解释: -n name -r 以M为单位指定分配给虚拟机的内存大小 --disk 指定作为客户机存储的媒介 size以G为单位的存储 --os-type 系统类型 --os-variant 系统类型版本 --vcpus 指定核数,不能超过物理cpu --location 客户虚拟机安装源下载,必须为镜像挂载在ftp目录下 -x console =ttyS0 执行终端0 --nographics 无图形,文本模式 1、选2,进入use text mode 2、将所有的!进行编辑,编辑好的状态是× 3、更改时间选2 -- 1 set timezone-- 2 Asia -- 65 Shanghai 4、设置磁盘5 -- c to continue -- 2 Use All Space -- c to continue -- 3 LVM -- c to continue 5、设置密码8 -- 自己设定一个密码 -- yes 6、设置完成-- b 7、开始创建,大概20分钟左右 8、出现installation complete. press return to quit--按回车退出--下面的操作根据提示点点就可以了
模板镜像+配置文件 方式安装虚拟机—重点 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 1.虚拟机配置文件[root@kvm-server ~] networks vm2.xml 2.储存虚拟机的介质[root@kvm-server ~] vm2.img ============================== define方式创建好,不会启动 create方式创建好,会启动[root@kvm-server ~] [root@kvm-server ~] [root@kvm-server ~] domain type ='kvm' > <name>vm3</name> <uuid>2e3fa6db-ff7f-41c3-bc8f-0428e81ebb57</uuid> <memory unit ='KiB' >1024000 </memory> <currentMemory unit ='KiB' >1024000 </currentMemory> <vcpu placement ='static' >2 </vcpu> <os> 。。。 。。。 。。。 <devices> <emulator>/usr/libexec/qemu-kvm</emulator> <disk type ='file' device='disk' > <driver name ='qemu' type='qcow2' /> <source file ='/var/lib/libvirt/images/vm3.img' /> <target dev ='vda' bus='virtio' /> <address type ='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' /> </disk> 。。。 。。。 。。。 </controller> <interface type ='network' > <mac address ='52:54:00:82:d6:3c' /> <source network ='default' /> <model type ='virtio' /> 用vim修改完之后需要define一下配置文件[root@kvm-server ~] 重启一下:[root@kvm-server ~] 宿主机开启路由转发:[root@kvm-server ~] [root@kvm-server ~] net.ipv4.ip_forward = 1 查看虚拟机列表:[root@kvm-server ~] Id 名称 状态 ---------------------------------------------------- - vm2 关闭 - vm3 关闭
KVM虚拟机管理 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 [root@kvm-server ~] [root@kvm-server ~] 查看kvm虚拟机配置文件:[root@kvm-server ~] 启动[root@kvm-server ~] 域 vm2 已开始 暂停虚拟机:[root@kvm-server ~] 域 vm2 被挂起 恢复虚拟机:[root@kvm-server ~] 域 vm2 被重新恢复 关闭: 方法1:[root@kvm-server ~] 域 vm3 被关闭 重启:[root@kvm-server ~] 域 vm3 正在被重新启动 重置:[root@kvm-server ~] vm3 Domain vm3 was reset 删除虚拟机:[root@kvm-server ~] Domain vm2 has been undefined 注意:虚拟机在开启的情况下undefine是无法删除的只是将配置文件删除了,不能删除磁盘文件。需要手动rm,最好还是在virt-manager里面右击删除 虚拟机开机自动启动:[root@kvm-server ~] 域 vm3标记为自动开始[root@kvm-server ~] vm3.xml 关闭开机启动[root@kvm-server ~] 域 vm3取消标记为自动开始[root@kvm-server ~] 如何查看已启动的虚拟机ip地址 假如vm3虚拟机已启动[root@kvm-server ~] 名称 MAC 地址 Protocol Address ------------------------------------------------------------------------------- vnet0 52:54:00:82:d6:3c ipv4 192.168.122.85/24
虚拟机添加设备 1、图像方式添加
1 输入virt-manager--右击点击你想要添加设备的虚拟机--查看--详情--左下角--添加硬件--安装需求添加就可以了
2、修改配置文件方式添加
1 2 3 [root@kvm-server ~] [root@kvm-server ~] [root@kvm-server qemu]
1 2 3 4 5 6 7 8 9 10 11 加好之后,启动虚拟机[root@kvm-server qemu] [root@kvm-server qemu] Id 名称 状态 ---------------------------------------------------- 6 centos7.0 running - vm3 关闭[root@kvm-server qemu] 可以看到我们新添加的磁盘vdb
虚拟机克隆 1.图形界面:Applications (左上角)—–> System Tools ——>Virtual Machine Manager 关闭要克隆的虚拟机,右键点击虚拟机选择Clone
2.在终端执行命令克隆
1 2 3 4 5 6 7 8 9 10 11 [root@kvm-server ~] 正在分配 'vm5.qcow2' | 5.0 GB 00:00 成功克隆 'vm5'。 -o origin-原始 -n :指定新客户机的名字[root@kvm-server ~] Id 名称 状态 ---------------------------------------------------- - vm2 关闭 - vm5 关闭
kvm高级命令 磁盘镜像文件的格式:raw qcow2
raw:立刻分配空间,不管你有没有用到那么多空间
qcow2:只是承诺给你分配空间,但是只有当你需要用空间的时候,才会给你空间。最多只给你承诺空间的大小,避免空间浪费
建立qcow2格式磁盘文件 1 2 3 4 5 6 7 8 9 10 11 12 13 [root@kvm-server images] /var/lib/libvirt/images[root@kvm-server images] Formatting 'vm1.qcow2', fmt =qcow2 size=5368709120 encryption=off cluster_size=65536 lazy_refcounts=off [root@kvm-server images] Formatting 'vm2.raw', fmt =raw size=5368709120 [root@kvm-server images] [root@kvm-server images]
挂载磁盘 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 查看vm2磁盘镜像分区信息--(需要等一会会)[root@kvm-server images] 文件系统 大小 已用空间 可用空间 使用百分比% vm2:/dev/sda1 1014M 92M 922M 10% vm2:/dev/centos/root 3.5G 863M 2.6G 25%[root@kvm-server ~] [root@kvm-server ~] [root@kvm-server ~] bin dev home lib64 mnt proc run srv tmp var boot etc lib media opt root sbin sys usr[root@kvm-server ~]
KVM存储配置 1 2 /var/lib/libvirt/images/
1、图形方式创建存储池
2、命令方式创建存储池
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 1.创建基于文件夹的存储池(目录,可自定义)[root@kvm-server ~] 2.定义存储池与其目录--(vm1是存储池名字,自己自定义)[root@kvm-server ~] Pool vm1 defined 3.创建已定义的存储池 (1)构建已定义的存储池[root@kvm-server ~] Pool vm1 built (2)查看已定义的存储池,存储池不激活无法使用。[root@kvm-server ~] Name State Autostart ------------------------------------------- default active yes ISO active yes vm1 inactive no 4.激活并自动启动已定义的存储池[root@kvm-server ~] Pool vm1 started[root@kvm-server ~] Pool vm1 marked as autostarted[root@kvm-server ~] Name State Autostart ------------------------------------------- default active yes ISO active yes vm1 active yes 这里vm1存储池就已经创建好了,可以直接在这个存储池中创建虚拟磁盘文件了。 5.在存储池中创建虚拟机存储卷--(vm1-1.qcow2是自定义存储卷的名字,2G是自定义的大小)[root@kvm-server ~] Vol vm1-1.qcow2 created[root@kvm-server ~] 总用量 196K -rw------- 1 root root 193K 10月 25 16:04 vm1-1.qcow2 6.存储池相关管理命令 (1)在存储池中删除虚拟机存储卷[root@kvm-server ~] Vol vm1-1.qcow2 deleted (2)取消激活存储池[root@kvm-server ~] Pool vm1 destroyed (3)删除存储池定义的目录/data/vmfs[root@kvm-server ~] Pool vm1 deleted (4)取消定义存储池[root@kvm-server ~] Pool vm1 has been undefined 到此kvm存储池配置与管理操作完毕。
kvm快照 1、图形方式创建快照
2、命令方式创建快照
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 为虚拟机vm2创建一个快照(磁盘格式必须为qcow2)[root@kvm-server ~] 注意:如果在创建快照的时候报错: error: unsupported configuration: internal snapshot for disk vda unsupported for storage type raw 查看磁盘文件格式[root@kvm-server images] image: /var/lib/libvirt/images/vm2.qcow2 file format: qcow2 virtual size: 5.0G (5368709120 bytes) disk size: 5.0G cluster_size: 65536 Format specific information: compat: 1.1 lazy refcounts: true
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [root@kvm-server ~] Name Creation Time State ------------------------------------------------------------ 创建--格式为raw,名字为vm2-1.raw,大小为2G的磁盘[root@kvm-server ~] Formatting '/var/lib/libvirt/images/vm2-1.raw', fmt =raw size=2147483648 [root@kvm-server ~] -rw-r--r-- 1 root root 2.0G 10月 25 16:25 /var/lib/libvirt/images/vm2-1.raw[root@kvm-server ~] [root@kvm-server qemu]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 [root@kvm-server images] [root@kvm-server images] [root@kvm-server qemu] 错误:不支持的配置:存储类型 vdb 不支持磁盘 raw 的内部快照 由于raw的磁盘格式,不支持快照功能,我们需要将其转换为qcow2的格式[root@kvm-server qemu] [root@kvm-server qemu] [root@kvm-server images] 总用量 21G -rw------- 1 root root 5.1G 10月 24 18:59 centos7.0.qcow2 -rw-r--r-- 1 root root 193K 10月 25 16:44 vm2-1.qcow2 -rw-r--r-- 1 root root 2.0G 10月 25 16:25 vm2-1.raw -rw------- 1 root root 5.1G 10月 25 16:13 vm2.qcow2[root@kvm-server images] image: /var/lib/libvirt/images/vm2-1.qcow2 file format: qcow2 virtual size: 2.0G (2147483648 bytes) disk size: 196K cluster_size: 65536 Format specific information: compat: 1.1 lazy refcounts: false [root@kvm-server images]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [root@kvm-server images] [root@kvm-server qemu] 已生成域快照 vm2.snap2 以下操作为回溯快照[root@kvm-server ~] 已生成域快照 vm3-snap1[root@kvm-server ~] [root@kvm-server ~] 已生成域快照 vm3-snap2 查看快照[root@kvm-server ~] 名称 生成时间 状态 ------------------------------------------------------------ vm3-snap1 2019-10-30 15:27:15 +0800 running vm3-snap2 2019-10-30 15:29:37 +0800 shutoff[root@kvm-server ~] 此时你再看虚拟机状态,是处于关闭状态 删除虚拟机快照操作:--需要先关闭虚拟机[root@kvm-server ~] [root@kvm-server ~] 名称 生成时间 状态 ------------------------------------------------------------ vm3-snap1 2019-10-30 15:27:15 +0800 running vm3-snap2 2019-10-30 15:29:37 +0800 shutoff[root@kvm-server ~] 已删除域快照 vm2-snap3[root@kvm-server ~] 名称 生成时间 状态 ------------------------------------------------------------ vm3-snap1 2019-10-30 15:27:15 +0800 running
自动化脚本管理kvm 运行脚本需要先更改好配置文件内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 batch_self_define() { kvmname =`openssl rand -hex 5 ` sourceimage =/var/lib/libvirt/images/vmmodel.img sourcexml =/etc/libvirt/qemu/vmmodel.xml newimg =/var/lib/libvirt/images/${kvmname} .img newxml =/etc/libvirt/qemu/${kvmname} .xml cp $sourceimage $newimg cp $sourcexml $newxml kvmuuid =`uuidgen` kvmmem =${1} 000000 kvmcpu =$2 kvmimg =$newimg kvmmac =`openssl rand -hex 3 | sed -r 's/..\B/&:/g' ` sed -i "s@kvmname@$kvmname@ virsh define $newxml virsh list --all } self_define() { read -p "请输入新虚机名称:" newname read -p "请输入新虚机内存大小(G):" newmem read -p "请输入新虚机cpu个数:" newcpu sourceimage =/var/lib/libvirt/images/vmmodel.img sourcexml =/etc/libvirt/qemu/vmmodel.xml newimg =/var/lib/libvirt/images/${newname} .img newxml =/etc/libvirt/qemu/${newname} .xml cp $sourceimage $newimg cp $sourcexml $newxml kvmname =$newname kvmuuid =`uuidgen` kvmmem =${newmem} 000000 kvmcpu =$newcpu kvmimg =$newimg kvmmac =`openssl rand -hex 3 | sed -r 's/..\B/&:/g' ` sed -i "s@kvmname@$kvmname@ virsh define $newxml virsh list --all } delete_kvm(){ virsh list while true read -p "是否需要关闭lvm或退出(Y/N/T)" ynt if [ $ynt = y ] read -p "请输入你要关闭的kvm:" numb virsh shutdown $numb elif [ $ynt = n ] virsh list --all read -p "请输入你要删除的kvm:" num virsh undefine $num rm -rf /var/lib/libvirt/images/$num* echo "$num 虚拟机已被删除!" else echo "再见!" break fi done } exit_menu(){ green "再见!!!" break } red(){ echo -e "\033[31m\033[01m$1\033[0m" } green(){ echo -e "\033[32m\033[01m$1\033[0m" } yellow(){ echo -e "\033[33m\033[01m$1\033[0m" } blue(){ echo -e "\033[34m\033[01m$1\033[0m" } # 主菜单选择 main_menu() { while true; do red "===============================================" green "|| ____ _____ _______ _________ _______||" yellow "|| / __ \ / _/ |/ / ___/ / __/ __/ |/ / ___/||" blue "||/ /_/ / _/ // / (_ / / _// _// / (_ / ||" yellow "||\___\_\/___/_/|_/\___/ /_/ /___/_/|_/\___/ ||" green "|| ||" red "===============================================" blue "|| >>>>> 清风徐来 <<<<< ||" red "===============================================" echo "1.创建自定义配置单个虚拟机" echo "2.批量创建自定义配置虚拟机" echo "3.批量创建默认配置虚拟机" echo "4.删除虚拟机" echo "5.退出" red "===============================================" read -p "选取你的操作(1/2/3/4/5):" op case $op in 1)self_define;; 2) read -p "请输入要创建的虚拟机的个数:" num read -p "请输入新虚机内存大小(G):" newmem read -p "请输入新虚机cpu个数:" newcpu for((i=1;i<=$num;i++)) do batch_self_define $newmem $newcpu done;; 3) read -p "请输入要创建的虚拟机的个数:" num for((i=1;i<=$num;i++)) do batch_self_define 1 1 done;; 4) delete_kvm ;; 5) exit_menu ;; *) echo "输入错误,请重新执行脚本" exit ;; esac red "===============================================" read -p "按任意键返回主菜单" any_key clear done } #运行 main_menu
配置文件模板 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 <domain type ='kvm' > <name>kvmname</name> <uuid>kvmuuid</uuid> <memory unit ='KiB' >kvmmem</memory> <currentMemory unit ='KiB' >kvmmem</currentMemory> <vcpu placement ='static' >kvmcpu</vcpu> <os> <type arch ='x86_64' machine='pc-i440fx-rhel7.0.0' >hvm</type> <boot dev ='hd' /> </os> <features> <acpi/> <apic/> </features> <cpu mode ='custom' match='exact' check='partial' > <model fallback ='allow' >Haswell-noTSX</model> </cpu> <clock offset ='utc' > <timer name ='rtc' tickpolicy='catchup' /> <timer name ='pit' tickpolicy='delay' /> <timer name ='hpet' present='no' /> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <pm> <suspend-to-mem enabled ='no' /> <suspend-to-disk enabled ='no' /> </pm> <devices> <emulator>/usr/libexec/qemu-kvm</emulator> <disk type ='file' device='disk' > <driver name ='qemu' type='qcow2' /> <source file ='kvmimg' /> <target dev ='vda' bus='virtio' /> <address type ='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0' /> </disk> <controller type ='usb' index='0' model='ich9-ehci1' > <address type ='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x7' /> </controller> <controller type ='usb' index='0' model='ich9-uhci1' > <master startport ='0' /> <address type ='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0' multifunction='on' /> </controller> <controller type ='usb' index='0' model='ich9-uhci2' > <master startport ='2' /> <address type ='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x1' /> </controller> <controller type ='usb' index='0' model='ich9-uhci3' > <master startport ='4' /> <address type ='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x2' /> </controller> <controller type ='pci' index='0' model='pci-root' /> <controller type ='virtio-serial' index='0' > <address type ='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0' /> </controller> <interface type ='network' > <mac address ='52:54:00:kvmmac' /> <source network ='default' /> <model type ='virtio' /> <address type ='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0' /> </interface> <serial type ='pty' > <target type ='isa-serial' port='0' > <model name ='isa-serial' /> </target> </serial> <console type ='pty' > <target type ='serial' port='0' /> </console> <channel type ='unix' > <target type ='virtio' name='org.qemu.guest_agent.0' /> <address type ='virtio-serial' controller='0' bus='0' port='1' /> </channel> <input type ='mouse' bus='ps2' /> <input type ='keyboard' bus='ps2' /> <memballoon model ='virtio' > <address type ='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' /> </memballoon> </devices> </domain>
随机生成mac地址 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 B:字母数字与字母数字分割,非字母数字与非字母数字分割 &:表示原来的内容 其中方式如下: 99:6e:67 94:89:e3 c5:66:90 参数解释: openssl rand -hex 5 openssl rand -hex 5
KVM网络配置 四种网络 1.NAT default方式:支持主机与虚拟机互访,虚拟机访问外界网络,但不支持外界访问虚拟机。2.isolated隔离,vmware--host-only:仅主机模式。外网不能访问虚拟机,虚拟机也不能访问外网3.bridge —-桥接模式属于桥接口4.路由模式
nat网络
桥接网络
隔离网络
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 [root@kvm-server ~] bridge name bridge id STP enabled interfaces virbr0 8000.525400831963 yes virbr0-nic vnet0 vnet1 注意:这里vnet网卡,是每台启动的虚拟机正在使用的网卡设备,每台虚拟机使用的不同 [root@kvm-server ~] 来到vm2的虚拟机,ping不通百度[root@kvm-server ~] ping:baidu.com:Name or service not known[root@kvm-server ~] 来到vm2的虚拟机,恢复正常[root@kvm-server ~] PING www.a.shifen.com (61.135.169.125)56(84) bytes of data. 64 bytes from 61.135.169.125(61.135.169.125): icmp_seq =1 ttl=55 time=2.24 ms
配置文件方式配置桥接:在宿主机上 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 配置文件方式配置桥接:在宿主机上[root@kvm-server ~] [root@kvm-server ~] 1.定义网卡配置文件[root@kvm-server network-scripts] [root@kvm-server network-scripts] TYPE =Bridge NAME =br0 DEVICE =br0ONBOOT ="yes" BOOTPROTO =staticIPADDR =10.31 .162.90 GATEWAY =10.31 .162.1 NETMASK =255.255 .255.0 DNS1 =114.144 .144.144 DNS2 =8.8 .8.8 然后看清楚宿主机正在使用的网卡,修改配置文件,(将物理机网卡桥到桥接网卡)[root@kvm-server network-scripts] [root@kvm-server network-scripts] NAME =enp0s25 DEVICE =enp0s25 ONBOOT =yes BRIDGE =br0 2.重启libvirtd服务[root@kvm-server network-scripts] 3.重启network服务 [root@kvm-server network-scripts]
然后去查看有没有新设备生成
可以看到,我们先添加的网卡设备
添加完成后,运行虚拟机查看IP地址,就可以看到添加的桥接网卡了
移除桥接网卡操作
1 2 3 4 5 6 7 8 9 10 11 12 删除桥接网卡步骤: 1.删除br0的配置文件[root@localhost ~] [root@localhost network-scripts] [root@localhost network-scripts] 2.修改正常网卡的配置文件[root@localhost network-scripts] 3.重启系统[root@localhost network-scripts] [root@localhost network-scripts]
通过配置文件方式创建nat网络: 1 2 3 4 5 6 7 配置文件方式创建nat网络: 1.首先需要一个模板文件,通过这个模板文件创建自定义的nat网络。[root@kvm-server ~] [root@kvm-server networks] autostar default.xml[root@kvm-server networks] [root@kvm-server networks]
重启服务
1 2 3 4 [root@kvm-server netwoeks] 在某个(比如vm3)虚拟机去添加此设备测试
创建isolated网络,隔离网络 1 2 3 4 配置文件方式创建isolated网络隔离网络:[root@kvm-server ~] [root@kvm-server networks] [root@kvm-server networks]
启动:
1 2 3 4 5 6 [root@kvm-server networks] 开机自启动:[root@kvm-server networks] 查看所有的网络:[root@kvm-server networks]
图文方式创建nat网络