CentOS 7 快速部署 ELK
先简单说一下部署思路及原理(不一定正确,只是个人理解而已)
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的更多相关文章
- 使用Docker快速部署ELK分析Nginx日志实践(二)
Kibana汉化使用中文界面实践 一.背景 笔者在上一篇文章使用Docker快速部署ELK分析Nginx日志实践当中有提到如何快速搭建ELK分析Nginx日志,但是这只是第一步,后面还有很多仪表盘需要 ...
- 使用Docker快速部署ELK分析Nginx日志实践
原文:使用Docker快速部署ELK分析Nginx日志实践 一.背景 笔者所在项目组的项目由多个子项目所组成,每一个子项目都存在一定的日志,有时候想排查一些问题,需要到各个地方去查看,极为不方便,此前 ...
- 【转载】Centos系统快速部署LNMP环境
PHP语言在Linux系统上运行的时候,需要在Linux系统上部署相应的Nginx.MySQL.PHP等环境,只有将这些环境参数都设置好,PHP相关应用程序才可正常运行,部署环境的方法有很多种,可手动 ...
- CentOS 7安装部署ELK 6.2.4-SUCCESS
一.ELK介绍 ELK是三款开源软件的缩写,即:ElasticSearch + Logstash + Kibana.这三个工具组合形成了一套实用.易用的监控架构,可抓取系统日志.apache日志.ng ...
- Docker环境 ELK 快速部署
Docker环境 ELK快速部署 环境 Centos 7.4 , Docker version 17.12 Docker至少3GB内存: #内核配置 echo ' vm.max_map_count = ...
- ES快速开发,ElasticsearchRestTemplate基本使用以及ELK快速部署
最近博主有一些elasticsearch的工作,所以更新的慢了些,现在就教大家快速入门,并对一些基本的查询.更新需求做一下示例,废话不多说开始: 1. ES快速上手 es下载:[https://ela ...
- .NetCore快速搭建ELK分布式日志中心
懒人必备:.NetCore快速搭建ELK分布式日志中心 该篇内容由个人博客点击跳转同步更新!转载请注明出处! 前言 ELK是什么 它是一个分布式日志解决方案,是Logstash.Elastaics ...
- MariaDB Galera Cluster 部署(如何快速部署MariaDB集群)
MariaDB Galera Cluster 部署(如何快速部署MariaDB集群) [日期:--] 来源:Linux社区 作者:Linux [字体:大 中 小] MariaDB作为Mysql的一个分 ...
- 使用Ambari快速部署Hadoop大数据环境
使用Ambari快速部署Hadoop大数据环境 发布于2013-5-24 前言 做大数据相关的后端开发工作一年多来,随着Hadoop社区的不断发展,也在不断尝试新的东西,本文着重来讲解下Amb ...
随机推荐
- Java内存可见性
如果一个线程对共享变量的修改,能够被其它线程看到,那么就能说明共享变量在线程之间是可见的.如果一个变量在多个线程的工作内存中都存在副本,那么这个变量就是这几个线程的共享变量.Java内存模型(Java ...
- angular --- s3core移动端项目(二)
product-ctrl.js angular.modules('myApp').controller('ProductCtrl',['$scope','$rootScope','$timeout', ...
- 在1-10中选择一个数,输出x+xx+xxx+xxx....x之和,如:数字为2,则2+22=24
代码: package bao; import java.util.Random; public class a { public static void main(String[] args) { ...
- 第二周javaweb学习进度表
第一周 所花时间 三天 代码量 200行 博客量 3篇 知识点了解到的 学习到了HTML编程语言的相关知识比如checkbox复选框和radio单选按钮以及form表单的使用方法,form表单可以 ...
- day042 css 选择器
css(Cascading Style Sheet) 层叠样式表,定义了如何显示HTML元素,给HTML设置样式,让它看起来更好 一.css语法 css样式包括两部门,选择器(给谁的样式)和声明(什么 ...
- 『TensorFlow』滑动平均
滑动平均会为目标变量维护一个影子变量,影子变量不影响原变量的更新维护,但是在测试或者实际预测过程中(非训练时),使用影子变量代替原变量. 1.滑动平均求解对象初始化 ema = tf.train.Ex ...
- mongoengine 分页 切片与 skip + limit 的区别
首先要了解切片与 skip 的原理 切片原理是将 index(索引) 或 cursor(游标)移动到 start 位置再 进行切分: skip原理是跳过start条数据后再获取 1. 单纯的普通分页用 ...
- vue 数组push元素 视图没更新
Vue 包含一组观察数组的变异方法,所以它们也将会触发视图更新.这些方法如下: push() pop() shift() unshift() splice() sort() reverse() 问题描 ...
- IE9下table th不显示边框解决方法
添加下面两行样式即可 th, td{ background-clip: padding-box; /*背景被裁剪到内边距框*/ position:relative; }
- 如何把已有SQLSERVER数据库更名而且附加到数据库中?
如何把已有SQLSERVER数据库更名而且附加到数据库中? 例如:已有数据库:zrmaa,希望更名为jjsh 特别提醒:数据库名中不能加入下划线,因为数据库日志文件有下划线. 把数据库文件mdf和数据 ...