2017.7.18 linux下ELK环境搭建
参考来自:Linux日志分析ELK环境搭建
0 版本说明
因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1.7,所以采用的是5.0前的最新版本。
1 Elasticsearch : 2.4.4
2 Logstash:2.4.1
3 kibana:4.6.4
操作环境:
1 新建用户和用户组
注意:elasticsearch不能以root运行的问题 ,所以建议单独建立一个用户来运行elasticsearch。
主要步骤:
创建新用户组和新用户
将新用户添加到新组
创建用户主目录
让新用户获得其主目录有文件的拥有权限
设置新用户的密码
这里详细步骤写在: 2017.7.18 linux下用户和组的操作
操作完成后,创建了组elkgroup和用户elkuser,主目录为elkuser。
2 下载与解压
2.1 下载
下载地址:https://www.elastic.co/downloads
将下载好的安装包,通过ftp工具上传到elkuser的主目录下,并且解压。
2.2 解压
解压的命令为:
解压后,查看当前elkuser是否拥有文件的操作权限。(如果没有操作权限会使得后面启动elastic的时候无法解析路径,导致启动失败)
3 启动Elasticsearch服务
3.1 修改配置文件elasticsearch.yaml
为了能通过浏览器访问elasticsearch,需要修改配置文件elasticsearch.yaml的host和port。
注意,yaml文件最前方缩进表示层级,所以千万不要多打空格。否则报错如下:
3.2 启动elasticsearch
3.3 访问localhost:9200来验证
另外开一个终端,访问localhost:9200,出现如下页面则安装并启动服务成功。
3.4 安装head插件
下载并安装完成后,查看elasticsearch所拥有的插件:
访问localhost:9200/_plugin/head/,出现如下页面,表示安装head插件成功。这里已经有一些建好的索引了。
4 启动logstash服务
4.1 在bin目录下,新建配置文件logstash.conf
简单的配置如下:input和output为必填,filter可以根据需求来写或者不写。因为这里处理的数据为json,所以在codec里设置了json。
更详细的配置参看官网。
input{
file{
path => "E:/lyh/software/ELK/sample/data/accounts.json"
start_position => "beginning"
type => "testdata"
codec => json{
charset => "UTF-8"
}
}
} filter{
} output{
elasticsearch{
hosts => "localhost:9200"
index => "logstash-%{type}"
}
}
4.2 启动logstash服务
启动前可以先检查一下配置文件的正确性。
5 启动kibana服务
5.1 启动kibana服务
5.2 访问localhost:5601来验证
6 使用ELK处理数据
上面访问localhost:5601的时候,可以看到有一个提示:unable to fetch mapping,do you have indices matching the pattern?
而访问localhost:9200的时候,也可以看到索引里没有刚刚logstash.conf配置里的:logstash-testdata。
这就说明logstash没有把日志写入到elasticsearch。
打开account.json,随意修改(内容可以不变但是要有操作)然后点击保存。重启服务后,再刷新这两个页面就有新数据了。
刷新页面后可以看到elasticsearch中已经有了新的索引和数据:
这个时候再去kibana中创建对应的索引,就可以查看相应的数据了。此时的提示已经不见,变成了create。
点击创建后,访问kibana的discover页,就可以看到数据了。
经过一些处理后,可以看到一些更直观的画面信息。
最新文章
- Clone Graph leetcode java(DFS and BFS 基础)
- oracle 读书笔记
- ArcEngine中使用上下左右键移动地图
- 话说TP框架里的Vendor这目录是干什么用的啊?类库扩展thinkphp3.1版本
- awk字符串函数及其意义
- 博客系统typecho的安装与使用
- Elastic Stack之FileBeat使用实战
- 028、限制容器对CPU的使用(2019-01-23 周三)
- SpringMVC框架01——使用IDEA搭建SpringMVC环境
- python+selenium+unittest 实现自动化测试
- maven的profile详解
- 使用Wisdom RESTClient进行自动化测试,如何取消对返回的body内容的校验?对排除的JSON属性字段不做校验?
- UI控件Telerik UI for WinForms发布R1 2019|附下载
- B1015 德才论 (25 分)
- python文本 去掉字符串前后空格
- Angular2 constructor VS ngOnInit
- 洛谷P1876开灯 题解
- Python之查询美国护照状态
- Ubuntu 16.04安装IntelliJ出品的数据库管理工具DataGrip
- 在github上面创建属于自己的个性主页