写点什么

使用 Open Distro for Elasticsearch 运行 Rally

  • 2019-09-30
  • 本文字数:1808 字

    阅读完需:约 6 分钟

使用 Open Distro for Elasticsearch 运行 Rally

调整 Elasticsearch 集群的大小并进行扩展绝非易事。您需要拥有充分的数据存储空间,但您的映射和数据内容是决定磁盘上数据大小的关键。您需要为查询和更新留足容量,而您将使用的 CPU、JVM、磁盘和网络带宽大小将严重依赖您运行的查询和发送的更新数量。没有任何公式可保证它的正确:相反,您需要部署、监控和调整。


如要测试您的部署,您可以回放您自己的日志和数据,也可使用自动化的工具。Elastic 创建了适用于 Elasticsearch 的性能测试框架 Rally,您可以使用此框架为您的 Open Distro for Elasticsearch 集群生成模拟负载。通过测试,您可以确保您的集群大小适中,性能符合您期望的规范。


Rally 功能齐备,让您可以对您的 Elasticsearch 集群运行自己的测试。Rally “跑道”是指您可以运行的不同类型的基准,以便练习和测量您的工作负载。您可以添加新的跑道来扩展 Rally,从而满足自定义工作负载的需要,也可使用任何预配置的跑道。在此博文中,我们将在一个 Open Distro for Elasticsearch 实例上运行 Rally 并测量其性能。

安装

您可以参阅我们的文档以通过 RPM 安装 Open Distro for Elasticsearch,也可格局我们之前博文中的说明以使用 Docker Desktop 来安装 Open Distro for Elasticsearch。


Rally 采用 Python 代码。您需要在您计划运行 Rally 的主机上安装 Python 3 并安装 pip 3。


如要安装 Rally,请运行如下命令:


$ pip3 install esrally
复制代码


Rally 支持自定义配置,让您可以对测试许多方面进行微调,包括基准目录的位置、您希望运行的测试、要存储的取证数据水平等等。您可以参阅 Rally 文档以了解如何自定义您的测试。在本博文中,我们将从默认配置开始:


$ esrally configure
复制代码


Rally 会在您的总目录中建立 .rally 目录,然后在该目录下创建配置、数据和日志目录。

运行您的第一次测试

默认情况下,Rally 会创建一个 Elasticsearch 集群来进行测试。您已经有一个 Open Distro for Elasticsearch 集群在运行。您可以使用 --pipeline benchmark-only 命令行参数将 Rally 指向您现有的集群。


Rally 的跑道指定了测试配置。共有十二条预配置的跑道,每条跑道都配有相应的数据集。您可以使用 esrally list tracks 命令来查看这些跑道。对于您的第一个测试,您将使用 nyc_taxis 跑道。


–client-options 用于指定凭证,以便 Rally 通过安全插件进行身份验证。我使用了管理员用户的默认凭证(我未作任何更改,但最佳实践是要进行更改)。我还指定了 verify-certs:false,因为 Rally 将会拒绝演示版证书。


esrally --pipeline benchmark-only --track=nyc_taxis–challenge append-no-conflicts-index-only–target-host=http://localhost:9200–client-options=“use_ssl:true,basic_auth_user:‘admin’,basic_auth_password:‘admin’,verify_certs:false”


上述命令假设您使用基本的身份验证和 SSL 传输运行 Open Distro for Elasticsearch 的安全插件。一定要替换为您自己的用户名和密码。


Rally 将下载部分纽约市出租车和礼宾车行使记录数据集。 它将把数据发送到 Elasticsearch,然后运行对应的搜索工作负载。最后,Rally 将发布有关索引建立时间、查询延迟和集群指标的摘要。

下一步如何操作

您可以自定义 Rally 的跑道,也可创建自己的跑道了加载数据并对 Open Distro for Elasticsearch 运行查询。经过充分的测试,您可以调整好集群的实例类型以及您的工作负载的分区策略。正确设置后,Open Distro for Elasticsearch 的运行和管理将会变得更为简单。


