Rackspace质量工程:解锁OpenStack的潜力

Rackspace OpenStack私有云并不仅仅是另一种私有云服务。区分Rackspace和我们的竞争对手的众多关键区别之一是,我们采用了工程方法来解决质量问题。

Rackspace质量工程:解锁OpenStack的潜力
Rackspace质量工程:解锁OpenStack的潜力

我们的质量工程团队不知疲倦地工作,以最大限度地提高我们的私有云服务的设计、代码和文档的质量,以及在软件开发生命周期中尽可能早地消除缺陷。

这是Rackspace擅长的领域,在我们的竞争中处于领先位置。

“我们希望我们的客户专注于他们的专长,让我们专注于设计、部署、测试和运营他们的Rackspace私有云,这是我们的专长,”Melissa Kam说,他是Rackspace私人云团队的一名软件开发人员。

与其他组织不同的是,我们的质量工程团队由开发人员和工程师组成,他们是这个领域的专家。让这些专家在性能上运行测试功能,测试自动化和安全测试提供了一个示范中心,并允许我们在多个团队之间改进知识共享和资产重用。

这使Rackspace具备了编写测试自动化的独特能力,并能够快速高效地将这些测试实现到CI/CD管道中。它还为我们的质量工程师提供了时间,让他们专注于特定的测试,例如探索/缺乏深度潜水、安全和性能调优。这就带来了一个彻底的测试策略,并且满足了Rackspace的发布目标,它涵盖了以下问题:

它能起作用吗?

它会执行吗?

它是安全的吗?

随着对多种平台的灵活和复杂的集成需求的增加,我们的质量工程团队越来越需要一个稳健的测试策略,以确保任何Rackspace OpenStack私有云的发布都得到了充分的测试。我们从不希望我们的客户成为测试人员——这可能导致用户和我们的团队之间的负面用户体验和破信任破坏。

在某种程度上,我们是顾客的声音。Rackspace的质量工程师必须感到舒适,挑战常规,超越产品的功能。为了做到最好,我们必须从架构到功能添加等各个方面来看待产品,并尽我们所能来减轻客户的影响,同时为他们带来无与伦比的成果。

Rackspace的质量并不仅仅是基于质量保证组织——它来自于一个包含了完整的软件工程实践的工程团队。大多数人期望质量能测试功能需求,并确保产品按预期执行。

我们通过决定产品不能做什么来超越这些期望。我们把产品拆开,发现某些细节可能达不到我们产品标准。在OpenStack的任何部分中,性能或安全问题都是一个质量问题,我们在产品向客户发布之前就一直在寻找和修复问题。

在Rackspace,我们的质量领导负责所有测试的签署。为了确保产品达到我们的质量标准,一个领导者在所有测试完成之前都不会在发布会上签字。下面是一个测试函数的小示例(不是一个全包含的列表):

功能测试:单元测试、集成测试、系统测试、验收测试、回归测试、冒烟测试。

非功能性测试:性能测试、安全性测试、可用性测试、操作准备、兼容性测试、遵从性测试。

大多数质量组织和/或他们的开发人员都熟悉进行单元测试、集成测试、系统测试和验收测试——统称为功能测试,其中的主要目标是确保产品发布得到评估,满足最低要求,并准备发布。尽管这些测试很重要,但许多公司没有足够的资源来正确地完成这些测试。

为了继续我们对质量的承诺,Rackspace还采用了一种非功能性测试的工程方法,例如安全设计和测试、性能调优和测试、可用性测试和兼容性测试。这些领域中的每一个都可以包含多个子测试,并且可能需要有专门质量工程师的培训。

我们的云计算运营商和客户需要我们开发出值得信赖和安全的软件。您所要做的就是阅读新闻,知道安全是一项持续的挑战。当安全不是首要任务时,它可能导致延迟或部署受阻、诉讼、负面媒体报道和客户的不信任。这些都是不可接受的结果。

Rackspace已经就OpenStack社区的预期提出了一个问题。我们的测试努力最小化了设计、代码和文档中的安全和隐私相关的缺陷。通过在软件开发生命周期的早期发现和消除这些缺陷,我们发布了更有保障、更安全的代码,让我们的客户有了更多的信心认为他们的云没有风险。

我们的安全测试包括开发过程(代码审查)、运行的系统或硬件、连接到的网络以及用于访问系统的身份验证和授权方法——都是由应用程序的用户和管理员访问的。从本质上说,安全工程是对安全的全面开发。

在OpenStack社区中,我们在安全性设计和测试中处于领先地位。我们的Rackspace质量工程师开发了一款名为Syntribos的OpenStack API测试工具。这个工具是第一个OpenStack API安全测试工具,它从开放的Web应用程序安全项目和OpenStack社区获得了优秀的评论。通过将其提供给这些社区,我们将自己的安全专业知识传播给更多的观众,因为我们相信安全对成功至关重要。

