ELK日志收集部署

  1. 1.   时间同步:

ntpdate pool.ntp.org

echo ‘*/5 * * * * ntpdate pool.ntp.org’>> /var/spool/cron/root

  1. 2.   关闭防火墙和selinux

/etc/init.d/iptables  stop

chkconfig iptables off

Sed –I ‘s/SELINUX=enforcing/SELINUX=disabled/g’  /etc/selinux/config

  1. 3.   安装java

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

tar zxf jdk-7u45-linux-x64.tar.gz

mv jdk1.8.0_92/ /usr/local/jdk

设置jdk环境变量

vi /etc/profile

-------------------------------------------------------

JAVA_HOME=/usr/local/jdk

PATH=$PATH:$JAVA_HOME/bin

CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export JAVA_HOME PATHCLASSPATH

-------------------------------------------------------

source /etc/profile

java -version

  1. 4.   下载redis

wget http://download.redis.io/releases/redis-3.2.3.tar.gz
tar zxf redis-3.2.3.tar.gz
cd redis-3.2.3
make 
make PREFIX=/usr/local/redis install
mkdir /usr/local/redis/conf
cp  redis.conf /usr/local/redis/conf/redis.conf.bak
cd /usr/local/redis/conf
cp redis.conf.bak redis.conf

添加环境变量
echo ‘PATH=$PATH:/usr/local/redis/bin/‘>>/etc/profile
source /etc/profile

启动redis:

/usr/local/redis/bin/redis-server/usr/local/redis/conf/redis.conf &

  1. 5.   下载logstash  elasticsearch  kibana

https://www.elastic.co/downloads

elasticsearch-5.0.0.tar.gz

logstash-5.0.0.tar.gz

kibana-5.0.0-linux-x86_64.tar.gz

  1. 6.   解压文件:

tar zxf logstash-5.0.0.tar.gz

tar zxf elasticsearch-5.0.0.tar.gz

tar zxf kibana-5.0.0-linux-x86_64.tar.gz

  1. 7.   移动到统一管理目录:

mv elasticsearch-5.0.0 /usr/local/elasticsearch

mv logstash-5.0.0 /usr/local/logstash

mv kibana-5.0.0-linux-x86_64 /usr/local/kibana

  1. 8.   备份配置文件:

cp /usr/local/logstash/config/logstash.yml /usr/local/logstash/config/logstash.yml.bak.$(date+%F)

cp /usr/local/elasticsearch/config/elasticsearch.yml/usr/local/elasticsearch/config/elasticsearch.yml.bak.$(date +%F)

cp /usr/local/kibana/config/kibana.yml/usr/local/kibana/config/kibana.yml.bak.$(date +%F)

  1. 9.  配置Elasticsearch

创建用户

默认elasticsearch不支持root用户启动,所以需要先创建一个普通用户

groupadd elastic

useradd elastic –g  elastic –M

chown -R elastic.elastic  /usr/local/elasticsearch/

修改配置文件:

network.host: 192.168.0.248

http.port: 9200

su elastic

/usr/local/elasticsearch/bin/elasticsearch –d

验证启动:

curl http://localhost:9200/

添加开机启动:

echo ‘/usr/local/elasticsearch/bin/elasticsearch-d’ >>/etc/rc.local

注意错误:

ERROR: bootstrap checks failed

问题:max file descriptors [65535] for elasticsearchprocess likely too low, increase to at least [65536]

解决:vi/etc/security/limits.conf

*             -       nofile          65536

或者

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

问题:max number of threads [1024] for user[elasticsearch] likely too low, increase to at least [2048]

解决:vi/etc/security/limits.d/90-nproc.conf

* soft nproc 2048

需重启生效。

问题:max virtual memory areas vm.max_map_count [65530]likely too low, increase to at least [262144]

解决:vi/etc/sysctl.conf

vm.max_map_count=655360

sysctl -p

  1. 10.       配置kibana:

修改配置文件:

vi /usr/local/kibana/config/kibana.yml

server.port: 5601

server.host: "192.168.0.248"

elasticsearch.url: http://192.168.0.248:9200

  1. 11.       配置logstash

测试logstash:

cd logstash-5.0.0

bin/logstash -e ‘input { stdin { } } output {stdout {} }‘

hello world

2013-11-21T01:22:14.405+0000 0.0.0.0 helloworld

配置logstash服务端:

vi /usr/local/logstash/config/logstash.yml

input {

redis {

host => “192.168.0.248”

port =>6379

type =>”redis-input”

data_type=>”list”

key =>”logstash:redis”

}

}

output {

elasticsearch{

hosts => ["192.168.0.248:9200"]

}

}

客户端:

vi /usr/local/logstash/config/logstash.yml

input {

file{

type=>”nginx_access”

path=>[”/usr/local/nginx/logs/access.log”]

}

}

output {

redis{

host  => “192.168.0.248”

data_type=> “list”

key=> “logstash:redis”

}

}

启动客户端:

/usr/local/logstash/bin/logstash –f /usr/local/logstash/conf/logstash.conf

或yum安装:

/usr/share/logstash/bin/logstash -f/etc/logstash/conf.d/logstash.conf

  1. 12.1
  2. 13.1

