ELK介绍

ELK是三个开源软件的缩写,即elasticsearch、logstack、kibana。

Elasticsearch:开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。(搜索引擎)

Logstash:主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。(日志搜集器)

Kibana :一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。(可视化)

利用ELK可替代原始的MySQL/Oracle + ECharts方案,极大减少人工成本。

背景

elasticsearch-5.5.2 rpm 包

5台机器搭建,IP分别为:

192.168.33.232   node4

192.168.33.233   node5

192.168.33.235   node7

192.168.33.236   node8

192.168.33.230   node11

其中 node4为主节点,结构为1主5从。

硬件:4C6G

软件:redhat7.4 jdk1.8.0_144

1. 系统设置(5台机器统一)

sed -e '$a vm.max_map_count = 262144' -i /etc/sysctl.conf

sysctl -p

echo "ulimit -SHn 1048576" >> /etc/rc.local

sed -e '$a DefaultLimitCORE=infinity\nDefaultLimitNOFILE=1048576\nDefaultLimitNPROC=1048576' -i /etc/systemd/system.conf

cat >> /etc/security/limits.conf << EOF

*           soft   nofile       1048576

*           hard   nofile       1048576

*           soft   nproc        1048576

*           hard   nproc        1048576

EOF

sed -i 's/4096/1048576/' /etc/security/limits.d/20-nproc.conf

sed -e '/root       soft    nproc     unlimited/a\*           soft   nofile       1048576\n*           hard   nofile       1048576' -i /etc/security/limits.d/20-nproc.conf

  1. 修改elasticsearch.yml文件

192.168.33.232   node4

#-----

cluster.name: es-application

node.name: node-1 #其他节点用另外的名称

network.host: 192.168.33.232 #其他节点写上对应的ip

http.port: 9200

http.cors.enabled: true

http.cors.allow-origin: "*"

node.master: true #其他节点改成false

node.data: true

discovery.zen.ping.unicast.hosts: ["192.168.33.232", "192.168.33.233","192.168.33.235","192.168.33.236","192.168.33.230"]#其他节点也写这个ip

bootstrap.system_call_filter: false

#----

192.168.33.233   node5

#-----

cluster.name: es-application

node.name: node-2 #其他节点用另外的名称

network.host: 192.168.33.233 #其他节点写上对应的ip

http.port: 9200

http.cors.enabled: true

http.cors.allow-origin: "*"

node.master: true #其他节点改成false

node.data: true

discovery.zen.ping.unicast.hosts: ["192.168.33.232", "192.168.33.233","192.168.33.235","192.168.33.236","192.168.33.230"]#其他节点也写这个ip

bootstrap.system_call_filter: false

#----

192.168.33.235   node7

#-----

cluster.name: es-application

node.name: node-3 #其他节点用另外的名称

network.host: 192.168.33.235 #其他节点写上对应的ip

http.port: 9200

http.cors.enabled: true

http.cors.allow-origin: "*"

node.master: true #其他节点改成false

node.data: true

discovery.zen.ping.unicast.hosts: ["192.168.33.232", "192.168.33.233","192.168.33.235","192.168.33.236","192.168.33.230"]#其他节点也写这个ip

bootstrap.system_call_filter: false

#----

192.168.33.236   node8

#-----

cluster.name: es-application

node.name: node-4 #其他节点用另外的名称

network.host: 192.168.33.236 #其他节点写上对应的ip

http.port: 9200

http.cors.enabled: true

http.cors.allow-origin: "*"

node.master: true #其他节点改成false

node.data: true

discovery.zen.ping.unicast.hosts: ["192.168.33.232", "192.168.33.233","192.168.33.235","192.168.33.236","192.168.33.230"]#其他节点也写这个ip

bootstrap.system_call_filter: false

#----

192.168.33.230   node11

#-----

cluster.name: es-application

node.name: node-5 #其他节点用另外的名称

network.host: 192.168.33.230 #其他节点写上对应的ip

http.port: 9200

http.cors.enabled: true

http.cors.allow-origin: "*"

node.master: true #其他节点改成false

node.data: true

discovery.zen.ping.unicast.hosts: ["192.168.33.232", "192.168.33.233","192.168.33.235","192.168.33.236","192.168.33.230"]#其他节点也写这个ip

bootstrap.system_call_filter: false

#----

至此,超级简单版本的elasticsearch1主5从的分布式集群搭建完毕。

测试:

-->查看集群监看状态

curl '192.168.33.232:9200/_cat/health?v'

-->查看集群节点

curl '192.168.33.232:9200/_cat/nodes?v'

-->查看所有索引

curl '192.168.33.232:9200/_cat/indices?v'

界面:

