云计算
云计算是概念最早是由Google 前首席执行官埃里克•施密特(Eric Schmidt)在2006 年8 月9 日的搜索引擎大会上首次提出的一种构想,而“云计算”就是这种构想的代名词。
云计算以虚拟化为基础,以网络为中心,为用户提供安全、快速、便捷的数据存储和网络计算服务,包括所需要的硬件、平台、软件及服务等资源,而提供资源的网络就被称为“云”。
云计算是一种按量付费的模式!云计算的底层是通过虚拟化技术来实现的!
云计算服务模型
-
IAAS 基础设施即服务(infrastructure as an service):供应商提供对云端存储、网络、服务器和其他计算资源的访问。用户需要自己控制底层,实现基础设施的使用逻辑。例如:ECS云服务器
- Google Compute Engine(GCE)
- Cisco Metapod
- 亚马逊弹性计算云 Amazon EC2
- RackSpace Cloud
-
PAAS 平台即服务(platform as an service ):供应商提供并管理底层的基础架构。开发者只需要应用程序的管理,不需要关注底层。例如:
- Google App Engine
- Heroku
- OpenShift
- Apache Stratos
-
SAAS 软件即服务(software as an service ):服务供应商通过互联网直接提供软件和应用。普通用户接触到的互联网服务,几乎都是 SaaS。例如:
- 团队协同服务 Google Apps
- 虚拟会议 Cisco WebEx
- 客户管理服务 Salesforce
- 储存服务 Dropbox
- 社交服务 Facebook / Twitter / Instagram
云计算分类
-
公有云:每个人都可以付费使用,不需要自己关心底层硬件,但是数据安全需要考利。
比如aws、阿里云以及azure、金山云、腾讯云等。
-
私有云:在自己公司内部或IDC自建Openstack、VMware等环境。比如国企,银行。
-
混合云:既要使用公有云,又要使用私有云,即自己的私有云的部分业务和公有云有交接,这部分称为混合云。
为什么要用云计算?
小公司:
- 10台物理服务器(20w)+ idc(5w) + 100M企业带宽(10W)
- 10台云主机,前期投入小,扩展灵活,风险小
大公司:
- 闲置服务器计算资源,虚拟机,出租
- 超卖:64G 服务器 64台1G -KVM-> 320台1G:64台 大公司自己的业务;264台 租出去
虚拟化和虚拟机
虚拟化
虚拟化:通过模拟计算机的硬件,来实现在同一台计算机上同时运行多个不同的操作系统的技术。
虚拟化是为一些组件(例如虚拟应用、服务器、存储和网络)创建基于软件的(或虚拟)表现形式的过程。它是降低所有规模企业的 IT 开销,同时提高其效率和敏捷性的最有效方式。
虚拟化可以提高 IT 敏捷性、灵活性和可扩展性,同时大幅节约成本。更高的工作负载移动性、更高的性能和资源可用性、自动化运维 - 这些都是虚拟化的优势,虚拟化技术可以使 IT 部门更轻松地进行管理以及降低拥有成本和运维成本。其他优势包括:
- 降低资金成本和运维成本。
- 最大限度减少或消除停机。
- 提高 IT 部门的工作效率、效益、敏捷性和响应能力。
- 加快应用和资源的调配速度。
- 提高业务连续性和灾难恢复能力。
- 简化数据中心管理。
- 真正的 Software-Defined Data Center 的可用性。
虚拟化技术分类
-
模拟器:在一个host之上通过虚拟化模拟器软件,模拟出一个硬件或者多个硬件环境,每个环境都是一个独立的虚拟机,CPU、IO、内存等都是模拟出来的,可以在宿主机模拟出不同于当前物理机CPU指令集的虚拟机。比如可以在Windows 模拟出mac OS、unix系统。
例如:pearpc、QEMU、Bochs。
-
全虚拟机化/准虚拟化(full virtualization/native virtualization):全虚拟化,不做CPU和内存模拟,只对CPU和内存做相应的分配等操作。完全虚拟化需要物理硬件的支持,比如CPU必须支持并且打开虚拟化功能,例如Intel的 Intel VT-X/EPT,AMD的AMD-V/RVI,以在CPU 层面支持虚拟化功能和内存虚拟化技术,因此完全虚拟化是基于硬件辅助的虚拟化技术。
例如:vmware workstation、vmware esxi、paralles desktop、KVM、Microsoft Hyper-V。
-
半虚拟化(para virtualization):要求guest OS 的内核是知道自己运行在虚拟化环境当中的。因此guestOS的系统架构必须和宿主机的系统架构相同,并且要求对guest OS的内核做相应的修改,因此半虚拟化只支持开源内核的系统,不支持闭源的系统。
常见半虚拟化就是早期版本的XEN,但是Xen从其3.0 版本开始,可以支持利用硬件虚拟化技术的支持,实现了完全虚拟化,可以在其平台上不加修改的直接运行如Linux/Windows 等系列的操作系统,使得系统具备了更好的兼容性。
hypervisor(管理程序)类型
直接运行到物理机:vmware esxi、rhev hypervisor
需要运行到操作系统:KVM,XEN,vmware workstation
图形界面:
-
VMware Workstations
-
Oracle VM VirtualBox
虚拟化软件比较
- qemu:软件纯模拟,全虚拟化软件,特别慢!兼容性好!
- xen(半) :使用物理硬件,性能特别好!需要使用专门修改之后的内核,兼容性差! redhat 5.5 将xen换为kvm
- KVM(Kernel-based Virtual Machine):全虚拟机,需要cpu硬件支持,内置在linux内核模块,而不需要使用专门的内核。centos6 kvm 性能较好,兼容较好
虚拟机
虚拟计算机系统称为“虚拟机”(VM),它是一种严密隔离且内含操作系统和应用的软件容器。每个自包含虚拟机都是完全独立的。通过将多台虚拟机放置在一台计算机上,可仅在一台物理服务器或“主机”上运行多个操作系统和应用,名为“hypervisor”的精简软件层可将虚拟机与主机分离开来,并根据需要为每个虚拟机动态分配计算资源。
虚拟机的主要特性
-
分区
可在一台物理机上运行多个操作系统。
可在虚拟机之间分配系统资源。 -
隔离
可在硬件级别进行故障和安全隔离。
可利用高级资源控制功能保持性能。 -
封装
可将虚拟机的完整状态保存到文件中。
移动和复制虚拟机就像移动和复制文件一样轻松。 -
独立于硬件
可将任意虚拟机调配或迁移到任意物理服务器上。