质量工程的另一个支柱是性能工程。Rackspace的性能测试被设计成完成一件事:确保我们的私有云及其被测量、验证的环境能够超过我们的质量要求。在真实的环境下,我们检查响应性、速度、可伸缩性和稳定性,并努力消除来自环境、应用程序、工具和系统的所有性能瓶颈。

为了做到这一点,我们的性能工程师在提供真实的世界测试场景时接受了培训和经验,为性能增强建议带来了额外的价值。这些工程师已经与许多客户合作,利用诸如性能、负载、压力和容量测试等量化测试来改善他们的云环境。

当涉及到私有云时,您有很多选择,但是其中很多都不会像我们对您的云进行持续的故障诊断那样深入,并且可以防止停机。在Rackspace,质量和我们私有云的开发、交付和运营一样重要,因此我们的质量工程师是整个软件开发过程的一部分。

我们的质量组织不重用上游的OpenStack暴风雨测试,也不需要一天的时间。我们开发用例来确定并了解我们是否可以让它做不该做的事情(安全性和性能)。我们看看这些测试所揭示的错误,深入挖掘,努力探索,直到我们能够有效地说,我们再也不能通过这一缺口。我们对自动化的独特使用、恰当的用例和测试计划都支持我们的测试和最终产品的成功。

以上内容是由dreamhost中文指南http://dreamhost.cn/ 为大家提供的有关Rackspace的相关资讯,以上内容均是由Rackspace官网提供,不代表dreamhost中文指南的观点。

相关内容:>>>>Rackspace体验:运行您的OpenStack私有云

Rackspace体验:运行您的OpenStack私有云

作为OpenStack的初始创建者之一,Rackspace一直是OpenStack的提供者和贡献者。我们为数百个客户管理和操作数千个节点,并且超过了所有OpenStack核心服务的99.99%的正常运行时间。

Rackspace体验:运行您的OpenStack私有云
Rackspace体验:运行您的OpenStack私有云

这在很大程度上是因为我们已经开发了一个用于建模、交付和操作OpenStack私有云的过程,这些云在数百个不同大小的部署中都得到了验证。简单地说,我们的过程给了您应得的成功的结果。

如果您还没读过,请看看第1部分,“对OpenStack云进行建模”,第2部分,“交付您的OpenStack云”,在阅读这篇文章之前。

如何操作您的云

Rackspace私有云团队专门经营和管理您的云,让您可以专注于您的核心业务。我们的管理服务提供以下好处:

专用帐户管理器:作为Rackspace私有云客户,您被分配到一个专用的帐户管理器,对您的环境有深入的了解,并作为您的“go to”资源来帮助您解决任何问题、问题或计划需求,例如扩展或升级。

为了管理日常操作,您的专用帐户管理器将设置一个特定于您的环境的“runbook”。安全地存储在一个受保护的、访问控制的存储库中,您的runbook将包括您的云配置(例如:软件细节、部署修改、设备位置、架构)、关键技术和执行联系信息、环境中的任何定制项目列表、升级过程和变更管理日志,以记录对环境的所有更改。

您将与您的专用帐户管理人员定期会面,查看您的帐户,讨论您的云性能指标和使用情况,帮助您规划未来,并根据需要更新您的运行手册。

积极的监控和维护:我们的OpenStack专家团队主动监控和维护您的云24x7x365的健康。我们的监视服务不断地检查,例如,您的硬件度量,包括磁盘空间、磁盘利用率、CPU空闲时间和内存容量,以及验证OpenStack服务(例如。地平线、楔石、中子等)和其他服务(如:在您的云中,Galera、RabbitMQ、HAProxy等)对调用的响应是有意的。

除了产品定义的默认设置外,您的帐户管理器可以与您一起定制您的设置,以帮助确保服务满足您的需求。通过这个协作定制过程,您可以为监视检查的运行频率设置频率(例如:每分钟,每五分钟,等等),定义每个测试使用的端口,设置计算、磁盘和与内存相关的警报的阈值,并确定组织的哪个成员将收到针对每个警报的自动生成的通知。

由于自定义阈值设置,我们的监视服务会在超过阈值时发出警告,使您能够在警告或故障发生前了解潜在的问题。每个警报都被分配一个严重级别,其中包括一个相关的实时响应时间保证。下表包括了每个严重性级别的定义及其相关保证的实时响应时间:

严重程度初始现场响应

紧急情况——实例失败或OpenStack云部分或完全不可操作的 15分钟

紧急-无法启动或终止新实例 1小时

启动新实例或与OpenStack API交互的标准延迟 4小时

除了监控您的云,我们还不断地维护您的环境的健康和安全。我们主动解决安全漏洞和软件漏洞;如果需要,我们将与您一起开发定制的补丁计划,以满足您独特的需求和使用模式。

