欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

部署ELK-6.3.0

程序员文章站 2024-03-22 11:54:58
...

ELK基本原理我就不再阐述了,网上一搜一大推
首先说一下运行环境:
部署ELK-6.3.0
(CentOS7和java1.8.0)

然后登陆elastic的官网地址下载ELK组件:https://www.elastic.co/cn/products
我是下载了6.3.0版本的:
elasticsearch-6.3.0
logstash-6.3.0
kibana-6.3.0-linux-x86_64
下载完之后逐个解压到随意目录下,我这里的安装顺序为elasticsearch、logstash、kibana

一、elasticsearch的安装
在成功运行elasticsearch之前需要完成几个配置的修改,包括系统配置和应用设置,还有在启动的时候不可以使用root用户,elasticsearch文件夹的属主和属组需要修改为普通用户

1、修改系统配置:

vim /etc/security/limits.conf
# 在最后添加/修改这4行,因为elasticsearch对系统最大连接数有要求
# 需重启生效

* soft nofile 65536
* hard nofile 65536
* soft nproc  65536
* hard nproc  65536
vim /etc/security/limits.d/20-nproc.conf
# 第一行最后一个数,修改为4096,如果是则不用修改
# limits.d下面的文件可能不是20-nproc.conf,可能是19-nproc.conf或者其他数字开头的文件。
# 修改内容是一样的,一般这个文件夹下就一个文件
# 需重启生效

*          soft    nproc     4096
root       soft    nproc     unlimited
vim /etc/sysctl.conf
# 添加如下参数
vm.max_map_count = 655360
fs.file-max=655360

# 对修改内容生效
sysctl -p  

2、修改elasticsearch配置文件

vim /you_path/elasticsearch-6.3.0/config/elasticsearch.yml
# 修改内容
path.data: /you_path/elasticsearch-6.3.0/data
path.logs: /you_path/elasticsearch-6.3.0/logs
network.host: 0.0.0.0

# 添加如下参数
http.cors.enabled: true    // 开启跨域访问支持,默认为false
http.cors.allow-origin: "*"    // 跨域访问允许的域名地址,支持正则

ok,以上配置完修改后就可以启动ELK,通过以下命令启动

chown -R es:es /you_path/elasticsearch-6.3.0
cd /you_path/elasticsearch-6.3.0
./bin/elasticsearch -d        // -d 后台运行,我会在另外一篇文章里使用supervisor方法统一启动ELK

启动成功后访问elasticsearch的默认9200端口,就会出现类似以下的内容
部署ELK-6.3.0

如果没有启动成功,在启动命令的时候去掉-d参数,根据报错信息修改配置参数等

二、logstash的安装
logstash的安装就非常简单了,把下载的文件解压到相应的目录下,然后根据你的需求写一个配置文件,再启动就ok了,这里面我贴出来一个简单的配置文件:

vim /you_path/logstash-6.3.0/config/test.conf
# 没有这个文件则创建,创建什么文件名无所谓,后面会根据这个文件来启动logstash

input {
        file {
                path => ["/tmp/test_data"]
                codec => json {
                        charset => "UTF-8"
                }
        }
}

output {
        elasticsearch {
                hosts => ["172.168.254.26:9200"]
                index => "lalala-%{+YYYY.MM.dd}"
                document_type => "test"
                #user => "elastic"
                #password => "changeme"
        }

保存并退出,指定这个文件来启动logstash

cd /you_path/logstash-6.3.0
nohup ./bin/logstash -f config/test.conf &> run.log &      // 后台运行logstash

启动完成之后因为没有安装kibana,展示不出来logstash收集的数据,所有接着安装kibana

三、kibana的安装
kibana的安装更简单了,解压缩之后直接启动程序即可。这个前提条件是elasticsearch和kibana是在一台服务器里安装的,如果elasticsearch在其他服务器里面安装则需要修改相应的配置,我想没有多少人会分开安装吧?下面是启动命令:

cd /you_path/kibana-6.3.0-linux-x86_64/
nohup ./bin/kibana -H 0.0.0.0 &> run.log &      // 后台运行kibana

ok,稍等一会则完成启动,可以看出kibana的页面是越做越好看
部署ELK-6.3.0
到这里ELK的三大组件全部安装成功,并成功启动。现在展示一个收集日志的流程


之前在logstash的test.conf文件中定义了日志的目录,现在添加一些数据以便查看

vim /tmp/test_data

{"user": "test", "age": "11"}
{"user": "test1", "age": "12"}
{"user": "test2", "age": "13"}
{"user": "test3", "age": "14"}
{"user": "test4", "age": "15"}
{"user": "test5", "age": "16"}
{"user": "test6", "age": "17"}
{"user": "test7", "age": "18"}
{"user": "test8", "age": "19"}
{"user": "test9", "age": "20"}

日志文件中已经填入内容,这时访问kibana,来创建索引
部署ELK-6.3.0
部署ELK-6.3.0

这时会显示在test.conf中定义的index,添加索引是支持正则的,所以在Index pattern中可以填入“lalala-*”,像如下图片一样,然后点击Next step
部署ELK-6.3.0

然后选择@timestamp,选择这个是为每个字段标记时间,可以让收集到的数据在时间轴上展示,到此添加一个index完成
部署ELK-6.3.0

点击Discover,选择咱们的index,这时右侧就展示了收集到的所有数据。
部署ELK-6.3.0

相关标签: ELK