先简单说一下部署思路及原理(不一定正确,只是个人理解而已)

1.修改系统参数,以便安装软件

2.安装配置elasticsearch,这个相当于总监测中心,用来收集logstash监测的各种服务应用日志,然后将监测的各个logstash的日志发送给kibana

discovery.zen.ping.unicast.hosts: ["192.168.0.53:9300"]    #这个相当于内部通讯端口,用于es节点之间的通讯,另一个9200端口则是用于做外部通讯

3.安装配置logstash,这个相当于单点监测中心,因为我们可能需要同时监测几十服务器的日志,可以在各个服务器上安装logstash,收集所在服务器的日志信息

4.安装配置kibana,这个相当图形监控界面,将elasticsearch发送过来的汇总日志以图形化的方式呈现出来

在安装之前,先修改以下配置

# vim /etc/security/limit.conf
* hard nofile
* soft nofile
* soft nproc
* hard nproc # vim /etc/sysctl.conf
vm.max_map_count =
net.core.somaxconn=
net.ipv4.ip_forward = # sysctl -p
# systemctl disabled firewalld
# systemctl stop firewalld
# iptables -F

三个软件的下载连接如下

https://www.elastic.co/cn/downloads

下载这三个包

kibana-6.2.4-x86_64.rpm elasticsearch-6.2.4.rpm logstash-6.2.4.rpm

部署java环境,可以参考https://www.cnblogs.com/biaopei/p/7730484.html

安装 yum install elasticsearch-6.2.4.rpm -y

修改配置文件

# grep -v ^# /etc/elasticsearch/elasticsearch.yml
cluster.name: elk-stack
node.name: elk.com
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
http.port:
discovery.zen.ping.unicast.hosts: ["192.168.0.53:9300"] (ip也要修改)
discovery.zen.minimum_master_nodes:

启动服务

systemctl start elasticsearch

查看端口是否正常开启(用netstat也可,ss好像是比netstat好一点)

ss -ntlup| grep -E "9200|9300"

安装logstash

# yum install logstash-6.2..rpm -y
# echo 'path.config: /etc/logstash/conf.d' >>/etc/logstash/logstash.yml

配置文件

# vim /etc/logstash/conf.d/syslog.conf
input { #收集本地log
file {
type => "logtest"
path => "/var/log/messages"
start_position => "beginning"
} #filebeat客户端
beats {
port =>
} } #筛选
#filter { } output { #标准输出,调试使用
stdout {
codec => rubydebug { }
} # 输出到es
elasticsearch {
hosts => ["http://192.168.0.53:9200"] ip也需要修改
index => "%{type}-%{+YYYY.MM.dd}"
} }

调试启动

# /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/syslog.conf --config.test_and_exit
# /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/syslog.conf
# systemctl enable logstash
# systemctl start logstash

安装配置kibana

yum install kibana-6.2.-x86_64.rpm nodejs -y

修改配置文件

# egrep -v "^#|^$" /etc/kibana/kibana.yml
server.port:
server.host: "0.0.0.0"
elasticsearch.url: "http://192.168.0.53:9200" 这个ip需要根据自己的实际服务器ip修改,就是改为本地ip就行了
kibana.index: ".kibana"

汉化kibana

# yum install -y git
# git clone https://github.com/anbai-inc/Kibana_Hanization.git
# cd Kibana_Hanization
# python main.py /usr/share/kibana

重启kibana

# systemctl restart kibana

浏览器访问kibana

ip:5601

