KVM虚拟化安装配置
一、KVM的基础配置及安装:
1、查看是CPU否支持虚拟化:
[root@oldboy-node1 ~]# grep -E "(vmx|svm)" /proc/cpuinfo
vmx:inter
svm:amd
[root@oldboy-node1 ~]# lsmod | grep kvm
kvm_intel 148081 0
kvm 461126 1 kvm_intel
2、安装KVM软件包及配置桥接:
yum -y install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install
brctl addbr br0 #建立一个逻辑网段,名称为br0
ip link set eth0 up #激活端口
brctl addif br0 eth0 #让eth0 成为br0 的一个端口(注意,这步会断网)
####编辑修改网络设备脚本文件,增加网卡设备br0####
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=172.16.57.24
NETMASK=255.255.255.0
GATEWAY=172.16.57.1
DNS1=202.96.209.133
#####################################
增加物理网卡配置
BRIDGE=br0
ip addr add 192.168.1.1/24 dev br0 #设置IP地址
ip addr show br0 #查看IP地址
ip route add default via 192.168.1.254 #更改默认路由(写网关)
3、启动服务:
systemctl enable libvirtd.service
systemctl start libvirtd.service
systemctl status libvirtd.service
4、安装虚拟机:
创建硬盘:
qemu-img create -f raw /路径/命名.raw 10g指定大小
创建虚拟机:
virt-install --name centos --virt-type :指定虚拟机类型(kvm\qemu\xen)
--name :指定虚拟机的名称
--raw :指定内存大小
--cdrom :指定镜像文件
--disk :指定磁盘路径
--network :指定网络类
--vcpu :指定CPU核数
安装虚拟机
virt-install --name centos-7.2 --virt-type kvm --vcpu 4 --ram 2048 --cdrom=/home/opt/centos7.iso --disk path=/home/opt/centos7.raw --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
5、虚拟机的管理:
当前正在运行的虚拟机:
virsh list
查看物理机的虚拟机:
virsh list --all
关闭虚拟机 打开虚拟机 删除虚拟机 挂起虚拟机 恢复虚拟机
virsh shutdown 虚拟机名 virsh start virsh undefine virsh suspended virsh resume
virsh destroy 克隆虚拟机: (旧虚拟机) (新虚拟机) ##旧的必须关机
virt-clone -o centos7-1 -n centos7-3 -f /home/opt/centos7-3.raw --check all=off
二、为虚拟机增加CPU,内存,网卡及硬盘(操作都需要关闭虚拟机):
1、增加CPU:
查看CPU信息:
virsh dominfo vm1-clone | grep CPU
将xml备份:
cd /etc/libvirt/qemu/
cp webServer.xml webServer.xml.bak
修改xml文件:
vi webServer.xml
###########################################
<name>webServer</name>
<uuid>25728d37-cf32-491e-97e7-3114a7d6f8d2</uuid>
<memory unit='KiB'>8192000</memory>
<currentMemory unit='KiB'>8192000</currentMemory>
<vcpu placement='static'>4</vcpu> #修改CPU核数
##########################################
修改后需要更新一下配置文件:
virsh define WebServer.xml
启动虚拟机:
virsh start webServer
2、增加内存:
查看CPU信息:
virsh dominfo webServer | grep memory
将xml备份:
cd /etc/libvirt/qemu/
cp webServer.xml webServer.xml.bak
修改xml文件:
vi webServer.xml
#############################################
<name>webServer</name>
<uuid>25728d37-cf32-491e-97e7-3114a7d6f8d2</uuid>
<memory unit='KiB'>8192000</memory> #修改内存大小
<currentMemory unit='KiB'>8192000</currentMemory> #修改最大内存
<vcpu placement='static'>4</vcpu>
#############################################
修改后需要更新一下配置文件:
virsh define WebServer.xml
启动虚拟机:
virsh start webServer
3、增加网卡:
增加网卡: (虚拟机名字)
virsh attach-interface webServer --type bridge --source br0
查看虚拟机有几个网卡:
virsh domiflist webServer
将xml备份:
cd /etc/libvirt/qemu/
cp webServer.xml webServer.xml.bak
修改xml文件:
vi /etc/libvirt/qemu/webServer.xml
把mac地址写进去(在上个网卡下面写入):
<interface type='bridge'>
<mac address='52:54:00:0a:d7:1d'/>
<source bridge='br0'/>
<model type='rtl8139'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
###########################
修改后需要更新一下配置文件:
virsh define WebServer.xml
启动虚拟机:
virsh start webServe
4、增加硬盘:
创建硬盘文件:
qemu-img create -f qcow2 /home/kvmdata/WebServer.img 500G
修改虚拟机的xml文件:
cd /etc/libvirt/qemu/
cp webServer.xml webServer.xml.bak
vi webServer.xml
####增加硬盘配置###
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='none'/>
<source file='/home/kvmdata/WebServer.img'/>
<target dev='vdb' bus='virtio'/>
</disk>
###################

