一.背景知识
ELK(Elasticsearch, Logstash, Kibana)是一个强大的开源日志管理解决方案,被广泛用于收集、存储、搜索、分析和可视化大规模的日志数据。它由三个核心组件组成,每个组件都有独特的功能和作用。Elasticsearch是一个分布式搜索和分析引擎,用于存储、搜索和分析大量的实时数据。它使用倒排索引来快速查询和检索数据,并提供了强大的全文搜索、聚合和分析功能。Logstash是一个用于收集、处理和转发日志和事件数据的数据管道工具。它可以从各种来源(如日志文件、数据库、消息队列)收集数据,并经过过滤、解析和转换后发送到不同的目标,如Elasticsearch。Kibana是一个基于Web的用户界面,用于可视化和分析存储在Elasticsearch中的数据。它提供了丰富的图表、仪表板和搜索功能,使用户能够轻松地探索和理解数据。ELK组件的结合使得用户能够高效地收集、存储、搜索、分析和可视化大规模的日志数据,对于监控系统、故障排除、安全分析等领域非常有用。它也支持扩展和集成其他工具和插件,以满足不同的需求和场景。
二.环境配置
- 服务器:阿里云ECS服务器
- 操作系统版本:Centos 7
三.搭建步骤
1.安装依赖环境
(1)Elasticsearch对于JAVA JDK环境有要求,需要JDK1.8或以上的支持。我们执行如下命令来安装JAVA JDK环境。
yum -y install java-1.8.0-openjdk java-1.8.0-openjdk -devel
(2)执行如下命令来设置java主页
cat <<EOF | sudotee /etc/profile.d/ exportJAVA_HOME=/usr/lib/jvm/jre-openjdk exportPATH=\$PATH:\$JAVA_HOME/bin exportCLASSPATH=.:\$JAVA_HOME/jre/lib:\$JAVA_HOME/lib:\$JAVA_HOME/lib/tools.jar EOF
(3)配置完之后,执行如下命令来刷新配置文件,随后执行"java -version"来查看jdk版本。
source /etc/profile.d/java8.sh
(4)执行如下命令来关闭防火墙
systemctl stop firewalld""systemctl disable firewalld
(5)执行命令将如下内容输入添加到elasticsearch.repo中
cat <<EOF | tee /etc/yum.repos.d/elasticsearch.repo
(6)执行如下命令来引入GPG key
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
接着执行"yum clean all" "yum makecache"更新yum包。
2.安装Elasticsearch应用
(1)执行"rpm -ivh elasticsearch-7.2.0-x86_64.rpm"命令来安装Elasticsearch
(2)安装后,执行如下命令来确认Elasticsearch的安装信息
rpm -qi elasticsearch"
(3)随后执行如下命令来启动Elasticsearch,并执行"systemctl start elasticsearch""",来设置开机自启动。
systemctl daemon-reload
systemctl start elasticsearch systemctl enable elasticsearch
(4) 执行"systemctl status elasticsearch"查看elasticsearch运行状态。
(5)执行"curl localhost:9200"尝试请求9200端口允不允许访问
当前只能相应本机的请求,其他机器想要访问的话需要修改elasticsearch的配置,执行"vim /etc/elasticsearch/elasticsearch.yml"修改如下配置,一定要把修改内容的注释取消!!
cluster.name: my-applicat ionnode.name: master network.host: 0.0.0.0 ttp.port: 9200cluster.initial_master_nodes: ["master", "node-2"]
执行"systemctl stop elasticsearch""systemctl start elasticsearch"重启elasticsearch使其修改内容生效
使用命令"netstat -nlpt"列出当前的有效连接,监听服务状态,建立相关链接得名字,tcp相关的选项。如果显示:::9200就可以通过外部浏览器去访问了。
3.安装Kibana应用
(1) .执行"yum install -y kibana"来进行kibana安装。
(2). 执行"rpm -qi kibana"查看安装信息
(3)执行"systemctl start kibana""systemctl enable kibana"设置开机自启动。
(4)执行"systemctl status kibana"查看kibana运行状态
(5)执行"curl localhost:5601 -L"测试访问
(6)执行"vim /etc/kibana/kibana.yml"配置允许其他机器访问,修改以下配置。
server.port: 5601server.host: "0.0.0.0"elasticsearch.hosts: ["http://localhost:9200"]
(7) 执行"systemctl stop kibana""systemctl start kibana"进行重启使其生效
(8)执行"netstat -nlpt"和安装Elasticsearch一样,发现出现0.0.0.0:5601说明可以从外部浏览器访问Kibana服务。
4.安装Logstash应用
(1)执行"yum install -y logstash"安装Logstash,如下图所示。
(2)执行"rpm -qi logstash"确实logstash已安装,如下图所示。
(3) 执行"systemctl start logstash"启动logstash,执行"systemctl status logstash"查看logstash运行状态