3

我对虚拟化和私有云计算感到困惑。他们的服务是什么?他们的目的?它们可以结合起来吗,比如说我们在私有云上构建虚拟化服务器?

据我了解,云计算包含了 IaaS(基础设施即服务)的理念。换句话说,我可以从最少数量的裸机服务器开始,并根据需要对其进行扩展,然后将这些服务器通过划分计算和数据存储合并到一台大机器中。

话虽如此,我们可以在私有云上构建虚拟化吗?例如,我可能会购买大约 10 台服务器(尤其是像 opencompute 项目中的服务器),使用 openstack 将它们作为私有云粘合在一起,并且可能使用 Xen 或 Kvm 来创建虚拟化服务器。那可能吗?那是理想的吗?

请指点我正确的绝地学校。

4

5 回答 5

12

云专门指网络图表中云图标的古老用法,以表示外部或未定义的资源。该术语的起源是指将您的网络基础设施的组件放置在您自己的环境之外......因此进入您的网络图上的云之一。今天,这个术语已经发展到包含许多不同的想法,并且在很大程度上被相互竞争的定义所污染。

IaaS / PaaS / SaaS / LBaaS / 等等

这些都是服务。非常符合访问基础架构组件的想法......作为存在于网络架构图上的云中的服务。

但是,这些“aaS”解决方案中的每一个在实现目标的方式上都有不同的方法。其中一些将不符合“云”的经典术语。例如,某些“aaS”组件可能不在您的网络架构之外。这就是“私有云”之类的东西可能发挥作用的地方。

私有云是一个可怕的术语。这是一个矛盾的说法。因为它不在您的环境之外,所以它不是您图表上的云。但是,由于人们将云一词的含义污染到几乎不连贯,我们至少目前仍坚持使用这个词。所以当我说“私有云”时,请耐心等待。在任何经典意义上,它都不是真正的云。这就是我们在英语中所说的“误称”。

现在重要的是不要将云“aaS”解决方案本身与亚马逊或 rackspace 等主要云提供商在开发“aaS”解决方案时遵循的弹性设计原则相混淆。

弹性设计原则将强调水平可扩展的无共享基础设施。描述这种意识形态的最简单方法是牛与小狗的例子。过去,我们查看服务器资源就像查看小狗一样。我们为它们命名。我们对他们很好。我们教他们技巧。而且,如果他们生病了,我们会帮助他们恢复健康。我们竭尽全力让这些服务器保持愉快并运行良好。我们垂直种植它们。我们优化了它们。更多 ram、cpu、开发资源……等等。在弹性模型中,我们将资源视为牛。他们有序列号。我们在教他们任何东西上投入最少的精力。它们尽可能同质。发生的任何优化都发生在配置管理中,并且作为独立的解决方案在所有这些优化之间共享。如果一个人生病了,我们会朝它的头部开枪,然后用牛群中的另一个代替它。这种设计范式的好处是,如果您开始用霰弹枪射击您的服务器机架,很可能整个环境都会进行补偿。当然,这种弹性水平在理论上比在实践中更容易描述。

现在,就虚拟化而言,它与“云”有关。确实没有实际的必要关系。云不需要与虚拟化有任何关系。您可以在您所依赖的环境之外拥有一个不使用虚拟化的面向服务的资源。但是,大多数现有的“aaS”解决方案都受到虚拟化技术的支持。它们完全不必是,但由于它们将涉及虚拟化的普遍可能性,这两个术语在许多方面已经在外行的头脑中结合在一起。

重新开放堆栈和私有云。

OpenStack 是否适合您是一个非常个人的决定。这取决于很多事情。自己运行基础设施可能非常昂贵。更重要的是,它可能很难做好。对于小型企业或组织,如果从事规模经济交易的人可以满足您的需求,那么部署您自己的 IaaS 基础设施可能真的没有意义。这就是像亚马逊这样的公司填补空白的地方。

对于在自己的环境中运行 IaaS 解决方案的一些组织来说,即使可能或积极地由亚马逊或机架空间产品提供服务,也是有意义的。有些人足够大,运行足够多的其他基础设施来托管他们自己的弹性应用程序在经济上是可以接受的。除了严格的底线之外,还有其他原因。许多大型组织面临 HIPAA、FISMA 或 Sarbanes Oxley 等政策限制。有时满足这些政策要求以及他们自己的任何内部政策要求需要支付一些额外费用。

除了亚马逊或 Rackspace 的一般产品之外,还有其他原因。想象一下,如果您愿意提供类似 jenkins 的自动构建和测试环境,并且您希望提供异构虚拟机管理程序或物理节点来自动启动并测试编译软件。OpenStack 可能可以处理这个问题。如果它不能具体处理您的想法,它就是开源的。你可以让它处理你需要的东西。

