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可以看到网桥名字

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

KVM | centos 安装 window 虚拟机的更多相关文章

  1. Centos7.3 搭建KVM 命令安装VM虚拟机

      操作系统:centos7.3   一.安装KVM 1. 验证CPU是否支持KVM:如果结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的. egrep '(vmx|svm)' ...

  2. Kvm虚拟化安装与虚拟机创建

    1. 验证CPU是否支持KVM:如果结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的. egrep '(vmx|svm)' /proc/cpuinfo 2. 关闭SELinux ...

  3. 在 KVM 上安装 Win7 虚拟机

    之前都是在用Linux 虚机,现在有需要用到Win7 虚机,才发现在 KVM 上安装 Win7 的过程远比想象中的复杂.本文就把其过程做个简单总结. 1. 在 Virtual Machine Mana ...

  4. kvm虚拟化安装及虚拟机创建

    1.开启虚拟化(VMware虚拟机为例),安装centos7操作系统. 2.查看CPU是否开启虚拟化 #zgrep  "vmx" /proc/cpuinfo 3.配置yum源,通过 ...

  5. centos安装xen虚拟机并且配置bridge

    主要参考的几个官方文档: http://wiki.centos.org/HowTos/Xen/Xen4QuickStart 在centos上安装xen组件并建立dom0 http://wiki.cen ...

  6. CentOS 7.5下KVM的安装与配置

    由于没有物理机可用,在自己的VMware Workstation中CentOS 7.5下搭建完成. 首先查看VMware Workstation是否支持虚拟化,把红框内打钩即可. 虚拟化开启并安装Ce ...

  7. kvm上已安装的虚拟机修改为桥接网络

    kvm上安装的虚拟机默认使用的nat网络格式,现在已经调整kvm主机为桥接方式了,但是已经安装的虚拟机还是nat方式,所以需要修改一下 让KVM虚拟主机使用桥接网络br0 修改虚拟机的配置文件,默认存 ...

  8. Centos 6.7 KVM下安装windows 7系统

    装windows 虚拟机之前你需要做以下准备工作:A.下载windows 镜像文件和 windows 的驱动iso 文件到本地,然后上传至服务器的某个目录(当然你也可以直接在服务器上下载):B.你本地 ...

  9. kvm安装window系统及使用NFS动态迁移

    验证是否开启虚拟化 # grep -E 'svm|vmx' /proc/cpuinfo - vmx is for Intel processors - svm is for AMD processor ...

随机推荐

  1. AVR单片机教程——矩阵键盘

    本文隶属于AVR单片机教程系列.   开发板上有4个按键,我们可以把每一个按键连接到一个单片机引脚上,来实现按键状态的检测.但是常见的键盘有104键,是每一个键分别连接到一个引脚上的吗?我没有考证过, ...

  2. 利用在线绘制3d几何图形工具分析投影变化

    业余写了个在线绘制几何图形工具,工具链接如下: https://tinygltf.xyz/drawgeometry/ 通过脚本代码在可视化窗口添加对应的点,线段,成像平面推到投影后坐标的计算: 点A通 ...

  3. jenkins 与 gitlab 的持续集成

    前言介绍 gitlab与jenkins的安装部署请参考之前的文章:这里介绍一下jenkins与gitlab结合的好处. gitlab可以自己实现CICD功能,jenkins也可以结合其他工具来实现CI ...

  4. DRF框架之Serializer序列化器的序列化操作

    在DRF框架中,有两种序列化器,一种是Serializer,另一种是ModelSerializer. 今天,我们就先来学习一下Serializer序列化器. 使用Serializer序列化器的开发步骤 ...

  5. Kafka源码工程examples项目配置log4j

    examples项目启动想知道有哪些错误,通过日志了解代码执行逻辑,但是启动SimpleConsumerDemo了报错如下: log4j.proproties也配置了 log4j.proproties ...

  6. 实验16:ACL

    实验13-1:标准ACL Ø    实验目的通过本实验可以掌握:(1)ACL 设计原则和工作过程(2)定义标准ACL(3)应用ACL(4)标准ACL 调试 Ø    拓扑结构 本实验拒绝PC1 所在网 ...

  7. JAVA byte数组转化为16进制字符串输出

    最简单的方法: 利用javax.xml.bind包下的DatatypeConverter printHexBinary public static java.lang.String printHexB ...

  8. qt5连接sqlite数据库实例

    建库 在VS下新建qt console appication 代码: #include <iostream> #include <Qtsql/QSqlDatabase> #in ...

  9. POJ_1050_最大子矩阵

    http://poj.org/problem?id=1050 这道题是最大子串的扩展,遍历过每一个子矩阵就好了,期间用了最大子串的方法. #include<iostream> #inclu ...

  10. 利用selenium模拟登陆

    第一部:利用selenium登陆 导入selenium库 from selenium import webdriver 明确模拟浏览器在电脑中存放的位置,比如我存在当前目录 chromePath = ...