跳转到主要内容
Chinese, Simplified

如果你对OpenStack和虚拟化之间的区别感到困惑,你并不孤单。它们确实是不同的,本文将描述如何为OpenStack回顾一些实用的“良好匹配”用例,并最终消除关于这个不断增长的开源云平台的一些误解。

首先,有几点基本知识:

虚拟化源于分区,分区将单个物理服务器划分为多个逻辑服务器。通过提供计算资源的逻辑视图,而不是物理视图,可以做两件非常有用的事情:允许您“欺骗”您的操作系统,使其认为一组服务器是一个计算资源池,并允许您在一台机器上同时运行多个操作系统。一旦划分了物理服务器,每个逻辑服务器就可以独立运行操作系统和应用程序。

虚拟化提供了内置于基础架构中的冗余和高可用性,但增加容量以提高性能输出需要花费大量时间。获得更高的性能意味着通过添加更多内存和处理器来“向上扩展”或“垂直扩展”,以使物理虚拟机监控程序的性能更好——但在服务器硬件容量达到最大值之前,您只能添加这么多。

另一方面,云计算将重点从硬件消费转向共享资源即服务消费。OpenStack是一款开源软件,用于创建私有和公共云;i、 e.提供消费性服务,而不是硬件本身。云计算之所以具有吸引力,有几个原因,其中最重要的一个原因是它的实用模式,即只为你使用的东西付费,并且能够非常快速地增加或减少更多资源。

因为虚拟化已经存在了几十年,它提供了详细的参考体系结构和常见实践;另一方面,OpenStack提供了极大的灵活性,但伴随着这种灵活性,还有额外的责任:你必须告诉它你想要它做什么。对于一般的云计算,参考体系结构和常见做法仍在制定中。

运营OpenStack还需要一种不同的基础设施理念:采用DevOps,即运营和开发工程师从设计到开发过程再到生产支持的合作实践。DevOps的目标是创造一种文化和环境,让软件的构建、测试和发布更快、更可靠。

更多差异:

  • 云资源是不可知的,是可支配的,而虚拟化需要虚拟机的照料、喂养和培育。使用OpenStack,您可以告别重建和重新部署。
  • 云提供了自动化以前手动功能的能力——开箱即用。
  • 云实现了真正的自助服务,释放了您昂贵的资源,专注于提供业务价值。云让你的用户在需要的时候提供他们需要的东西。
  • 云生态系统是为最终用户设计的。

用例角色

  • 对于那些仍在总体上评估云计算的人,或者如果你不确定OpenStack是否适合你的业务需求,下面是一个简短的列表,其中列出了被证明适合OpenStack的用例角色:
  • 运行一个需要可扩展且面向客户的电子商务平台;
  • 运行多层分布式应用程序(工作负载);
  • 作为CI/CD管道的一部分运行开源开发工具;
  • 利用敏捷方法作为应用程序开发方法;
  • 公开面向客户的API,这些API需要根据负载进行扩展;
  • 寻求将遗留应用程序迁移到云平台和
  • 开始组织IT转型,以部署新应用程序。
  • 在权衡选择时,还需要记住以下几点:
  • OpenStack不是虚拟机监控程序。它是一个“虚拟机监控程序管理器”,旨在消除对硬件及其管理的担忧。
  • 灵活性就是力量——OpenStack从设计和部署方面提供的灵活性是所有基础设施管理员想要和需要的力量。
  • 自动化带来的进步——只有尽可能多地实现自动化,才能充分利用OpenStack带来的好处。

打破神话的OpenStack

最后,我想澄清我多年来听到的关于OpenStack的一些误解,其中许多与当今虚拟化平台上存在的一些功能直接相关。

误解:OpenStack不支持虚拟机或VM迁移。

事实:

  • 在OpenStack中,ProjectNova能够通过KVM(建议的虚拟机监控程序)从计算主机迁移或撤离实例。
  • 负责处理此问题的特定Nova组件是Nova调度程序。
  • 在迁移过程中可能会出现两秒钟的光点。

谬论:在OpenStack中,没有任何功能可以在整个云计算中平均消耗资源。

事实:

  • 如前所述,OpenStack确实具有实例迁移功能——但它不是一项自动智能任务;人们必须建立自动化来处理这项任务或手动执行。
  • 云与稳态计算:为可支配动态资源设计的应用程序,也就是云,不会因丢失计算节点和/或实例而受到影响。

误解:并非所有OpenStack存储解决方案都是分布式的。

事实:

  • OpenStack生态系统中的一个非常高级的功能和项目是Cinder,它提供了为块存储卷定义多个后端的功能。每个后端都可以指向本地临时存储或共享存储设备。
  • 这些后端也可以定义为卷类型;反过来,Nova是卷类型感知的。

误解:OpenStack不了解虚拟机监控程序的运行状况。

事实:

  • OpenStack只使用服务模型,即每个组件都被视为一个服务。这意味着OpenStack对其生态系统中运行的所有服务都有健康意识。
  • 如果计算节点或实例失败,OpenStack将不会尝试重新启动它;该服务将被标记为“关闭”,请求将继续由其他资源处理(请记住,云是关于可支配资源的)。

谬论:OpenStack中没有恢复数据的解决方案。

事实:

半真半假。通过Cinder和Swift等OpenStack项目,您可以无缝集成许多不同的外部存储设备。

但是,OpenStack通过分布式模型处理数据保存——重要数据不应存储在短暂的本地存储上,而应存储在某种类型的共享存储上(如EMC、NetApp、Pure)……这将是一种高可用性的解决方案。

谬论:在OpenStack中,如果你失去了一个计算节点,你的应用程序就会失败。

事实:

  • OpenStack具有可用于处理计算节点故障的保护措施。
  • Nova scheduler组件管理实例在多个计算节点之间的分布;将其视为资源的平衡。
  • OpenStack提供了几种机制来实现这一点,具体取决于它们的具体需求。例子包括:
    • ServerGroupAntiAffinityFilter筛选器
    • 可用区

原文:https://www.rackspace.com/blog/openstack-and-virtualization-whats-the-d…

本文:https://jiagoushi.pro/node/1923

Tags
 
Article
知识星球
 
微信公众号
 
视频号