客户端yum安装:

rpm --importhttps://artifacts.elastic.co/GPG-KEY-elasticsearch

cat > /etc/yum.repos.d/logstash.repo <<EOF

[logstash-5.x]

name=Elastic repository for 5.x packages

baseurl=https://artifacts.elastic.co/packages/5.x/yum

gpgcheck=1

gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch

enabled=1

autorefresh=1

type=rpm-md

EOF

yum clean all

yum install logstash –y

时间: 2024-10-06 11:08:45

ELK日志收集部署的相关文章

elk日志收集

ELK日志系统整体架构: 结构解读: 整个架构从左到右,总共分为5层 最左边的是业务服务器集群,上面安装了filebeat做日志采集,同时把采集的日志分别发送给多个kafka 服务. 第二层.数据缓存层,把数据转存到本地的kafka broker+zookeeper 集群中. 第三层.数据转发层,这个单独的Logstash节点会实时去kafka broker集群拉数据,转发至ES DataNode. 第四层.数据持久化存储,ES DataNode 会把收到的数据,写磁盘,建索引库. 第五层.数据

结合Docker快速搭建ELK日志收集分析平台

结合Docker快速搭建ELK日志收集分析平台 2017-03-27 09:39 阅读 172 评论 0 作者:马哥Linux运维-Eason ELK Stack ELK (Elasticsearch + Logstash + Kibana),是一个开源的日志收集平台,用于收集各种客户端日志文件在同一个平台上面做数据分析. Introduction Elasticsearch, 基于json分析搜索引擎Logstash, 动态数据收集管道Kibana, 可视化视图将elasticsearh所收集

elk日志收集之rsyslog软连接监控文件深度坑

业务中通过rsyslog监控本地文件收集了一些redis和mc的慢日志,推到elk集群分析,这些日志一天一个文件,每晚零点5分通过计划任务用软连接的方式将新的文件固定到指定文件下,但是最近发现日志丢了很多,分析中发现了一个深坑,先说下现有的配置: ....................... 浏览全部请点击运维网咖社地址:elk日志收集之rsyslog软连接监控文件深度坑

FILEBEAT+ELK日志收集平台搭建流程

filebeat+elk日志收集平台搭建流程 1.         整体简介: 模式:单机 平台:Linux - centos - 7 ELK:elasticsearch.logstash.kibana三款开源软件的集合. FILEBEAT:代替logstash的采集功能,轻量.耗用小. 目前收集的有nginx日志.java日志[单行|多行]. 都是通过在客户端的生成日志配置文件中定义好初步json格式,然后利用filebeat采集到logstash,存储到elasticsearch,最后通过k

ELK日志收集平台部署

需求背景 一位朋友的公司研发最近有一些苦恼.由于他们公司的后台服务有三台,每当后台服务运行异常,需要看日志排查错误的时候,都必须开启3个ssh端口进行查看,研发们觉得很不方便,于是便有了统一日志收集与查看的需求. 这里,我用ELK集群,通过收集三台后台服务的日志,再统一进行日志展示,实现了这一需求. 当然,当前只是进行了简单的日志采集,如果后期相对某些日志字段进行分析,则可以通过logstash以及Kibana来实现. 部署环境 系统:CentOS 7 软件: elasticsearch-6.1

ELK 日志服务器安装部署

高清原文 乌龟运维 wuguiyunwei.com 简单介绍: ELK是三个开源工具组成,简单解释如下: Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等. Logstash是一个完全开源的工具,它可以对你的日志进行收集.过滤,并将其存储供以后使用(如,搜索). Kibana 也是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的

ELK日志收集分析系统配置

ELK是日志收益与分析的利器. 1.elasticsearch集群搭建 略 2.logstash日志收集 我这里的实现分如下2步,中间用redis队列做缓冲,可以有效的避免es压力过大: 1.n个agent对n个服务的log做日志收集(1对1的方式),从日志文件解析数据,存入broker,这里用的是redis的发布订阅模式的消息队列,当然你可以选用kafka,redis比较方便: 3.indexer做日志汇总,从redis队列中拿数据入es: 下面给出agent和index的配置示例: 1.dr

ELK日志收集demo

架构目标 说明 系统: CentOS Linux release 7.5.1804 ELK版本: filebeat-6.8.5-x86_64.rpm, logstash-6.8.5.rpm, elasticsearch-6.8.5.rpm, kibana-6.8.5-x86_64.rpm kafka_2.11-2.0.0 zookeeper-3.4.12 地址 名称 功能, 按图左至右 192.168.9.133 test1.xiong.com nginx + 虚拟主机 + filebeat 1

单机部署ELK日志收集、分析系统

最近做日志分析,发现logstash较符合自己的需求, Logstash:做系统log收集,转载的工具.同时集成各类日志插件,对日志查询和分析的效率有很大的帮助.一般使用shipper作为log收集.indexer作为log转载. Logstash shipper收集log 并将log转发给redis 存储 Logstash indexer从redis中读取数据并转发给elasticsearch redis:是一个db,logstash shipper将log转发到redis数据库中存储.Log