搭建ELK平台

下载 Elasticsearch、Logstash、Kibana

官方地址:https://www.elastic.co/cn/products

cd  /usr/local

    wgethttps://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.1.tar.gz

    wget https://artifacts.elastic.co/downloads/logstash/logstash-5.6.1.tar.gz

    wget https://artifacts.elastic.co/downloads/kibana/kibana-5.6.1-linux-x86_64.tar.gz

tar  -zxvfelasticsearch-5.6.1.tar.gz

tar  -zxvf  logstash-5.6.1.tar.gz

tar  -zxvf  kibana-5.6.1-linux-x86_64.tar.gz

启动Elasticsearch

Elasticsearch不能使用root用户运行

useradd elk

sudo su - elk -c  "/usr/local/elasticsearch-5.6.1/bin/elasticsearch"

验证:curlhttp://localhost:9200

启动Logstash

创建配置文件logstash.conf 声明输入-input与输出-output、及文件格式定义-filter

参考:

input {

        beats {

                port => 5044

        }

}

output {

        stdout {

                codec => rubydebug

        }

        elasticsearch {

                hosts => ["192.168.12.235:9200"]

        }

}

启动:/usr/local/logstash/bin/logstash  -f  ./logstash.conf

启动Kibana

/usr/local/kibana/bin/kibana

验证:curlhttp://localhost:5601

至此安装完毕,具体配置需要在特定的场景进行调整。


心得:ELK 主要的作用是将日志 标准化、集中化,最终达到可视化的效果。

        搭建极其简单,最要的是在配置,整体的规划架构。

        配置的影响:     例如对Nginx日志不做处理的,只能起到日志集中化的作用。传输过来的日志信息全部被一个message变量标识着,无法去区分其中的细节,包括源IP、访问页面、状态码等。数据呈现可视化的效果也将极差。所以需要在日志产生时就定义其格式,并在Logstash收集处定义传输输出的日志格式(如源IP、访问页面、状态码都用变量定义起来),再将日志数据传输Elasticsearch。最终在Kibana中对这些数据做可视化。

        整体规划的影响:产品的用户上一定规模时,对服务端(Elasticsearch及Kibana)收集日子的能力将是一个非常大的考验。其中包括抗并发、日子处理等。可适当在中间层级引进缓存技术,也可采取分布式的结构的减少这一压力。

学习资料:https://kibana.logstash.es/content/

你可能感兴趣的:(搭建ELK平台)