centos6.10搭建ELK之elasticsearch6.5.4
1、环境准备
1.1.安装java环境版本不要低于java8
# java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
1.2.关闭swap分区
原因:操作系统会尽可能多的缓存文件系统数据到内存中,这可能导致JVM堆的某些部分,甚至其可执行页面被交换到磁盘。这会导致ES性能变差。
禁用swap有三种方法,其中第一种最后,如果当前系统环境不适用第一种方法,
临时关闭:
# swapoff -a
永久关闭:
修改/etc/fstab文件,注释掉swap分区
第二种方法:
这减少了内核交换的倾向,在正常情况下不应该导致交换,同时仍然允许整个系统在紧急情况下交换。
# echo "vm.swappiness = 1" >> /etc/sysctl.conf
第三种方法:
尝试将进程地址空间锁定到RAM中,防止任何Elasticsearch内存被交换出去。这可以通过在config/elasticsearch.yml中添加这一行来实现。
bootstrap.memory_lock: true
检测mlockall是否启用:
# curl -X GET "localhost:9200/_nodes?filter_path=**.mlockall"
{"nodes":{"UMakWu4ESSymEt6kXinsjQ":{"process":{"mlockall":false}}}}
1.3.文件描述符和最大进程数配置
Elasticsearch使用许多文件描述符或文件句柄。耗尽文件描述符可能是灾难性的,并且很可能导致数据丢失。请确保将运行Elasticsearch的用户的打开文件描述符的数量限制增加到65536或更高
# cat /etc/security/limits.conf|grep -Ev "^#|^$"
elasticsearch soft nproc 655350
elasticsearch hard nproc 655350
elasticsearch soft nofile 655350
elasticsearch hard nofile 655350
检测文件描述符数量:
# curl -X GET
"localhost:9200/_nodes/stats/process?filter_path=**.max_file_descriptors"
{"nodes":{"UMakWu4ESSymEt6kXinsjQ":{"process":{"max_file_descriptors":655350}}}}
1.4.加大vm.max_map_count内核参数
Elasticsearch默认使用mmapfs目录来存储索引。默认操作系统对mmap计数的限制可能太低,这可能导致内存不足异常。
在Linux上,可以通过以root用户身份运行以下命令来增加限制:
系统默认值是65530。
如果使用rpm包安装,请忽略这一步,因为rpm包的脚本里已经执行了响应指令。
# echo "vm.max_map_count = 655350" >>/etc/sysctl.conf ;sysctl -p
2.安装启动elasticsearch
2.1.获取安装包
下载地址:选择你需要的版本下载
https://www.elastic.co/downloads/past-releases
# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.4.rpm
2.2.安装并启动
# rpm -ivh elasticsearch-6.5.4.rpm
修改配置文件
# grep -Ev "^#|^$" /etc/elasticsearch/elasticsearch.yml
cluster.name: my-es #设置集群名称
node.name: node-1 #设置节点名称
node.master: true #设置该节点为master节点
node.data: true #设置该节点为数据节点,生产一般不会即
#是master节点又是数据节点
path.data: /var/lib/elasticsearch #生产环境一般都会更改数据存放目录
path.logs: /var/log/elasticsearch #我自己测试就不改了
bootstrap.memory_lock: false #关闭引导检测
bootstrap.system_call_filter: false #关闭引导检测
network.host: 0.0.0.0 #设置主机地址
http.port: 9200 #设置监听端口
启动:
# chkconfig elasticsearch on
# /etc/init.d/elasticsearch start
如果启动失败,请查看日志信息获取报错信息。
2.3.检查ES信息
# curl localhost:9200
{
"name" : "node-1",
"cluster_name" : "my-es",
"cluster_uuid" : "1McmmxxOSXeCf9Sx-XSfmQ",
"version" : {
"number" : "6.5.4",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "d2ef93d",
"build_date" : "2018-12-17T21:17:40.758843Z",
"build_snapshot" : false,
"lucene_version" : "7.5.0",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}
# curl localhost:9200/_cluster/health?pretty
{
"cluster_name" : "my-es",
"status" : "green",
"timed_out" : false,
"number_of_nodes" : 1,
"number_of_data_nodes" : 1,
"active_primary_shards" : 0,
"active_shards" : 0,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 0,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0,
"task_max_waiting_in_queue_millis" : 0,
"active_shards_percent_as_number" : 100.0
}
centos6.10搭建ELK之elasticsearch6.5.4的更多相关文章
- Centos6.10搭建Hadoop三节点分布式
(一)安装JDK 1. 下载JDK,解压到相应的路径 2. 修改 /etc/profile 文件(文本末尾添加),保存 sudo vi /etc/profile # 配置 JAVA_HOME exp ...
- Centos6.5使用ELK(Elasticsearch + Logstash + Kibana) 搭建日志集中分析平台实践
Centos6.5安装Logstash ELK stack 日志管理系统 概述: 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的 ...
- ELK+Kafka学习笔记之搭建ELK+Kafka日志收集系统集群
0x00 概述 关于如何搭建ELK部分,请参考这篇文章,https://www.cnblogs.com/JetpropelledSnake/p/9893566.html. 该篇用户为非root,使用用 ...
- 搭建ELK和EFK
公司突然发下任务让我搭建elk和efk,于是做完之后写入了博客,生产环境下,亲测可用哦 搭建ELK 一共两台服务器,一个节点(logstash) 主服务器上 修改最大链接和最大打开的文件 1.临时修改 ...
- CentOS6.6搭建LNMP环境
CentOS6.6搭建LNMP环境 1.设置yum源,本地安装依赖包 1 yum -y install gcc gcc-c++ automake autoconf libtool make 2.下载依 ...
- Centos6一键搭建L2TP VPN服务器
用VPS在墙上打洞还有一种叫L2TP,也是常见的一种方式.本脚本结合了L2TP(Layer Tunneling Protocol)和IPSec(Internet Protocol Security), ...
- centos6.7搭建DHCP服务器
centos6.7搭建DHCP服务 2017-03-24 09:47:16 系统环境: centos6.7 安装之前首先使用rpm –qa | grep dhcp查看系统中是否已安装了dhcp软件包. ...
- CentOS6.5 搭建在线yum源
CentOS6.5 搭建在线yum源 发布时间: 2017-04-21 浏览次数: 611 下载次数: 1 问题描述 尽管有很多的免费镜像提供yum源服务,但是还是有必要建立自己的yum服务器 ...
- 使用Docker快速搭建ELK环境
今天由于Win系统的笔记本没带回家,其次Docker在非Linux系统下都需要安装额外的软件去镜像才行 所以感觉没有差别,先直接用Mac搭建一遍呢, 本篇部分命令和配置内容为摘抄 Mac下使用Dock ...
随机推荐
- 2019年Python数据挖掘就业前景前瞻
Python语言的崛起让大家对web.爬虫.数据分析.数据挖掘等十分感兴趣.数据挖掘就业前景怎么样?关于这个问题的回答,大家首先要知道什么是数据挖掘.所谓数据挖掘就是指从数据库的大量数据中揭示出隐含的 ...
- 201621123002《JAVA程序设计》第二周学习总结
1.本周学习总结 1.重点String类 2.Java的数据类型 3.Java中的引用类,包装类 for(类型 元素变量名(任取):遍历对象(数组名)) 2.书面作业 1.String-使用Eclip ...
- 2019.02.19 bzoj2655: calc(生成函数+拉格朗日插值)
传送门 题意简述:问有多少数列满足如下条件: 所有数在[1,A][1,A][1,A]之间. 没有相同的数 数列长度为nnn 一个数列的贡献是所有数之积,问所有满足条件的数列的贡献之和. A≤1e9,n ...
- s6-2 UDP
User Datagram Protocol UDP 是一个无连接的(connectionless)的传输层协议 UDP传输数据段,无须建立连接 UDP 在 RFC 768中描述 很多 ...
- springmvc接收数组方式总结
1.接受正常的数组 如param1=aaa¶m1=bbb¶m1=3 对于这种,在实体参数中,使用String param1[] 这种参数既可以获取数组的值 2.接受数组 ...
- 配置 npm 缓存目录,防止占满系统版
通过命令编辑缓存的路径配置: npm config edit 内如如: 指定到系统盘之外的路径,如 d: 盘:然后将原来目录中已缓存的内如剪切过来~ Notice(2019.3.15): 截图中路径含 ...
- uniGUI经验几则
uniGUI经验几则 (2015-11-07 21:42:41) 转载▼ 标签: it 分类: uniGUI 1.uniTimer的妙用 很多时候,都会遇到在一个uniForm或者uniFrame加载 ...
- Associative Containers
Notes from C++ Primer Associative containers differ in fundamental respect from the sequential conta ...
- jdk8新特性---list.stream
项目中用到了该api ,记录下来 具有get set 构造方法的实体类 开始使用: 结果为: 更多可以参考: https://blog.csdn.net/justloveyou_/article/de ...
- 论如何优雅地拿下PHPCMS
作者:J0o1ey 原文来自:论如何优雅地拿下PHPCMS 一.PHPCM PHP是国内领先的网站内容管理系统,同时也是一个开源的PHP开发框架,采用PHP5+MYSQL进行开发,拥有非常 ...