KVM及虚拟机部署

Posted Jeffry Jiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了KVM及虚拟机部署相关的知识,希望对你有一定的参考价值。

1、准备工作

  • 准备一台linux操作系统
  • 准备qcow2格式操作系统镜像
  • 准备部署虚拟机脚本

2、KVM安装工作

软件包安装

yum install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install vim -y

检查KVM内核加载状态

lsmod|grep kvm 
kvm_intel             148081  0
kvm                   461126  1 kvm_intel

启动KVM相关服务

systemctl enable libvirtd.service
systemctl start libvirtd.service

3、磁盘挂载

格式化、创建挂载点、进行挂载

mkfs.xfs -f /dev/sdb
mkdir -p /data/disk_sdb
mount /dev/sdb  /data/disk_sdb

将挂载点加入到开机启动

vi /etc/fstab
UUID=2d67f14a-be9a-4099-ae91-e6f0ebced55b /                       xfs     defaults        0 0
UUID=8b28b9ec-d7bc-4702-b9f6-a2a892bd50a6 /boot                   xfs     defaults        0 0
/dev/sdb                                 /data/disk_sdb           xfs     defaults        0 0

4、创建桥接网络

将虚拟机与服务器物理网卡进行桥接

[root@BJYH-F325-0112-SEV-NF5280-2U23 disk_sdb]# virsh iface-bridge bond0.150 os_manage --no-stp
Created bridge os_manage with attached device bond0.150
Bridge interface os_manage started

[root@BJYH-F325-0112-SEV-NF5280-2U23 disk_sdb]# virsh iface-bridge bond0 manage_vlan --no-stp
Created bridge manage_vlan with attached device bond0
Bridge interface manage_vlan started

查看桥接网络

brctl show

5、上传镜像及脚本

创建镜像目录,将windows和linux镜像放在/data/images/目录下

[root@test-linux-node110 ~]# mkdir -p /data/images/
[root@test-linux-node110 ~]# ls -l /data/images/
centos_base.qcow2 
kvm-v2.2.sh create_vm 
name.txt

上传kvm脚本到/data/images/目录下
编辑虚拟机目录name.txt
vim name.txt

test01      4 8  1  100  sdb virbr0  192.168.122.11/24  #参考样例
test02      4 8  0  100  sdb virbr0  192.168.122.12/24

6、执行脚本创建虚机

[root@test-linux-node110 ~]# sh kvm-v2.2.sh create_vm  #创建虚拟机
15%
15%

Starting install...
Domain creation completed.

Starting install...
Domain creation completed.
Formatting '/data/disk_sdb/test01_sdb.qcow2', fmt=qcow2 size=107374182400 cluster_size=65536 lazy_refcounts=off refcount_bits=16
Disk attached successfully

[root@test-linux-node110 ~]# virsh list  #查看虚拟机
 Id    Name                           State
----------------------------------------------------
 1     test01                         running
 2     test02                         running
[root@test-linux-node110 ~]# virsh console 1 #进入到虚拟机系统
Connected to domain test01
Escape character is ^]

7、Windows虚拟机手动创建

virt-install -n test-env-bj02-windows-ygpt-14e129e215e62  -r 4096 --vcpus 4 \\
              --virt-type kvm --os-type=windows --os-variant windows --noautoconsole \\
              --description "test-env-bj02-windows-ygpt-14e129e215e62"  \\
              --network bridge=br-bond0.103,model=virtio  \\
              --graphics vnc,listen=0.0.0.0 \\
              --disk path=/data/disk_sda/test-env-bj02-windows-ygpt-14e129e215e62.qcow2,format=qcow2,device=disk,bus=scsi \\
              --boot hd=/data/disk_sda/test-env-bj02-windows-ygpt-14e129e215e62.qcow2 \\
              --channel unix,path=/var/lib/libvirt/qemu/test-env-bj02-windows-ygpt-14e129e215e62.agent,mode=bind,target_type=virtio,name=org.qemu.guest_agent.0

8、脚本参数说明

create_vm:根据配置文件创建虚拟机,并配置ip
create_disk:根据配置文件给虚拟机在线添加磁盘
config_network:根据配置文件,重新配置虚拟机网络
del_vm:删除配置文件中的虚拟机,并删除磁盘
add_interface:根据配置文件,仅添加网卡,不配置网络
namt.txt 配置说明:

以上是关于KVM及虚拟机部署的主要内容,如果未能解决你的问题,请参考以下文章

KVM及虚拟机部署

KVM及虚拟机部署

部署及命令行管理KVM

部署KVM虚拟化平台

虚拟化技术——CentOS 7.8 安装部署 KVM 虚拟机及基本操作

部署KVM虚拟化平台------搭建