NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

使用 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:19594
用户头像

发布了 1836 篇内容, 共 92.5 次阅读, 收获喜欢 73 次。

关注

评论

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

为什么企业自主开发软件时,都会使用统一的模块化框架式开发平台?

Learun

敏捷开发 程序设计 开发工具 软件设计 技术方案

内存型数据库Redis,是如何实现持久化的?

Zhongger

redis

DB-Engines 9月数据库排名:ClickHouse一路猛冲,Redis坐稳第七

华章IT

MySQL 数据库 redis Clickhouse

[翻译] Go Concurrency Patterns: Pipelines and cancellation[Go并发模式]

卓丁

channel pipeline

你问我答:容器平台改造后的安全是如何解决的?

BoCloud博云

云计算 容器 微服务 PaaS 博云

实战解读丨Linux下实现高并发socket最大连接数的配置方法

华为云开发者联盟

Linux TCP socket 高并发

深入Spring Security魔幻山谷-获取认证机制核心原理讲解

朱季谦

spring security

CPU中的程序是怎么运行起来的

良知犹存

cpu

北京城市副中心将试点法定数字货币

CECBC

数字货币 货币

产业互联网成区块链与数字货币的分水岭

CECBC

区块链 数字货币 产业互联网

使用amoeba实现mysql读写分离

小Q

Java MySQL 编程 程序员

Redis 数据同步机制--主从模式

是老郭啊

redis 主从配置 主从同步 redis主从 主从复制

或许是史上最好的AQS源码分析了,你确定要错过?!

InfoQ_d2212957090d

XSKY全新一代SDS一体机五大场景之存储+灾备

XSKY星辰天合

大数据管理:构建数据自己的“独门独院”

华为云开发者联盟

大数据 数据湖

一个银行客户经理的“变形记”

华为云开发者联盟

人工智能 金融科技

云图说 | 一分钟带你扫盲云容器黑话

华为云开发者联盟

容器 节点 集群

Docker私有化部署gitlab gitlab-runner

Leon

gitlab 持续集成 runner

深兰科技的征途,AI的赛场与战场

脑极体

正在走进现实的“飞行汽车”,能否颠覆地面交通?

脑极体

架构师课作业 - 第十二周

Tulane

3. 站在使用层面,Bean Validation这些标准接口你需要烂熟于胸

YourBatman

Hibernate-Validator Bean Validation 数据校验

【基础架构】不同场景下的数据存储技术,你用对了吗?

嘉为蓝鲸

网络 存储 系统 raid 磁盘挂载

太赞了!华为工程师终于总结出了Linux归纳笔记,提供开放下载

小Q

深入浅出java虚拟机

AI乔治

Java 架构 性能优化 JVM JVM原理

用 Python 实现一个简易版的 Pong 游戏 (一)

Matrix Chan

Python Turtle Python游戏

又踩Maven的两个坑

xiaoboey

maven Unknown lifecycle phase settings.xml 无效 PowerShell

LeetCode题解:225. 用队列实现栈,两个队列, 压入 - O(n), 弹出 - O(1),JavaScript,详细注释

Lee Chen

大前端 LeetCode

鼓舞人心!主席支持数字经济!央行数字货币研究所为世界制定区块链相关国际标准

CECBC

区块链 金融

浅析LR.Net工作流引擎

Philips

敏捷开发 工作流 软件开发流程 开发工具

快来看看!AQS 和 CountDownLatch 有怎么样的关系?

程序员小航

Java AQS 源码阅读 CountDownLatch JUC

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