虚拟机桥接网络及免安装部署CentOS7虚机
桥接网络配置
1.宿主机ens33配置
TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=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=ens33 UUID=a4de24d9-1d93-4212-8943-ec2fcfa33bde DEVICE=ens33 ONBOOT=yes BRIDGE=br0 #IPADDR=192.168.137.103 #NETMASK=255.255.255.0 #GATEWAY=192.168.137.2 #DNS1=114.114.114.114 #ZONE=
2.宿主机br0网卡配置
PROXY_METHOD=NONE BROWSER_ONLY=NO BOOTPROTO=STATIC DEVICE=br0 IPADDR=192.168.137.103 NETMASK=255.255.255.0 GATEWAY=192.168.137.2 DNS1=114.114.114.114 DEALY=0
3.修改虚拟机vm2配置中的网卡
[root@lsx03-local-kvm ~]# virsh edit vm2
以下部分修改:
4.设置宿主机桥接网络
[root@lsx03-local-kvm ~]# virsh iface-bridge ens33 br0
5.查看宿主机网桥
[root@lsx03-local-kvm vm2]# brctl show bridge name bridge id STP enabled interfaces br0 8000.000c2943aa73 no ens33 vnet1 virbr0 8000.5254005a55b7 yes virbr0-nic vnet0
免安装发布虚拟机CentOS7
直接下载操作系统的“guest image”并由其直接运行虚拟机
在CentOS官方的下载页面中,找到供Cloud使用的镜像文件,使用wget等命令将其下载到物理机中
wget http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-1907.qcow2.xz
如果没有wget命令,先
yum install -y wget
准备虚拟机的系统盘
[root@lsx03-local-kvm data]# mkdir vm1
[root@lsx03-local-kvm vm1]# cd vm1
[root@lsx03-local-kvm vm1]# xz -d CentOS-7-x86_64-GenericCloud-1907.qcow2.xz
[root@lsx03-local-kvm vm1]# cp CentOS-7-x86_64-GenericCloud-1907.qcow2 /var/lib/libvirt/images/vm1.qcow2
[root@lsx03-local-kvm vm1]# cd /var/lib/libvirt/images/
需要清空镜像中的root密码
安装工具
yum install -y libguestfs*
清空密码
virt-edit -a /var/lib/libvirt/images/vm1.qcow2 /etc/shadow -e 's/^root:[^:]*:/root::/'
禁用cloud-init服务
guestfish -a ./vm1.qcow2 -i rm '/etc/systemd/system/multi-user.target.wants/cloud-config.service'
guestfish -a ./vm1.qcow2 -i rm '/etc/systemd/system/multi-user.target.wants/cloud-final.service'
guestfish -a ./vm1.qcow2 -i rm '/etc/systemd/system/multi-user.target.wants/cloud-init-local.service'
guestfish -a ./vm1.qcow2 -i rm '/etc/systemd/system/multi-user.target.wants/cloud-init.service'
备注:
在有较新版本cloud-init工具的镜像中,cloud-*.service可能位于'/etc/systemd/system/cloud-init.target.wants/路径下,因此上述命令可能需要一些修改
创建管理虚拟机
回到原/data/vm1路径下
创建vm1.xml文件
<domain type='kvm' id='1'>
<name>vm1</name>
<memory unit='KiB'>1048576</memory>
<currentMemory unit='KiB'>1048576</currentMemory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type>
</os>
<features>
<acpi/>
<apic/>
</features>
<cpu mode='custom' match='exact'>
<model fallback='allow'>Broadwell-noTSX-IBRS</model>
</cpu>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/var/lib/libvirt/images/vm1.qcow2'/>
<target dev='vda' bus='virtio'/>
</disk>
<interface type='bridge'>
<source bridge='br0'/> 此处需修改为桥接模式,注意!
<target dev='vnet0'/>
<model type='virtio'/>
</interface>
<console type='pty' tty='/dev/pts/5'>
<source path='/dev/pts/5'/>
<target type='serial' port='0'/>
<alias name='serial0'/>
</console>
</devices>
</domain>
创建虚拟机vm1
[root@lsx03-local-kvm vm1]# virsh define vm1.xml
定义域 vm1(从 vm1.xml)
[root@lsx03-local-kvm vm2]# virsh start vm1
域 vm1 已开始
[root@lsx03-local-kvm vm2]# virsh console vm1
连接到域 vm1
换码符为 ^]
[ 42.814527] random: crng init done
CentOS Linux 7 (Core)
Kernel 3.10.0-957.27.2.el7.x86_64 on an x86_64
localhost login: root
[root@localhost ~]#
[root@localhost ~]#
至此,免安装系统发布完毕
引用:
https://blog.youkuaiyun.com/sch0120/article/details/83508879