修改后需要更新一下配置文件:
virsh define WebServer.xml
启动虚拟机:
virsh start webServer
Windows虚拟机增加硬盘(以windows server 2008 r2为例),执行以上步骤后还需要打驱动:
驱动下载地址:http://pan.baidu.com/s/1dFeSN7N
进入到服务器里面会显示以下情况:

点进去后加载驱动程序:

之后就可以在磁盘检测到硬盘,点击右键联机格式化就能用了:
win10只有两个核心
<topology sockets='' cores='' threads=''/>是设置的CPU拓扑信息,CPU核数=socket*cores*thread
Linux就不在这写了,有时间补上,修改下xml文件后重启虚拟机就会检测到硬盘。
KVM虚拟化安装配置的更多相关文章
- centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课
centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课 上半节课 下半节课 f
- KVM 虚拟机 安装配置
原创博文安装配置KVM http://www.cnblogs.com/elvi/p/7718574.htmlweb管理kvm http://www.cnblogs.com/elvi/p/7718582 ...
- kvm虚拟化安装与部署(2)
一.虚拟化VT开启确认 KVM 本身也有一些弱点,那就是相比裸金属虚拟化架构的 Xen . VMware ESX 和 HyperV , KVM 是运行在 Linux 内核之上的寄居式虚拟化架构,会消耗 ...
- 一文告诉你Linux如何配置KVM虚拟化--安装篇
KVM全称"Kernel-based Virtual Machine",即基于内核的虚拟机,在linux内启用kvm需要硬件,内核和软件(qemu)支持,这篇文章教你如何配置并安装 ...
- kvm虚拟化安装及虚拟机创建
1.开启虚拟化(VMware虚拟机为例),安装centos7操作系统. 2.查看CPU是否开启虚拟化 #zgrep "vmx" /proc/cpuinfo 3.配置yum源,通过 ...
- kvm虚拟化存储池配置
1.创建基于文件夹的存储池(目录) 2.定义存储池与其目录 # virsh pool-define-as vmdisk --type dir --target /data/vmfs 3.创建已定义的存 ...
- QEMU/KVM虚拟机安装配置
1.安装相关组件: [root@KVM ~]# yum install qemu-img qemu-kvm qemu-kvm-tools virt-manager virt-viewer virt-v ...
- centos7.2 +cloudstack 4.11 +KVM +ceph 安装配置(网卡带聚合)
系统安装,注意:管理节点版本是有要求的,配置为centos 7.2 最小安装版本(非最小化安装). 系统分区要求 /boot/efi 200MB / 100G /var 100G swap 0 其它给 ...
- Kvm虚拟化安装与虚拟机创建
1. 验证CPU是否支持KVM:如果结果中有vmx(Intel)或svm(AMD)字样,就说明CPU的支持的. egrep '(vmx|svm)' /proc/cpuinfo 2. 关闭SELinux ...
随机推荐
- 李洪强iOS开发之基于彻底解耦合的实验性iOS架构
基于彻底解耦合的实验性iOS架构 这周我决定做一个关于彻底解耦合的应用架构的实验.我想探究的主题是: “如果所有的应用内通讯都通过一个事件流来完成会怎么样?” 我构造了一个待办事项应用,因为这是我 ...
- pthread linux mutet:example1
#include<iostream> #include<unistd.h> #include<pthread.h> #include<string> u ...
- 可以开发着玩一下的web项目
博客项目:发布博客,写博客 车辆.车队管理系统 教师评价系统 仓储管理系统 进销存管理系统 客户管理系统 结算系统 医院病历管理系统
- Say goodbye to 重复代码---Eclipse代码模板的使用
我们在开发过程中,有些代码是经常重复编写的,而且是必要的,如单例模式,观察者模式. 每次都是重复重复再重复. 那么如何提高我们的效率呢? 要记住,我们使用的是IDE,不是文本编辑器.善用工具,事半功倍 ...
- mysql 索引优化,索引建立原则和不走索引的原因
第一:选择唯一性索引 唯一性索引的值是唯一的,可以更快捷的通过该索引来确定某条记录. 2.索引的列为where 后面经常作为条件的字段建立索引 如果某个字段经常作为查询条件,而且又有较少的重复列或者是 ...
- Customize Netbeans Platform Splash Screen and About Dialog
原帖一直打不开,通过谷歌翻译找到的 http://blogs.kiyut.com/tonny/2007/10/18/customize-netbeans-platform-splash-screen- ...
- aspx.cs方法设置webmenthod特性接收ajax请求
cs代码: public partial class TelerikWebMethod : BasePage//System.Web.UI.Page { protected void Page_Loa ...
- "无法加载 DLL“oramts.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。" —— 的解决方法
Oramts.dll 文件公开登记 Oracle 连接所涉及到在通过 Microsoft 分布式事务处理协调器 (MSDTC) 启动的事务中的公共 API. 在事务处理环境中运行时, Syste ...
- (转载)java提高篇(五)-----抽象类与接口
接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法. 本文是转载的(尊重原著),原文地址:http://www.cnblogs.com/chenssy/p/3376708.html 抽象类 ...
- n++ ++n
n = 100 + m++ n = 100 +m; ++m n = 100 + ++m; ++m; n = 100 +m ;