Centos 7+KVM(Windows Server 2008 r2 )
KVM虚拟机
Kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理。
KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。
KVM 架构图:
- Guest:客户机系统,包括CPU(vCPU)、内存、驱动(Console、网卡、I/O 设备驱动等),被 KVM 置于一种受限制的 CPU 模式下运行。
- KVM:运行在内核空间,提供 CPU 和内存的虚级化,以及客户机的 I/O 拦截。Guest 的 I/O 被 KVM 拦截后,交给 QEMU 处理。
- QEMU:修改过的被 KVM 虚机使用的 QEMU 代码,运行在用户空间,提供硬件 I/O 虚拟化,通过 IOCTL /dev/kvm 设备和 KVM 交互。
KVM安装:
1.查看计算机CPU虚拟环境
2.安装KVM及管理工具
yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python python-virtinst libvirt-client -y
3.使用 qemu-img 和 qemu-kvm 命令行方式安装
3.1 qume-img创建虚拟磁盘 (qcow2格式)
简介:qcow2 镜像格式是 QEMU 模拟器支持的一种磁盘镜像。它也是可以用一个文件的形式来表示一块固定大小的块设备磁盘。与普通的 raw 格式的镜像相比,有以下特性:
1.更小的空间占用
2.支持写时复制(cow,copy on write)
3.支持快照(snapshot)
4.可选择基于 zlib 的压缩方式及AES加密
qemu-img create -f qcow2 WindowServer.qcow2 30G
1.开始创建虚拟机并安装2008
virt-install --virt-type kvm --name instance-0002 --ram 1024 --cdrom=/system_iso/windows_server_2008_r2_standard_sp1_x64_617598.iso --boot cdrom --network network=default --graphics vnc,listen=0.0.0.0 --disk path=/kvm_img/WindowServer.qcow2 --noautoconsole --os-type=windows
打开 virt-manager
安装系统
分区格式化
等待文件复制安装
安装完成
其它:
虚拟机管理工具:
virsh 常用命令:
virsh start x 启动名字为x的非活动虚拟机
virsh list 列出虚拟机
virsh create x.xml 创建虚拟机(创建后,虚拟机立即执行,成为活动主机)
virsh suspend x 暂停虚拟机
virsh resume x 启动暂停的虚拟机
virsh shutdown x 正常关闭虚拟机
virsh destroy x 强制关闭虚拟机
# virsh undefine x 删除虚拟机
virsh dominfo x 显示虚拟机的基本信息
virsh domname 2 显示id号为2的虚拟机名
virsh domid x 显示虚拟机id号
virsh domuuid x 显示虚拟机的uuid
virsh domstate x 显示虚拟机的当前状态
virsh dumpxml x 显示虚拟机的当前配置文件(可能和定义虚拟机时的配置不同,因为当虚拟机启动时
,需要给虚拟机分配id号、uuid、vnc端口号等等)
virsh setmem x 512000 给不活动虚拟机设置内存大小
virsh edit x 编辑配置文件(一般是在刚定义完虚拟机之后)
服务器主机网卡不能自动加入br0桥做如下设置:
chkconfig NetworkManager off
chkconfig network on
systemctl stop NetworkManager
虚拟机克隆:
[root@localhost ~]# virt-clone -o template -n logSystem -f /mnt/operation/systemImage/logsystem.qcow2
记录:
1.centos 7 有图形安装
2.找不到字体可以安装 yum install fontconfig
virt-install --name=tomcat_01 --ram 1024 --vcpus=1 --disk path=/var/lib/libvirt/images/tomcat_01.img,size=20,format=raw,bus=virtio --cdrom /var/iso/CentOS-6.7-x86_64-minimal.iso --network bridge=br0,model=virtio --vnc --accelerate --force --autostar
下面通过一个实际的例子来说明如何计算应该分配的交换空间大小以满足内存的过载使用。
某个服务器有32GB的物理内存,想在其上运行64个内存配置为1GB的客户机。在宿主机中,大约需要4GB大小的内存用于满足系统进程、驱动、磁盘缓存及其他应用程序所需(不包括客户机进程所需内存)。计算过程如下:
客户机所需交换分区为:64 x 1GB + 4GB - 32GB = 36GB。
而根据Redhat的建议[7],对于32GB物理内存的RHEL系统推荐使用8GB的交换分区。
所以,在宿主机中总共就需要建立44GB(36GB+8GB)的交换分区来满足安全地实现客户机内存的过载使用。
下面是在一台Ivy Bridge桌面级的硬件平台上进行的简单实验,可以看出客户机并非开始就在宿主机中占用其启动时配置的内存。
Linux中的交换分区的大小分配推荐法则
曾经,有人推荐使用物理内存1/2、1倍、2倍的容量作为SWAP分区的大小。随着计算机内容容量的增大,如果有16G内存的机器,分个16G的Swap空间,似乎感觉有点浪费磁盘空间,而且多数情况下用处也并不大。在Linux系统,我们可以参照Redhat公司为RHEL5、RHEL6推荐的SWAP空间的大小划分原则,在你没有其他特别需求时,可以作为很好的参考依据。
内存小于4GB时,推荐不少于2GB的swap空间;
内存4GB~16GB,推荐不少于4GB的swap空间;
内存16GB~64GB,推荐不少于8GB的swap空间;
KVM的性能调优,我们可以从四个方面入手 —— CPU、内存、磁盘IO、网络。
Centos 7+KVM(Windows Server 2008 r2 )的更多相关文章
- Windows开发环境搭建(安装 VS2010, VS2013, VS2015 Community, Windows Server 2008 R2)
1. 安装VS2010 1.1 安装步骤 1. 注意安装的时候,选择自定义安装,将不需要的VB.net去掉. 2. 看一下C++下的x64选项是否选择了,如果没选,将其选上. 3. 一定要将 Micr ...
- PowerShell自动部署IIS站点(Windows Server 2008 R2)
1.功能描述 1. 连接软件源服务器下载.NET Framework 4.0..NET Framework 4.5. 2. 检测并判断当前.NET Framework版本是否小于v4.0,如果小于则进 ...
- SQLite 在Windows Server 2008 R2 部署问题FAQ汇总[轉]
轉自:http://www.steveluo.name/sqlite-windows-server-2008-r2-deploy-faq/ 今天花了一天的时间研究了一下SQLite,以取代一些轻量级项 ...
- Windows Server 2008 R2 域控制器部署指南
一.域控制器安装步骤: 1.装 Windows Server 2008 R2并配置计算机名称和IP地址(见 附录一) 2.点击“开始”,在“搜索程序和文件”中输入Dcpromo.exe后按回车键: 3 ...
- [Mark]Windows Server 2008 R2 防火墙之SQL Server 2008 R2
今天新装了一个DBServer (Windows Server 2008 R2),但是在客户端跑之前的应用时却发现出错了,Debugg后发现的错误如下: 由InnerException可知时DB ...
- (转)Windows Server 2008 R2 域控制器部署指南
转自:https://technet.microsoft.com/zh-cn/cloud/gg462955.aspx 一.域控制器安装步骤: 1.装 Windows Server 2008 R2并配置 ...
- 烂泥:KVM中安装Windows Server 2008 R2系统
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 在前一篇文章中,我介绍了有关在KVM中的安装Centos系统.接下来,就来介绍如何在KVM中安装Windows系统. 注意:在此我安装的是windows ...
- Windows服务器安全加固实战(Windows Server 2008 R2和Windows Server 2012)
最近我们立方技术工作室在使用阿里云的过程中,发现服务器安全性也不是很高,而服务端的安全软件都很贵.为了为朋友们提供更加有效的解决方案,我们决定身体力行,高筑墙,大幅度提升服务器的安全防护级别! 主机安 ...
- 烂泥:KVM安装Windows Server 2008 R2使用virtio硬盘
本文首发于烂泥行天下. 在上一篇文章中,我们介绍了使用IDE硬盘来安装Windows Server 2008 R2,这篇文章我们来介绍使用virtio硬盘来安装Windows Server 2008 ...
随机推荐
- [Linux] 常见的并发模型
进程&线程(Apache) C10K问题异步非阻塞(Nginx,Libevent,NodeJS) 开发时复杂度高协程 (Golang Erlang lua) goroutine channel ...
- LeetCode 5275. 找出井字棋的获胜者 Find Winner on a Tic Tac Toe Game
地址 https://www.acwing.com/solution/LeetCode/content/6670/ 题目描述A 和 B 在一个 3 x 3 的网格上玩井字棋. 井字棋游戏的规则如下: ...
- 05. Go 语言函数
Go 语言函数 函数是组织好的.可重复使用的.用来实现单一或相关联功能的代码段,其可以提高应用的模块性和代码的重复利用率. Go 语言支持普通函数.匿名函数和闭包,从设计上对函数进行了优化和改进,让函 ...
- Statements、PreparedStatement及CallableStatement(三)
当获得了与数据库的连接后,就可以与数据库进行交互了.JDBC Statement,CallableStatement和PreparedStatement接口定义了可用于发送SQL或PL/SQL命令,并 ...
- matlab练习程序(螺线拟合)
这里待拟合的螺线我们选择阿基米德螺线,对数螺线类似. 螺线的笛卡尔坐标系方程为: 螺线从笛卡尔坐标转为极坐标方程为: 阿基米德螺线在极坐标系下极径r和极角theta为线性关系,方程为: 计 ...
- python进阶之内存模型
每一个编程语言的背后都有自己独特的内存模型支持,比如最经典的C语言,一个int类型占8字节.那么在python中不区分数据类型,定义一个变量其在内存在占用多少字节呢?python中数据的运算其内存是如 ...
- 终于把Apollo存储加密这件事搞定了
本文摘自于<Spring Cloud微服务 入门 实战与进阶>一书. 一些比较重要的配置信息,比如密码之类的敏感配置,我们希望将配置加密存储,保证安全性.Apollo框架本身没有提供数据加 ...
- golang--连接redis数据库并进行增删查改
(1)安装第三方开源的redis库: (2)在使用redis之前,需要安装第三方库,在GOPATH路径下执行安装指令--$GOPATH$:go get github.com/garyburd/redi ...
- Norm比较
目录 Introduction BN LN IN GN SN Conclusion Introduction 输入图像shape记为[N, C, H, W] Batch Norm是在batch上,对N ...
- solidity定长数组和动态数组
固定长度的数组 固定长度数组声明 直接在定义数组的时候声明固定长度数组的值: uint[5] fixedArr = [1,2,3,4,5]; 可通过数组的length属性来获得数组的长度,进而进行遍历 ...