有问题或疑问? 希望参与讨论? 您可以在我们的论坛上获得帮助并讨论 Open Distro for Elasticsearch。您可以在这里提出问题。


作者介绍:


Atri Sharma


Atri Sharma


查询处理和搜索极客,自 2012 年起开始钻研开源软件。曾研究了许多数据引擎,目前正在钻研 Elasticsearch 和 Lucene。


Jon Handler


Jon Handler (@_searchgeek) 是总部位于加利福尼亚州帕罗奥图市的 Amazon Web Services 的首席解决方案架构师。Jon 与 CloudSearch 和 Elasticsearch 团队密切合作,为想要将搜索工作负载迁移到 AWS 云的广大客户提供帮助和指导。在加入 AWS 之前,Jon 作为一名软件开发人员,曾为某个大型电子商务搜索引擎编写代码长达四年。Jon 拥有宾夕法尼亚大学的文学学士学位,以及西北大学计算机科学和人工智能理学硕士和博士学位。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/esrally-open-distro-for-elasticsearch/


2019-09-30 15:19840
用户头像

发布了 1939 篇内容, 共 162.8 次阅读, 收获喜欢 81 次。

关注

评论

发布
暂无评论
发现更多内容

618 我们狂欢的是什么?

Neco.W

拼多多 电商 京东 热门活动

锦囊篇|一文摸懂EventBus

ClericYi

锦囊篇|一文摸懂OkHttp

ClericYi

设计模式的十八般武艺

ClericYi

week3.学习总结

个人练习生niki👍

游戏夜读 | 《FPS关卡设计》

game1night

架构师训练营 - 第三周命题作业

牛牛

极客大学架构师训练营 命题作业

架构师训练营 -week3- 作业

晓-Michelle

极客大学架构师训练营

ARTS-week-4

youngitachi

ARTS 打卡计划 arts

区块链系列教程之:比特币中的网络和区块链

程序那些事

比特币 区块链 网络 p2p

关于JVM,你必须知道的那些玩意儿

ClericYi

学习总结 - 第3周

饶军

面试中的HashMap、ConcurrentHashMap和Hashtable,你知道多少?

ClericYi

Prometheus 2.19.0 新特性

耳东@Erdong

Prometheus

springboot整合Quartz实现定时任务(api使用篇)

北漂码农有话说

第三周学习总结

iHai

极客大学架构师训练营

ARTS-03 -- ARTS-04

NIMO

ARTS 打卡计划 ARTS活动

架构师训练营第三周学习总结

CATTY

锦囊篇|一文摸懂LeakCanary

ClericYi

极客时间架构师训练营 - week3 - 作业 2

jjn0703

极客大学架构师训练营

再谈云原生:我的看法

lidaobing

云原生 k8s 中间件

重学 Java 设计模式:实战命令模式「模拟高档餐厅八大菜系,小二点单厨师烹饪场景」

小傅哥

设计模式 小傅哥 重构 代码优化 命令模式

关于多线程,你必须知道的那些玩意儿

ClericYi

锦囊篇|一文摸懂RxJava

ClericYi

还有比二分查找更快的算法,面向接口编程Protocol,John 易筋 ARTS 打卡 Week 05

John(易筋)

swift ARTS 打卡计划 二分查找 binary search protocol

第三周课后作业

iHai

极客大学架构师训练营

锦囊篇|一文摸懂ButterKnife

ClericYi

Redis系列(二): 连集合底层实现原理都不知道,你敢说Redis用的很溜?

z小赵

Java redis 高并发 高并发系统设计

我们是如何做go语言系统测试覆盖率收集的?

大卡尔

测试覆盖率 精准测试 Go 语言

锦囊篇|一文摸懂Handler

ClericYi

还不会十大排序,是准备家里蹲吗!?

ClericYi

使用 Open Distro for Elasticsearch 运行 Rally_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章