Centos7系统部署ELK配置部署

2022-07-16 16:01:43 浏览数 (1)

一、概念

1、核心组成

ELK由Elasticsearch、Logstash和Kibana三部分组件组成;

Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

Logstash是一个完全开源的工具,它可以对你的日志进行收集、分析,并将其存储供以后使用

kibana 是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志

2.下载

官网下载地址:https://www.elastic.co/downloads

从中获取最新版软件包软件包列表:

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.4.1.tar.gz

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

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

https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.4.1-linux-x86_64.tar.gz

3.注意事项

  a、所有节点操作系统版本最好保持一致,centos6.5测试最新版本内核不支持,尽可能使用目前centos7.3稳定版本。Elk服务器配置需要,如果条件运行使用为2C4G,

  b、本文档为单机版,即将Elasticsearch、Logstash和Kibana安装在一台服务器上,生产环境建议将其在docker中分开安装,以便快速迁移至物理服务器。

  c、关闭selinux,关闭firewalld或添加端口例外.修改主机名称。

二、安装部署

1.安装jdk
代码语言:javascript复制
yum install -y java-1.8.0-openjdk
代码语言:javascript复制
hostnamectl set-hostname elk-1            #修改主机名
代码语言:javascript复制
systemctl stop firewalld                  #关闭firewalld
代码语言:javascript复制
setenforce 0
2.下载软件包
3.安装elasticsearch
代码语言:javascript复制
cd /usr/local/tools
代码语言:javascript复制
tar zxf elasticsearch-5.4.1.tar.gz
代码语言:javascript复制
mv elasticsearch-5.4.1 /usr/local/elasticsearch
代码语言:javascript复制
cd /usr/local/elasticsearch/config/

编辑elasticsearch.yml

代码语言:javascript复制
mkdir -p /usr/local/elasticsearch/data /usr/local/elasticsearch/logs
代码语言:javascript复制
useradd elasticsearch
代码语言:javascript复制
chown -R elasticsearch:elasticsearch /usr/local/elasticsearch
代码语言:javascript复制
echo "vm.max_map_count = 655360" >>/etc/sysctl.conf && sysctl -p

elasticsearch不可用root用户启动,新建elasticsearch运行用户

编辑/etc/security/limits.conf文件,新增以下内容

代码语言:javascript复制
* soft nofile 65536
代码语言:javascript复制
* hard nofile 65536
代码语言:javascript复制
* soft nproc 65536
代码语言:javascript复制
* hard nproc 65536

启动elasticsearch

代码语言:javascript复制
su - elasticsearch
代码语言:javascript复制
cd /usr/local/elasticsearch
代码语言:javascript复制
bin/elasticsearch &

查看端口监听信息

curl测试

4.安装logstash
代码语言:javascript复制
cd /usr/local/tools
代码语言:javascript复制
tar -zxvf logstash-5.4.1.tar.gz
代码语言:javascript复制
mv logstash-5.4.1 /usr/local/logstash
代码语言:javascript复制
cd /usr/local/logstash/config
代码语言:javascript复制
vim 01-syslog.conf
安装filebeat
代码语言:javascript复制
cd /usr/local/tools/
代码语言:javascript复制
tar -zxvf filebeat-5.4.1-linux-x86_64.tar.gz
代码语言:javascript复制
mv filebeat-5.4.1-linux-x86_64 /usr/local/filebeat
代码语言:javascript复制
vim /usr/local/filebeat/filebeat.yml

启动filebeat

代码语言:javascript复制
/usr/local/filebeat
代码语言:javascript复制
./filebeat &

启动logstash(加载配置文件启动)

代码语言:javascript复制
cd /usr/local/logstash/
代码语言:javascript复制
bin/logstash -f config/01-syslog.conf &

查看监听端口

稍等以后屏幕会输出返回的结果

可以用名称测试:curl http://172.17.10.198:9200/_search?pretty

我们想以web形式展现数据,就需要安装kibana

5.安装kibana
代码语言:javascript复制
cd /usr/local/tools/
代码语言:javascript复制
tar -zxf kibana-5.4.1-linux-x86_64.tar.gz
代码语言:javascript复制
mv kibana-5.4.1-linux-x86_64 /usr/local/kibana
代码语言:javascript复制
cd /usr/local/kibana/config
代码语言:javascript复制
vim /usr/local/kibana/config/kibana.yml

启动

代码语言:javascript复制
/bin/kibana &

查看端口监听情况

三、测试

通过web界面访问,创建index patterns

查看创建对应的日志

本文为个人测试ELK最新版本最基础的搭建,可以将其在docker中各应用拆分开部署,后期学习elk的高级用法。

0 人点赞