如何对谷歌云进行基准测试和调整

146 阅读4分钟

云性能团队的工程师们可以把整个工作日都花在调整和优化云配置上。我们采访了专注于谷歌云性能的谷歌软件工程师Steve Dietz,以获得关于如何对谷歌云平台(GCP)进行性能调整、配置和基准测试的建议。

这次谈话使我们对如何配置GCP以使其最适合你的工作负载有了一些深刻的认识。我们把其中的一些见解收集在下面。**要了解与Steve对话的全部内容,请到这里**来。

像开源的PerfKit Benchmarker(由谷歌云团队维护)这样的性能基准测试工具允许任何人测量在云中配置资源的端到端时间。PerfKit报告标准的峰值性能指标,包括延迟、吞吐量、完成时间和每秒输入/输出操作数(IOPS)。

基准测试工具应有助于了解环境中正在发生的事情,同时包括提供不同区域的组件之间的延迟度量。为此,PerfKit提供了一个公开的仪表盘,显示所有谷歌云地区之间的跨区域网络延迟结果。下面是谷歌自己的全区域到全区域的往返延迟测试结果,使用了n1-标准-2机器类型和内部IP地址。任何人都可以通过运行PerfKit网站上提供的代码片段,自己重现这些结果

PerfKit performance example

除了PerfKit这样的工具外,还有一些资源可以帮助GCP用户从他们的产品中获得最佳性能。博文 "性能艺术。让云网络性能基准测试更快、更容易",以及关于测量云中网络延迟的后续报告,可以帮助你开始进行谷歌云基准测试和数据收集。

#2:阅读标杆研究

蟑螂实验室通过开展原始研究,着手更好地了解客户需求。这个过程首先涉及衡量CockroachDB在不同供应商的云环境中运行时的表现。当团队发现AWS和GCP之间的性能存在明显差异时,它在2018年发布了首份云计算报告,以帮助客户在选择云计算供应商时做出明智的决定。2021年版本的蟑螂实验室云报告更进一步,使用一系列微观基准和典型的客户工作负载--如CPU、网络、存储和TPC-C的衍生品--来比较AWS、Azure和GCP的性能。

云计算报告》以交易(OLTP)工作负载为基准对云计算供应商进行了测试。正如研究人员在报告和复制步骤中指出的,所有的基准都是在考虑到交易性工作负载的情况下选择的。使用一组不同的基准来比较云性能,可能会更好地满足以机器学习为重点的工作负载。

#3:在配置GCP之前评估工作负载

在设置云部署时,最常见的问题之一是:我应该使用供应商的默认配置吗?

当Cockroach实验室开始对AWS、Azure和GCP进行基准测试时,它需要在三个供应商之间有足够的不变因素,以确保准确的结果。该团队通过使用每个供应商的默认配置实现了这一点,这样错误的配置或配置偏差就不会影响测试结果。

对于用户来说,默认配置可能是某些工作负载的理想选择。在改变默认机器配置之前,请考虑所提供的机器类型(家族、系列、机器类型等)--例如,使用英特尔的N2与使用AMD的N2D,并评估其中一个是否可能更适合你的工作负载。2021年云计算报告中的一个发现是,运行英特尔CPU处理器的机器在单核测试中表现特别好,但运行亚马逊Graviton2和AMD的机器在多核测试中表现更好。

了解更多关于配置和基准测试的信息

优化和基准测试你的云基础设施涉及很多细微的差别和微调。我们的上述建议提供了一个出发点。关于基准测试和配置GCP的更多建议,请听GCP和Cockroach Labs的完整对话