我正计划使用ElasticSearch S3云插件来创buildES群集的快照。 这一切看起来相当直接,但我想知道它是否可能将其整合到我们现有的备份策略中。 通过我们的其他数据存储,我们每小时都会全面备份。 我们保持最新的24小时,过去7天每天1次,过去4周每天1次,最近2个月每次1次。 是否有可能以这种方式创build快照,或者我最好使用FS快照库,然后将内容压缩并挂接到相同的上传过程中? 我唯一担心的是,听起来像快照function本质上创build增量备份,这将意味着这将无法正常工作。 知道其他人如何备份他们的ES群是很好的。 非常感谢
我正在build立一个小的elasticsearch集群,其中一个节点没有得到任何碎片。 它的工作,是集群的一部分 – 只是空的(在下面的head截图eu2 ): 这个节点是一个工人,configuration与其他节点的唯一区别就是线条 node.master: false node.data: true 是否有一个具体的行动需要采取,以使它充满了碎片?
我已经安装了 Logstash ElasticSearch Kibana 在EC2实例上。 我可以访问http://example.com:9200在这里,我得到 { "status" : 200, "name" : "Aleta Ogord", "version" : { "number" : "1.1.0", "build_hash" : "2181e113dea80b4a9e31e58e9686658a2d46e363", "build_timestamp" : "2014-03-25T15:59:51Z", "build_snapshot" : false, "lucene_version" : "4.7" }, "tagline" : "You Know, for Search" } 所以有弹性的search工作,但是当我去 http://example.com/kibana 我得到“没有结果没有结果,因为没有find指标符合您select的时间跨度” 我有一个configuration文件 /etc/logstash/conf.d/包含以下内容: – input { file { path => "/var/log/apache/access.log" type => […]
我们的elasticsearch是一团糟。 集群的健康总是处于红色状态,如果可能的话,我们决定对其进行调查并挽救。 但我不知道从哪里开始。 以下是关于我们的群集的一些信息: { "cluster_name" : "elasticsearch", "status" : "red", "timed_out" : false, "number_of_nodes" : 6, "number_of_data_nodes" : 6, "active_primary_shards" : 91, "active_shards" : 91, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 201, "number_of_pending_tasks" : 0 } 6个节点: host ip heap.percent ram.percent load node.role master name es04e.p.comp.net 10.0.22.63 30 22 0.00 dm es04e-es […]
我有2个ES服务器,由1个logstash服务器提供并在Kibana中查看日志。 这是一个POC在投入生产之前解决任何问题。 系统运行了1个月左右,每隔几天Kibana就会在半夜的某个随机时间停止显示日志。 昨天晚上,我在Kibana收到的最后一个日志是在18:30左右。 当我检查ES服务器时,它显示主服务器正在运行,而辅助服务器没有运行(从/ sbin / service elasticsearch状态),但是我能够在本地主机上执行一个curl并返回信息。 所以不知道这是怎么回事 无论如何,当我在主节点上做一个状态,我得到这个: curl -XGET 'http://localhost:9200/_cluster/health?pretty=true' { "cluster_name" : "gis-elasticsearch", "status" : "red", "timed_out" : false, "number_of_nodes" : 6, "number_of_data_nodes" : 2, "active_primary_shards" : 186, "active_shards" : 194, "relocating_shards" : 0, "initializing_shards" : 7, "unassigned_shards" : 249 } 当我查看索引时,通过“ls … nodes / 0 / indeces /”,它显示了所有由于某种原因被修改的索引,并且今天的date还有新的文件。所以我想我已经开始追溯我重新启动了两台服务器,但不知道为什么它失败了。 当我看到主人的日志时,我只在18:57看到4个警告错误,然后离开集群。 […]
我有两组服务器(128位内存),它们在configuration时会有区别,在运行完全相同的守护进程(elasticsearch)时performance得非常不同。 我正在使用elasticsearch进行全文search,而不是日志存储,所以这个基本上只需要很less的写操作(小于1MB / s)的读操作。 这个守护进程mmap将大约350GB的完整数据集放入其虚拟内存中,然后访问它的某些部分来处理请求。 这些服务器没有configuration交换空间。 问题是一组服务器运行良好,每秒发出大约50个重大故障,平均需要10MB / s的磁盘IO来满足这个需求。 性能不佳的服务器每秒可以看到500个重大故障,平均需要200MB / s的磁盘来满足这个要求。 磁盘IO的增加导致较差的p95响应延迟和偶然的过载,因为它达到约550MB / s的磁盘限制。 他们都坐在同一个负载平衡器后面,并且是同一个集群的一部分。 我可以看到,如果一台服务器的性能不好,可能是负载的差异,但是与16台服务器的性能差别很大,20台服务器的性能不错,在不同的时间内,它们被淘汰+供应,内核/configuration级别必须引起问题。 为了解决这个问题,我该如何让这些performance不佳的服务器像那些performance良好的服务器一样行事? debugging工作应该集中在哪里? 下面是我收集的一些数据,用来查看系统在三种状态中的每种状态下的sar和page-types工具的function。 软件: – debian jessie – linux 4.9.25 – elasticsearch 5.3.2 – openjdk 1.8.0_141 首先从一个performance良好的服务器(来自sar -B )的一些页面错误数据: 07:55:01 PM pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff 08:05:01 PM 3105.89 811.60 2084.40 48.16 3385.30 0.00 […]
(最初问StackOverflow ,并build议我在这里移动它) 我一直在浏览Elastic Search的文档,我是一个大粉丝,我想用它来处理我的ASP.NET MVC应用程序的search。 然而,这引入了一些有趣的曲折。 如果ASP.NET MVC应用程序位于专用计算机上,那么将Elastic Search实例后台打包并使用TCP传输进行本地连接将非常简单。 但是,我并不是在ASP.NET MVC应用程序的专用机器上,也不是很快就会移动到一台机器上。 这留下了另一台机器上的弹性search(在* NIX世界),我可能会去共享主机那里。 然而,Elastic Search所缺乏的一个最大的缺陷就是它不支持HTTPS和开箱即用的基本身份validation。 如果是这样,那么这个问题就不存在了。 我只是将它托pipe在某个地方,并确保有一个令人难以置信的安全密码和HTTPS启用(可能与自签名证书)。 但事实并非如此。 给出的是,以安全的方式通过Internet公开弹性search的好方法是什么? 请注意,我正在寻找一些希望不需要编写代码来提供我想要的方法(换言之,编写代码)的方法。
我试图添加一些全文search到我的LAMPnetworking应用程序。 我遇到了ElasticSearch,我喜欢它所提供的。 我已阅读指南并了解如何使用curl -XPUT http:// localhost:9200 /来索引单个项目。 但我怎样才能索引整个MySQL数据库? 我似乎无法findnetworking上的任何地方解释如何做到这一点。 有任何想法吗?
我跟着教程的第一部分来安装Elasticsearch。 我没有安装java,因为我已经安装了运行其他Java程序。 sudo service elasticsearch restart 不输出任何东西。 sudo service elasticsearch status 输出以下内容: ●elasticsearch.service – 在此系统上启动和停止单个elasticsearch实例Loaded:已加载(/usr/lib/systemd/system/elasticsearch.service;已禁用;供应商预设:已启用)Active:failed(Result:exit-code)since星期六2015-06-06 08:33:20 EET; 1s前文档: http ://www.elasticsearch.org进程:17111 ExecStart = / usr / share / elasticsearch / bin / elasticsearch -Des.default.config = $ CONF_FILE -Des.default.path.home = $ ES_HOME -Des .default.path.logs = $ LOG_DIR -Des.default.path.data = $ DATA_DIR -Des.default.path.work = $ WORK_DIR -Des.default.path.conf = […]
我们有两个(或更多的)应用程序争夺OS页面caching。 特别是ElasticSearch非常依赖OS页面caching。 在低延迟的情况下,高速caching未命中可能会造成或中断性能。 ES是节点上唯一的低延迟应用程序,因此需要 OS页面caching。 由于整个索引不适合RAM加热器用于启动caching,但几个小时后,这些caching被其他应用程序丢弃。 我有一些想法和想法: RAMFS(但索引不适合内存,所以不去那里) TMPFS(但它不是通过重新启动并使用交换持续) 在Lucene / ES级别caching(似乎不存在,操作系统页面caching是他们的caching策略) 专用的硬件(这是很难certificate的,因为机器有足够的内存和CPU,只需要更好的使用它;再加上我们需要很多的节点)。 VMTouchlocking(没有办法真正检测什么时候ES要合并新的细分市场,需要解锁旧的文件,并映射新的) 全虚拟机(性能成本和额外的pipe理/pipe理) 一个专门的文件系统可以分割出预定义的内存块来进行caching。 但是由于ES / Lucene的devise限制,在这个时候我只想购买专用节点。