一、搭建环境
系统环境:CentOS7
安装iptables:https://blog.csdn.net/momo_mutou/article/details/81739155
ElasticSearch: https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.4.tar.gz
Logstash: https://artifacts.elastic.co/downloads/logstash/logstash-6.5.4.tar.gz
Kibana: https://artifacts.elastic.co/downloads/kibana/kibana-6.5.4-linux-x86_64.tar.gz
二、Elasticsearch安装配置
1.进入路径并远程下载安装包
$ cd /usr/local $ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.4.tar.gz
2.解压至/usr/local/目录下并删除安装包
$ tar -zxvf elasticsearch-6.5.4.tar.gz
$ rm -rf elasticsearch-6.5.4.tar.gz
3.启动试试
- 进入安装目录的config配置文件
$ cd elasticsearch-6.5.4/config/
$ vim elasticsearch.yml
# 修改一下ES的监听地址,这样别的机器也可以访问 network.host: 0.0.0.0 # 默认的端口号 http.port: 9200 # enable cors,保证_site类的插件可以访问es http.cors.enabled: true http.cors.allow-origin: "*" #启用单节点 discovery.type: single-node #默认开启bootstrap检查 关掉 bootstrap.memory_lock: false bootstrap.system_call_filter: false
- 启动需要非root,可以新建一个启动用户并设置权限
useradd elk #创建用户elk groupadd elk #创建组elk useradd elk -g elk #将用户添加到组 # 修改文件所有者 chown -R elk:elk /usr/local/elasticsearch-6.5.4/
- 设置内核参数
$ vim /etc/sysctl.conf
增加以下参数
vm.max_map_count=655360
执行生效配置
$ sysctl -p
- 设置资源参数
$ vim /etc/security/limits.conf
在最后一行添加
* soft nofile 65536
* hard nofile 131072
* soft nproc 65536
* hard nproc 131072
- 设置用户资源参数
$ vim /etc/security/limits.d/20-nproc.conf
设置elk用户参数
elk soft nproc 65536
- 开放9200端口
# 关闭默认firewalld $ systemctl stop firewalld.service # 查看开放端口列表 $ iptables -L –n
# 编辑开放端口信息文件
$ vim /etc/sysconfig/iptables
# 添加端口9200端口
-A INPUT -p tcp -m tcp --dport 9200 -j ACCEPT
# 重启iptables
service iptables restart
- 启动
# 以 elk 用户身份进行启动
$ cd /usr/local/elasticsearch-6.5.4/bin
$ su elk elasticsearch &
# 出现以下json说明启动成功 $ curl http://localhost:9200
# 在自己浏览器输入ip:9200出现以下json则说明成功 http://ip:9200/
- 关闭
# 查找进程号 $ ps -ef | grep elastic # kill掉这个进程
$ kill -9 进程号
- head插件我没有用到 可以看这个链接进行配置 https://www.cnblogs.com/hts-technology/p/8556279.html
三、Logstash安装配置
1.进入路径并远程下载安装包
$ cd /usr/local $ wget https://artifacts.elastic.co/downloads/logstash/logstash-6.5.4.tar.gz
2.解压至/usr/local/目录下并删除安装包(和上面Elasticsearch安装一样我就不截图啦)
$tar -zxvf logstash-6.5.4.tar.gz
$ rm -rf logstash-6.5.4.tar.gz
3.启动试试
- 创建配置文件
# 进入配置文件目录 $ cd logstash-6.5.4/config # 创建一个自定义的配置文件 $ vim logstash.conf # 输入最简单的配置- 使用 input 和 output 定义收集日志时的输入和输出的相关配置 input { stdin { } } output { stdout { codec=> rubydebug } }
- 启动
# 进入安装包的bin目录
$ cd /logstash-6.5.4/bin
# 启动并指定配置文件 - 我输入了hello world! 出现如下图则说明成功启动
$ ./logstash -f /usr/local/logstash-6.5.4/config/logstash.conf
- 使用Elasticsearch来收集Logstash的日志数据
# 进入配置文件目录 $ cd /logstash-6.5.4/config # 创建一个自定义的配置文件 $ vim logstash-test.conf # 输入最简单的配置- 使用 input 和 output 定义收集日志时的输入和输出的相关配置 input { stdin { } }
output {
elasticsearch {hosts => "192.168.30.132:9200" } #elasticsearch服务地址
stdout { codec=> rubydebug }
}
# 同上启动步骤 进入bin,不过这次指定的配置文件是新建的文件 - 我输入了hello world ~ 出现如下图则说明成功
$ ./logstash -f /usr/local/logstash-6.5.4/config/logstash-test.conf
恭喜~现在你已经成功利用Logstash收集日志数据给Elasticsearch查询了~~~~
四、kibana的安装
1.进入路径并远程下载安装包
$ cd /usr/local
$ wget https://artifacts.elastic.co/downloads/kibana/kibana-6.5.4-linux-x86_64.tar.gz
2.解压至/usr/local/目录下并删除安装包(和上面Elasticsearch安装一样我就不截图啦)
$ tar -zxvf kibana-6.5.4-linux-x86_64.tar.gz
$ mv kibana-6.5.4-linux-x86_64 kibana-6.5.4 # 修改一下文件名称
$ rm -rf kibana-6.5.4-linux-x86_64.tar.gz
3.启动试试
- 修改配置文件
$ cd /usr/local/kibana-6.5.4/config #进入安装的配置目录 $ vim kibana.yml # 修改文件 # 修改以下参数 server.port: 5601 # 开启默认端口5601 server.host: "0.0.0.0" # 默认值 : “localhost”,此设置指定后端服务器的主机 elasticsearch.url: "http://localhost:9200" # 指向elasticsearch服务的ip地址 kibana.index: “.kibana”
- 开放5601端口
# 关闭默认firewalld $ systemctl stop firewalld.service # 查看开放端口列表 $ iptables -L –n
# 编辑开放端口信息文件
$ vim /etc/sysconfig/iptables
# 添加端口9200端口
-A INPUT -p tcp -m tcp --dport 5601 -j ACCEPT
# 重启iptables
$ service iptables restart
- 启动
$ cd /usr/local/kibana-6.5.4/bin
$ ./kibana &
# 注意哈
# 关闭我都用的kill哈哈哈 参考上面的步骤就行~
# 如果你之前启动的都停止了,需要按照之前启动步骤把Elasticsearch和Logstash启动,这样才可以完整的操作ELK~~~
# 在自己浏览器访问ip:5601出现以下界面~那么恭喜你~成功~
# 新建index步骤和Windows模式一样一样的,在这里就不重复啦~可参考 https://www.cnblogs.com/wanghao1874/p/10150236.html
到现在为止最基本的搭建和使用就完成了~欢迎大家补充指正~
以下是我遇到问题的参考链接(非常非常感谢~)
ELK步骤搭建
https://www.cnblogs.com/yypbingo/p/6839555.html
Elasticsearch5-启动检查(Bootstrap Checks)问题
https://yq.aliyun.com/ziliao/417380
https://blog.csdn.net/u012832088/article/details/80653951
Logstash启动实时收集日志
https://blog.csdn.net/qq_32292967/article/details/78622647
netstat 查看端口占用情况
https://blog.csdn.net/weixin_40425640/article/details/79065225