使用或不使用 OpenStack 有一百万个理由。归根结底,对于任何个人或公司来说,这都是一个非常个人的决定。并且需要大量研究。但在某些情况下,两者都是伟大的决定。

当我们在 NASA 创建 nova(OpenStack ec2 风格的计算组件)时,我们表面上专注于以弹性方式提供 HPC 资源或业务线资源。亚马逊最终创建了自己的 HPC 产品。即使是现在,它也在努力克服 FISMA 政策合规性的障碍。但总会有一些时候,您的专业化需求会降低通用市场产品的优势。然而,除了与亚马逊竞争的技术原因之外,还有另一个重要原因。这是为了在这个新兴技术领域培养开放标准。

技术的发展很像一棵树的有机生长。它从一个芽开始,可能会变成一片叶子。任何新技术的出现都是一件小事,需要大量资源才能成长。并非所有这些技术都能幸存下来。但有些人会。而那些确实需要金钱和努力的人,以贪婪的速度这样做。然而,随着这些技术的发展,其中一些成为分支。有些甚至变成了树干。为了拥有一百万种其他技术从更多分支发展而来的主干,由负责任的社区控制的开放标准是必要的。政府和 IBM 等许多组织都认识到这一点,这也是 OpenStack 发展如此迅速的主要原因之一。这也是 BSD 和 Linux 这样做的原因。弹性设计方法改变技术格局的潜力是非凡的。

于 2013-03-08T04:03:05.000 回答
1

正如 Jeff 提到的,私有云计算可能意味着任意数量的非常任意的事情,这取决于谁试图向您推销某些东西。也就是说,如果我们将其视为“防火墙后具有高度规范化 API 的 IaaS”,那么很容易指出与虚拟化的差异。

最重要的部分是关于如何使用两者中可用资源的思维定势。在虚拟化中,大部分重点是将硬件资源分成小部分,然后将它们分配出去,让它们无限期地运行。

与云计算的最大区别在于,所有资源更普遍地被认为是短暂的——启动它,使用它,完成后删除它。它通常也非常有能力支持长时间运行的资源,但要点是硬件资源正在以比虚拟化容易允许的速度更高的变化率重新利用。

另一个有点相关的区别是,虚拟化通常仍将实例、卷和网络视为要虚拟化的独立元素。云计算将它们都视为相当统一的资源,与云计算相关的工具(例如https://github.com/cloudenvy/cloudenvyhttps://github.com/opscode/knife-openstack)使用它来制作更有效、更轻松地启动和减少资源。

于 2013-02-13T19:56:28.083 回答
1

虚拟化只是构建成功的私有云环境的一部分。要拥有真正的私有云,您不仅必须实现虚拟化,还必须整合监控、管理和自动化。

这是我管理的一个博客,如果您有其他类似的问题,应该会对您有所帮助:www.journeytothecloud.com

于 2013-02-15T13:26:38.963 回答
1

第一:云计算不仅仅是IaaS,还有PaaS或者SaaS……

但主要是,您必须了解,虚拟化只是构建云的一种方式。如果您询问 IaaS 和虚拟化之间的区别,我的回答是: - IaaS 定义“VM 模板”,您正在运行各种数量的一个模板 - IaaS 能够自动重新分区 VM - IaaS 管理网络 - IaaS 管理 vm 模板分发 - IaaS 能够添加或删除一些裸机服务器......所以 IaaS 是您无需处理虚拟化级别的级别:这是他的工作,您可以通过 API 管理您想要的 VM 模板和数量。

但是如果你是一个开发者,我建议你看看PaaS,它更容易处理。

于 2013-02-14T09:46:53.193 回答
1

首先,云计算是一个非常笼统的概念。它不仅限于 IaaS。PaaS(平台即服务)和SaaS(软件即服务)也是云计算技术。当您谈论云计算时,您最好指定要引用的技术。其次,IaaS 建立在虚拟化技术之上。没有虚拟化,没有 IaaS。PaaS 和 SaaS 服务可以直接构建在裸机上。所以虚拟化并不总是与私有云计算有关系。

From what I understand, cloud computing embraces the idea of IaaS (infrastructure as a service). In other words, I could start with minimal number of bare metal servers and expand it as requirement needs, and those servers are consolidated into one big machine through divided computing and data storing.

你的理解不正确。您可以将裸机服务器虚拟化为多个虚拟服务器。但是您不能将许多裸机服务器虚拟化为一台大型机器。虚拟化目前无法实现这一点。OpenStack、Eucalyptus 等 IaaS 软件仅用于管理您的裸机服务器。他们可以将您的裸机服务器粘合为一个resource pool但不是大型虚拟机。

于 2013-02-13T16:19:55.030 回答