ELK5+redhat7.4配置elasticsearch集群的更多相关文章

  1. 配置 Elasticsearch 集群

    Elasticsearch 的安装非常简单,笔者在前文<单机部署 ELK>中已经介绍过了,本文主要介绍集群的配置,并解释常见配置参数的含义. 要配置集群,最简单的情况下,设置下面几个参数就 ...

  2. ES2:ElasticSearch 集群配置

    ElasticSearch共有两个配置文件,都位于config目录下,分别是elasticsearch.yml和logging.yml,其中,elasticsearch.yml 用来配置Elastic ...

  3. Elasticsearch集群搭建教程及生产环境配置

    Elasticsearch 是一个极其强大的搜索和分析引擎,其强大的部分在于能够对其进行扩展以获得更好的性能和稳定性. 本教程将提供有关如何设置 Elasticsearch 集群的一些信息,并将添加一 ...

  4. 我的ElasticSearch集群部署总结--大数据搜索引擎你不得不知

    摘要:世上有三类书籍:1.介绍知识,2.阐述理论,3.工具书:世间也存在两类知识:1.技术,2.思想.以下是我在部署ElasticSearch集群时的经验总结,它们大体属于第一类知识“techknow ...

  5. 01篇ELK日志系统——升级版集群之elasticsearch集群的搭建

    [ 前言:以前搭了个简单的ELK日志系统,以我个人的感觉来说,ELK日志系统还是非常好用的.以前没有弄这个ELK日志系统的时候,线上的项目出了bug,报错了,要定位错误是什么,错误出现在哪个java代 ...

  6. Ubuntu 14.04中Elasticsearch集群配置

    Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...

  7. Elasticsearch集群配置以及REST API使用

    ES安装与启动 在官网下载压缩包,解压后直接运行bin目录下的.bat文件即可.下载地址戳这里. ES配置集群 Elasticsearch配置集群很简单,只要配置一个集群的 名称 ,ES就会自动寻找并 ...

  8. elasticsearch 集群配置

    2015-10-10 09:56 by 轩脉刃, 999 阅读, 1 评论, 收藏, 编辑 elasticsearch 集群 搭建elasticsearch的集群 现在假设我们有3台es机器,想要把他 ...

  9. Elasticsearch集群节点配置详解

    注意:如果是在局域网中运行elasticsearch集群也是很简单的,只要cluster.name设置一致,并且机器在同一网段下,启动的es会自动发现对方,组成集群. 2.elasticsearch- ...

随机推荐

  1. Codeforces6E_Exposition

    题意 给定一个序列,求有多少个最长连续子序列满足最大值减最小值之差不超过\(k\). 分析 跟序列最大值最小值有关的可以想到单调栈,先预处理出每个数作为最大值能延伸的区间,然后枚举每个数作为最大值. ...

  2. [Wpf]在C#中添加 collectionViewSource

    Products = new ObservableCollection<Product>(products); ProductOptions = new ObservableCollect ...

  3. MySQL数据库入门备份数据库

    MySQL数据库入门——备份数据库   一提到数据,大家神经都会很紧张,数据的类型有很多种,但是总归一点,数据很重要,非常重要,因此,日常的数据备份工作就成了运维工作的重点中的重点的重点....... ...

  4. MySQL索引优化 笔记

    少取字段,建立合理的索引 表优化: 1 定长与变长分离 如果都是定长 查询比较快 因为每一行的字节都是固定的 fixed 2 常用字段和不常用字段要分离 用户表 常用 放主表 个人介绍不常用 还比较长 ...

  5. clientXxx与offsetXxx与scrollXxx区别

    1.clientXxx与offsetXxx与scrollXxx 1.clientXxx: clientWidth = width+padding(left+right) clientHeight = ...

  6. PHP之常用第三方库

    汇总常用的第三方库,方便快速进行开发,避免重复造轮子 1. 时间相关 nesbot/carbon(在编写 PHP 应用时经常需要处理日期和时间,使用Carbon 会很方便– 继承自 PHPDateTi ...

  7. Android 一共有多少种动画?准确告诉你!

    Android 动画 Android 动画在开发中是不可或缺的功能,或者说是界面灵动的添加剂.那你是否总结过 Android 中总共为开发者提供了多少种方式的动画呢?今天就为大家总结归纳一下.   报 ...

  8. php邮件防注入以及实现经典代码

    <?php function spamcheck($field) {     // filter_var() 过滤 e-mail     // 使用 FILTER_SANITIZE_EMAIL ...

  9. Flask开发系列之Web表单

    Flask开发系列之Web表单 简单示例 from flask import Flask, request, render_template app = Flask(__name__) @app.ro ...

  10. 作为测试人员,不能不懂的adb命令和操作

    刚从web转到app测试,很多知识需要补充,记录一下   1.概念 其实我们口中所讲的adb是个泛指,这其中有两个工具——Fastboot和ADB   fastboot 快速启动,usb链接数据线的一 ...