首页 > 数据库 > 数据库开发技术 > EFK真的比ELK强吗?
先放个链接,万一有人关注呢
↓ ↓ ↓ ↓ ↓
ELK与EFK
ELK由Elasticsearch、Logstash和Kibana三个开源软件组成,它们分别负责数据存储、数据处理和数据可视化。其中,Logstash是数据处理管道,它可以从多种数据源中提取、转换和加载数据,最终将数据存储到Elasticsearch中;Kibana则是数据可视化工具,它可以让用户轻松地对存储在Elasticsearch中的数据进行查询、分析和可视化。
EFK由Elasticsearch、Fluentd和Kibana三个开源软件组成,它们也分别负责数据存储、数据处理和数据可视化。其中,Fluentd是数据处理管道,它可以从多种数据源中提取、转换和加载数据,最终将数据存储到Elasticsearch中。
相比于ELK,EFK的优势在于:
Fluentd比Logstash更加轻量级:Fluentd是使用Ruby语言编写的轻量级数据处理管道,而Logstash是使用Java语言编写的重量级数据处理管道。因此,Fluentd在处理大量数据时更加高效,并且占用的系统资源更少。
Fluentd更加灵活:Fluentd具有更加灵活的插件架构,可以轻松地扩展和定制数据处理管道。与此相比,Logstash的插件体系结构更加复杂,扩展和定制难度更大。
Fluentd支持多种数据源:Fluentd可以从多种数据源中提取和处理数据,包括文件、日志、TCP、UDP、HTTP等,而Logstash则主要支持日志数据的处理。
Fluentd更加容易配置:Fluentd的配置文件使用YAML格式,更加易于理解和编辑。与此相比,Logstash的配置文件使用JSON格式,配置更加繁琐。
所以,EFK在数据处理的效率、灵活性和易用性方面优于ELK。当然,在实际应用中,还需要根据具体的需求和环境来选择适合自己的日志管理系统。
EFK部署方式
1、在每个主机上安装Docker和Docker Compose。
sudo yum install docker docker-compose2、在任何一个主机上创建一个目录,用于存储Elasticsearch、Fluentd和Kibana的配置文件和数据。
mkdir /opt/efkcd /opt/efk
3、创建docker-compose.yaml文件,并使用以下内容填充它:
version: '3'services:elasticsearch:image: elasticsearch:7.0.0container_name: elasticsearchenvironment:"discovery.type=single-node"ports:"9200:9200""9300:9300"volumes:./data/elasticsearch:/usr/share/elasticsearch/datafluentd:image: fluent/fluentd-kubernetes-daemonset:v1.3-debian-elasticsearch7-1.0container_name: fluentdvolumes:./conf/fluent.conf:/fluentd/etc/fluent.conf./logs:/fluentd/logenvironment:FLUENT_UID=1000links:elasticsearchkibana:image: kibana:7.0.0container_name: kibanaports:"5601:5601"environment:=http://elasticsearch:9200"
vi ./data/elasticsearch/elasticsearch.yml将以下内容添加到配置文件中:
cluster.name: my-clusternode.name: node-1network.host: 0.0.0.0discovery.seed_hosts: ["elasticsearch"]cluster.initial_master_nodes: ["node-1"]
5、创建Fluentd配置文件fluent.conf。
vi ./conf/fluent.conf将以下内容添加到配置文件中:
<source>forwardport 24224bind 0.0.0.0</source>**>elasticsearchhosts elasticsearch:9200index_name fluentdtype_name fluentdlogstash_format truelogstash_prefix fluentd</match>
6、在所有主机上启动EFK服务。
sudo docker-compose up -d7、现在可以通过浏览器访问任何一个主机的Kibana服务并查看日志了。在浏览器中输入以下URL:
http://<IP_ADDRESS_OF_ANY_HOST>:5601如果需要添加更多主机以扩展EFK集群,请重复步骤1-6,并使用相同的elasticsearch配置(步骤4)和相同的fluentd配置(步骤5)连接到现有集群。
结束!
谢谢你这么好看还关注我

原文作者:运维book思议;如有侵权,请联系管理员删除。