KVM | centos 安装 window 虚拟机

本文介绍了如何在 CentOS 7.3 系统上使用 KVM 安装和配置 Windows 虚拟机。内容包括检查虚拟化支持、关闭 SELinux、加载 KVM、搭建网桥和安装 VNC 环境,以实现远程访问和管理Windows虚拟机。

KVM | centos 安装 window 虚拟机

环境: CENTOS 7.3

1. 准备

1.1 检查是否支持虚拟化

cat /proc/cpuinfo | egrep 'vmx|svm'
要求结果中返回相关字段

1.2 关闭 selinux

vi /etc/sysconfig/selinux
要求SELINUX=disabled

2. 安装

  1. yum -y install qemu-kvm qemu-kvm-tools
  2. yum -y install libvirt python-virtinst libvirt-python virt-manager libguestfs-tools bridge-utils virt-install

2.1 加载 KVM

 lsmod | grep kvm
kvm_intel             170181  0
kvm                   554609  1 kvm_intel
irqbypass              13503  1 kvm

2.2 启动 KVM

systemctl start libvirtd.service
systemctl enable libvirtd.service  
systemctl status libvirtd  
systemctl is-enabled libvirtd  

2.3 搭建网桥

将原有网卡的配置备份一份,然后进行修改
物理网卡的配置ifcfg-eth0

DEVICE=eth0
BRIDGE=br0  #指向网桥br0
ONBOOT=yes
TYPE=Ethernet

ifcfg-br0网卡配置

TYPE=Bridge
DEVICE=br0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=10.24.18.151
GATEWAY=10.24.18.254
NETMASK=255.255.255.128

因为我这是同时连接了2个网段,因此还会设置eth2和br2,区别就是,网关只能在一个口上设置。

systemctl restart network.service后即可。
brctl show可以看到网桥名字
brctl show

2.4 安装 VNC 环境

yum -y install tigervnc tigervnc-server

virt-install --name $name --ram $ram --vcpus=$cpu --disk path=$img,size=$sizeG --network bridge=$eth --os-type=windows --os-variant=$os --cdrom $iso --vnclisten=$ip --vncport=$port --vnc

--name: 虚拟机名称
--ram:虚拟机内存
--vcpus:虚拟机 CPU 个数
--cdrom:从本地安装
--disk: 生成的磁盘文件路径,以及磁盘大小
--network:网络模式,默认为 nat

或直接拷贝现有的配置文件/etc/libvirt/qemu/目录下xml文件。

<!--
WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE
OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
  virsh edit win8_8_200_6902
or other application using the libvirt API.
-->

<domain type='kvm'>
  <name>win8_8_200_wx_3</name>
  <uuid>29420437-571d-4965-7c54-b27d3311b95a</uuid> # 有多个node的话要不同的值
  <memory>8388608</memory>
  <currentMemory>8388608</currentMemory>
  <vcpu>2</vcpu>
  <os>
    <type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type> #支持的服务器类型可用命令查看
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <clock offset='localtime'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/libexec/qemu-kvm</emulator> # 这位实际的位置,默认是在此目录
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      <source file='/data/iso/win8_8.img'/>  # 镜像包位置
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' unit='0'/>
    </disk>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source file='/data/iso/win8_8.img'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' unit='0'/>
    </disk>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <interface type='bridge'>
      <mac address='60:f1:8a:30:27:10'/> # 这必须注意,MAC地址不能和机器上的地址相同
      <source bridge='br0'/>  # 否则会有环路报警,可随意写个不同的即可
      <target dev='vnet0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x00' function='0x0'/> # 不同网口slot不同
    </interface>
    <interface type='bridge'>
      <mac address='60:f1:8a:30:27:11'/> # 同上
      <source bridge='br2'/>
      <target dev='vnet1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <input type='tablet' bus='usb'/>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='6901' autoport='no' listen='10.24.18.151'> # vnc连接监控端口
      <listen type='address' address='10.24.18.151'/>
    </graphics>
    <video>
      <model type='vga' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </memballoon>
  </devices>
</domain>

virsh list --all 列出所有虚拟机

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 3     win_2008                       running
 5     win8_8_200                     running

然后就可以通过vnc viewer来远程访问这个window了,进去之后配置网卡等或管理BMC

virsh shutdown win8_8_200用于关闭
virsh start win8_8_200 用于启动
virsh destroy win8: 销毁虚拟机
virsh undefine win_2008 从列表中删除

参考

https://github.com/jaywcjlove/handbook/blob/master/CentOS/CentOS7安装KVM虚拟机详解.md

提供的引用内容中未提及在CentOS 7系统上安装Windows虚拟机的方法,不过通常可以按以下通用步骤进行: ### 安装前准备 需要准备好Windows系统镜像文件,可以从微软官方网站下载对应的Windows版本镜像。同时要确保CentOS 7系统所在的主机具备足够的硬件资源,如CPU、内存、硬盘空间等,一般建议至少4GB以上内存,足够的硬盘空间以存放虚拟机文件和Windows系统。 ### 选择虚拟化软件 可以选择一些常见的虚拟化软件,如KVM(Kernel-based Virtual Machine)或VMware Workstation(有适用于Linux的版本)等。 #### 以KVM为例进行安装 1. **检查CPU虚拟化支持**: ```bash egrep -c '(vmx|svm)' /proc/cpuinfo ``` 如果结果大于0,说明CPU支持虚拟化。 2. **安装KVM及相关工具**: ```bash yum install qemu-kvm libvirt libvirt-python libguestfs-tools virt-install -y ``` 3. **启动并设置开机自启libvirtd服务**: ```bash systemctl start libvirtd systemctl enable libvirtd ``` 4. **创建虚拟机**: 使用`virt-install`命令创建Windows虚拟机,示例命令如下: ```bash virt-install \ --name win10-vm \ --ram 4096 \ --vcpus 2 \ --os-type windows \ --os-variant win10 \ --disk path=/var/lib/libvirt/images/win10.qcow2,size=60 \ --cdrom /path/to/windows.iso \ --network network=default \ --graphics vnc,listen=0.0.0.0 ``` 上述命令中,`--name`指定虚拟机名称,`--ram`指定分配的内存大小,`--vcpus`指定CPU核心数,`--os-type`和`--os-variant`指定操作系统类型和版本,`--disk`指定虚拟机磁盘文件路径和大小,`--cdrom`指定Windows系统镜像文件路径。 #### 以VMware Workstation为例进行安装 1. **下载并安装VMware Workstation**: 从VMware官方网站下载适用于Linux的VMware Workstation安装包,然后进行安装。 2. **创建新虚拟机**: 打开VMware Workstation,选择“创建新虚拟机”,按照向导提示进行操作,在选择操作系统时选择对应的Windows版本,指定Windows系统镜像文件路径等信息,完成虚拟机创建。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值