我们还会更新您的云,以便您从与我们最新的软件发布相关的安全增强和特性中获益。感谢我们在规模上运行数百个云的经验,我们可以为您提供从一个RPC软件发布到下一个地方的升级,从而最小化中断或停机时间。

扩展支持:随着业务和云需求的增长,我们将帮助确保您的环境能够满足您的需求。这包括通过性能基准测试优化您的环境,通过容量规划来进行未来的云计算,并根据需要扩展您的OpenStack服务。

如果需要识别和减轻问题,我们可以运行性能基准测试。我们可能改进的例子包括更新网络配置和连接网络接口以提高吞吐量,校准一个MariaDB集群以改进API响应时间,并转移到固态驱动器以增强IOPS性能。

为了确保您的云能够满足您的业务需求,您的专用帐户管理器将通过提供基于当前和预期的资源利用率的增长建议来帮助您规划未来的容量需求。这包括对一些选择事件的规划,如您所期望的重大促销或假日,您的云服务会大幅增加活动,比如访问您的网站的次数大幅增加。

扩展云计算的另一个关键成功因素是确保每个OpenStack服务能够满足您的独特需求。通常,您的工作负载将在多个OpenStack服务之间产生不同程度的需求。例如,如果您的工作负载是网络密集型的,那么它可能需要为您的网络服务提供一个扩展事件,而不是为您的环境中的其他OpenStack服务。在这种情况下,我们的操作和支持团队将扩展您的中子网络服务。

大多数提供商要求您将所有的OpenStack服务都整合在一起,即使您只需要扩展一个服务,这通常是由于他们的体系结构的限制——这可能导致额外的硬件花费在不必要的服务升级上。但在Rackspace私有云的情况下,我们可以单独扩大服务规模。

对OpenStack专家的访问:我们为您提供了对OpenStack专家团队的直接访问。许多供应商要求他们的客户提交一张票,等待非技术代表在与能够解决他们问题的技术代表进行交流之前做出回应。

有了Rackspace私有云,您可以直接访问我们的工程师,他们将帮助回答诸如“如何在Cinder上启动一个根文件系统的实例?”并帮助您克服任何可能遇到的挑战。在为持续改进而努力的过程中,我们非常重视您的反馈,为您提供了在每次交互后“评价我们”的机会,并通过一个季度的净启动子评分调查;在我们的世界里,顾客是唯一有权定义卓越的群体。

附加服务

除了我们的标准产品之外,我们还提供了其他几项服务,帮助您转移到您的Rackspace私有云:

专用的OpenStack架构师:这个服务为您提供一个单一的联系点,以满足您的技术需求。与您的专用帐户管理器协作,您的专用OpenStack架构师将领导您的云的生命周期管理,并为您提供持续的培训,以帮助您优化您的环境,并使您对OpenStack的最新特性和功能进行更新。

专业服务:加速您的云的采用和现代化、自动化和优化您的环境。我们的专业服务包括:

应用程序现代化:使应用程序现代化,使其在OpenStack私有云上运行,并将应用程序和基础设施评估从基础到全面的安全性加强、性能调优和环境健康检查。

敏捷方法:帮助您将传统的“瀑布式”开发流程转换为持续的集成/持续交付管道。

大数据:为您提供设计、部署和运行大数据解决方案的最佳实践和咨询(例如:在OpenStack的私有云上,Hadoop、Cassandra、弹性搜索、Redis、MongoDB)。

身份验证和联合:集成现有的身份验证解决方案(例如:活动目录,LDAP)到您的OpenStack私有云中,并帮助使用Active Directory或LDAP为基础设施和应用程序设计联合身份验证模型。

高级云优化:提供与Docker容器封装应用程序的最佳实践,并通过提供可以为您的特定基础结构设计定制的安全架构模板来帮助您实现遵从性目标。

培训:我们的培训专家提供私人和公共培训课程,从介绍OpenStack到先进的中子网络。我们的私人课程是在您选择的地点进行的,并且在一个实验室环境中包含了多个手动体验。我们最新的培训项目,Rackspace Tech系列,为学生们提供了通过远程在线课程提供的OpenStack的“构建模块”。科技系列的第一集,OpenStack的“Hello World”,现在已经开放注册了。

许多企业都在关注私有云,以帮助加速其IT转型。私有云提供了许多优点,但是它们非常复杂,需要有人来管理它们。

许多提供者可以帮助部署私有云,但随后他们将其留给您来操作和支持它。而且,由于他们不需要操作或支持,他们愿意“定制”您的云,这可能会让您很难在未来运行、扩展或升级它。其他提供商将帮助您部署云,并支持他们的云软件,但实际上不会管理和操作您的云环境。