CentOS 7 快速部署 ELK的更多相关文章

  1. 使用Docker快速部署ELK分析Nginx日志实践(二)

    Kibana汉化使用中文界面实践 一.背景 笔者在上一篇文章使用Docker快速部署ELK分析Nginx日志实践当中有提到如何快速搭建ELK分析Nginx日志,但是这只是第一步,后面还有很多仪表盘需要 ...

  2. 使用Docker快速部署ELK分析Nginx日志实践

    原文:使用Docker快速部署ELK分析Nginx日志实践 一.背景 笔者所在项目组的项目由多个子项目所组成,每一个子项目都存在一定的日志,有时候想排查一些问题,需要到各个地方去查看,极为不方便,此前 ...

  3. 【转载】Centos系统快速部署LNMP环境

    PHP语言在Linux系统上运行的时候,需要在Linux系统上部署相应的Nginx.MySQL.PHP等环境,只有将这些环境参数都设置好,PHP相关应用程序才可正常运行,部署环境的方法有很多种,可手动 ...

  4. CentOS 7安装部署ELK 6.2.4-SUCCESS

    一.ELK介绍 ELK是三款开源软件的缩写,即:ElasticSearch + Logstash + Kibana.这三个工具组合形成了一套实用.易用的监控架构,可抓取系统日志.apache日志.ng ...

  5. Docker环境 ELK 快速部署

    Docker环境 ELK快速部署 环境 Centos 7.4 , Docker version 17.12 Docker至少3GB内存: #内核配置 echo ' vm.max_map_count = ...

  6. ES快速开发,ElasticsearchRestTemplate基本使用以及ELK快速部署

    最近博主有一些elasticsearch的工作,所以更新的慢了些,现在就教大家快速入门,并对一些基本的查询.更新需求做一下示例,废话不多说开始: 1. ES快速上手 es下载:[https://ela ...

  7. .NetCore快速搭建ELK分布式日志中心

    懒人必备:.NetCore快速搭建ELK分布式日志中心   该篇内容由个人博客点击跳转同步更新!转载请注明出处! 前言 ELK是什么 它是一个分布式日志解决方案,是Logstash.Elastaics ...

  8. MariaDB Galera Cluster 部署(如何快速部署MariaDB集群)

    MariaDB Galera Cluster 部署(如何快速部署MariaDB集群) [日期:--] 来源:Linux社区 作者:Linux [字体:大 中 小] MariaDB作为Mysql的一个分 ...

  9. 使用Ambari快速部署Hadoop大数据环境

    使用Ambari快速部署Hadoop大数据环境   发布于2013-5-24   前言 做大数据相关的后端开发工作一年多来,随着Hadoop社区的不断发展,也在不断尝试新的东西,本文着重来讲解下Amb ...

随机推荐

  1. struts2注释返回json数据

  2. 问题1——之Linux虚拟机ip地址消失

    原文转自 https://blog.csdn.net/keep_walk/article/details/75115926 以前一直通过ifconfig命令查看ip地址,但是今天用XShell连接自己 ...

  3. obs studio 使用

    专业,开源,无广告,免费,录屏/推流神器--obs studio 稍微简单的也有captura, 原理:调用本地API获取音频流,图像流(全屏幕,单个windows窗口的图像输出)->开源音视频 ...

  4. 通过class改变样式

    1.判断class属性 判断一个元素中是否含有指定的class属性值 function hasClass(obj,cn){ //创建正则表达式 var reg=new RegExp("\\b ...

  5. C#Windows窗体中添加了AxWindowsMediaPlayer的详细用法影响键盘操作的问题

    最近在写一个飞机大战游戏,但在为游戏背景添加声音的时候,发现添加了AxWindowsMediaPlayer的详细用法音乐控件不能再通过键盘控制飞机的移动了,在网上查了许久,没找到原因,差点就想去找老师 ...

  6. weex中css不能使用子元素选择器

    weex中css不能使用子元素选择器 刚入手可能会有错误,有误导地方请谅解,不过都是亲身踩坑

  7. Liblinear and Libsvm-rank训练数据的bash代码

    Liblinear and Libsvm-rank训练数据的bash代码: for j in "amazon_mp3" "video_surveillance" ...

  8. VersionControl:git

    关于VersionControl VersionControl即版本控制,版本控制是一种记录文件或文件集随时间变化的系统,以便以后可以查阅调用特定版本,版本控制系统不仅可以应用于软件源代码的文本文件, ...

  9. Linux 安装 ffmpeg

    在安装ffmpeg之前,需要先安装一些必需组件.包括但不限于以下组件(有的系统里面可能已经安装过) 首先在根目录下创建:ffmpeg_sources 1.Yasm sudo apt-get insta ...

  10. Linux 搭建Hadoop集群 成功

    内容基于(自己的真是操作步骤编写) Linux 搭建Hadoop集群---Jdk配置 Linux 搭建Hadoop集群 ---SSH免密登陆 一:下载安装 Hadoop 1.1:下载指定的Hadoop ...