一、es运行状态的监控

  es长时间批量入库时,需要对入库的性能进行监控,否则可能导致es重启,入库任务失败。

可以编写shell脚本,每分钟用cat命令监控pending的数量,数量逐渐增大时就需要注意。

还可以监控translog文件的大小,当translog文件不断增大,而不新建新的translog时,也说明输入的文档速度超过了处理速度。

监控es运行状况的脚本moitorES.sh:

result=""
while [ "$result"!="0000" ]
do
#阻塞任务统计
result=`curl -s -XGET 'http://27.10.3.170:9200/_cluster/pending_tasks'`
date >>./esMonitorlog.txt
echo "pending task: "$result >>./esMonitorlog.txt
#获取索引中的记录数
result=`curl -s -XGET 'http://27.10.3.170:9200/_cat/count/base_person_es`'
echo "index file count: "$result >>./esMonitorlog.txt
#获取bulk操作线程池状态
result=`curl -s -XGET 'http://27.10.3.170:9200/_cat/thread_pool?v&h=id,host,active,bulk.active,bulk.size,bulk.queue,bulk.reject,bulk.completed`'
echo $result >>./esMonitorlog.txt
#ping主节点
ping -w 3 -c 2 27.10.3.170 |sed -n '2,3p' >>./esMonitorlog.txt
echo "----------------------------------" >>./esMonitorlog.txt
sleep 3
done

二、es的配置文件yml中,空格后面一定要有空格,否则启动时报错。

如: master = true

三、监控网络状况,网络不好时客户端5s内收不到相应主动断开连接,可以设置为20s。

四、ES默认的内存为Xms1g,Xmx4g,这些在实际服务器中是需要调整的。

bin目录中的进行设置,Xms和Xmx设置大小相等。机器内存小于64g时,es内存为机器内存一半。es机器内存不要超过32g,这也是jvm设置的建议。

例如机器为128g内存,可以开2个32g的es节点。

五、不要用kill -9来杀死es进程,es属于磁盘读写较多的程序,使用kill而非kill -9。

windows下的es使用ctrl+c来结束进程,而不要直接关闭窗口。都会导致文件,数据的丢失。

es随想二的更多相关文章

  1. es随想一

    一.安全问题 前段时间网上看到的,大量的MongoDB服务器和ElasticSearch服务器被黑客攻击,留下勒索信息. ElasticSearch的2种客户端连接方式,transport方式默认的9 ...

  2. ES之二:Elasticsearch原理

    Elasticsearch是最近两年异军突起的一个兼有搜索引擎和NoSQL数据库功能的开源系统,基于Java/Lucene构建.最近研究了一下,感觉 Elasticsearch 的架构以及其开源的生态 ...

  3. Android OpenGL ES(二)OpenGL ES管道(Pipeline) .

    大部分图形系统都可以比作工厂中的装配线(Assemble line)或者称为管道(Pipeline).前一道的输出作为下道工序的输入.主CPU发出一个绘图指令,然后可能由硬件部件完成坐标变换,裁剪,添 ...

  4. ES系列二、CentOS7安装ES head6.3.1

    1.Head插件简介 ElasticSearch-head是一个H5编写的ElasticSearch集群操作和管理工具,可以对集群进行傻瓜式操作. 显示集群的拓扑,并且能够执行索引和节点级别操作 搜索 ...

  5. es数据二次开发统计展示

    案例1 在es查询中按照多列分组的时候 分组列的count值会越来越少 es默认隐藏了没有被分组匹配到的记录数  需要在查询的时候开启 2.开启显示没有被分组成功的记录 分组成功的记录加上分组miss ...

  6. 笔谈OpenGL ES(二)

    昨晚回家也看了OpenGL ES 2.0 iOS教程的第一篇,对于其中涉及的一些基本知识罗列下,虽然自己做iOS开发一年多了,但是对于一些细节没有注意,真正的把自己当成“应用”工程师了 ,不仅要会用, ...

  7. ES系列(二):基于多播的集群发现实现原理解析

    ES作用超强悍的搜索引擎,除了需要具有齐全的功能支持,超高的性能,还必须要有任意扩展的能力.一定程度上,它是一个大数据产品.而要做扩展性,集群自然少不了.然而单独的集群又是不够的,能够做的事情太少,所 ...

  8. Android OpenGL ES 应用(二) 纹理

    上一篇讲了基础入门 OpenGL (一) ,这一次主要学习OpenGL 纹理基本学习总结 要是做复杂的OpenGL应用程序,一定会用到纹理技术.纹理说白了就是把图片或者视频图像绘制到OpenGL空间中 ...

  9. Android OpenGL ES(七)基本几何图形定义 .

    在前面Android OpenGL ES(六):创建实例应用OpenGLDemos程序框架 我们创建了示例程序的基本框架,并提供了一个“Hello World”示例,将屏幕显示为红色. 本例介绍Ope ...

随机推荐

  1. Codeforces 626C

                                                                                                        ...

  2. c语言函数实参与形参整理

  3. ubuntu开启openssh-server,ssh[xshell]

    在虚机中安装了ubuntu,但是从宿主机器上ping 22的端口始终不通,查询原因,虚机只安装了 openssh-client. 运行Terminal $-> sudo apt-get inst ...

  4. Tomcat学习笔记(二)—— 一个简单的Servlet容器

    1.简介:Servlet编程是通过javax.Servlet和javax.servlet.http这两个包的类和接口实现的,其中javax.servlet.Servlet接口至关重要,所有的Servl ...

  5. 用于 C♯ 图像识别的轮廓分析技术

    用于 C♯ 图像识别的轮廓分析技术 供稿:Conmajia 标题:Contour Analysis for Image Recognition in C# 作者:Pavel Torgashov 此中文 ...

  6. C#采用rabbitMQ搭建分布式日志系统

    网上对于java有很多开源的组件可以搭建分布式日志系统,我参考一些组件自己开发一套简单的分布式日志系 全部使用采用.NET进行开发,所用技术:MVC.EF.RabbitMq.MySql.Autofac ...

  7. Python 使用 virtualenvwrapper 安装虚拟环境

    装载于https://www.jianshu.com/p/9f47a9801329 Python 使用 virtualenvwrapper 安装虚拟环境 Tim_Lee 关注 2017.05.04 2 ...

  8. zookeeper命令行操作

    创建 #[-s] 顺序 #[-e] 临时节点 #path 节点 #data 该节点存储的数据 #acl 证书 create [-s] [-e] path data acl -s或-e指定节点特性:顺序 ...

  9. 【js 笔记】读阮一峰老师 es6 入门笔记 —— 第二章

    第二章:变量的解构赋值 在es6 版本前,如果要为多个变量赋不同值,我想是件比较麻烦的事情.但es6 版本新推出了一个新技术那就是今天的主角变量的解构赋值. 变量解构赋值分为两种方法:数组解构赋值 和 ...

  10. socket编程--相关函数--sendto();read();

    {1} 头文件:#include <sys/types.h>   #include <sys/socket.h>定义函数:int sendto(int s, const voi ...