EFK日志管理初探

    xiaoxiao2023-03-25  5

    简述 Elasticsearch,Fluentd,和Kibana(EFK)允许你收集、索引、搜索、和可视化日志数据。 Elasticsearch elasticsearch是基于Lucene的搜索服务器,提供实时搜索和分析数据。它提供了一个分布式、多租户可全文搜索引擎REST风格的Web界面和无模式JSON文件。 Kibana kibana是一个开源的(Apache许可),Elasticsearch的基于浏览器的分析和搜索仪表板。 探索和可视化你的数据。 Fluentd Fluentd负责从节点收集日志条目,丰富他们的元数据,送他们到Elasticsearch。 搭建一个简单的EFK 在本文中,采用的efk组件为最新稳定版本,elasticsearch-2.4.0,kibana-4.6.1, td-agent-2.3.2-0。安装方式为RPM安装,其他安装方式及其软件下载地址参考如下: elasticsearch https://www.elastic.co/guide/en/elasticsearch/reference/current/_installation.html https://www.elastic.co/downloads/elasticsearch kibana https://www.elastic.co/guide/en/kibana/current/setup-repositories.html https://www.elastic.co/downloads/kibana fluentd http://docs.fluentd.org/categories/installation 环境说明: 2台centos7系统的服务器 elasticsearch搭建集群 kibana搭建在任何一台(kibana也可以高可用,用nginx做代理等,以后再做分享) fluentd安装在每一台服务器,做日志收集 最终收集这两台服务器的日志进行管理,并通过kibana可视化日志

    安装elasticsearch 在两台服务器上都安装 1. 安装java环境 [root@localhost yum.repos.d]# yum -y install java 2. 安装elasticsearch [root@localhost ~]# yum -y localinstall elasticsearch-2.4.0.rpm 安装kibana 安装任意一台服务器上 [root@localhost ~]# yum -y localinstall kibana-4.6.1 安装插件 两台服务器都安装 为了更好的理解和管理日志,我们安装下面插件进行说明 marvel (监控数据) [root@localhost ~]# cd /usr/share/elasticsearch/ bin/plugin install license bin/plugin install marvel-agent [root@localhost ~]# cd /opt/kibana/ bin/kibana plugin –install elasticsearch/marvel/latest Graph (分析数据) [root@localhost ~]# cd /usr/share/elasticsearch/ bin/plugin install graph [root@localhost ~]# cd /opt/kibana/ bin/kibana plugin –install elasticsearch/graph/latest Head(es集群监控插件) [root@localhost elasticsearch]# bin/plugin install mobz/elasticsearch-head 其它插件请参照官网。 启动服务 启动各节点上的相应服务 [root@localhost ]# systemctl start elasticsearch [root@localhost ]# systemctl enable elasticsearch [root@localhost ]# systemctl start kibana [root@localhost ]# systemctl enable kibana 访问kibana验证 注:如果服务器防火墙为关闭,请允许tcp端口5601(kibana),9200(es),9300(es集群)开启。 下图是访问kibana的效果图

    下图是查看elasticsearch的集群状态

    安装Fluentd

    [root@localhost ]# curl -L https://toolbelt.treasuredata.com/sh/install-redhat-td-agent2.sh | sh 安装插件 /usr/sbin/td-agent-gem install fluent-plugin-elasticsearch

    修改各组件配置文件

    本文中修改efk三大组件的对应参数,实现最终效果。其配置文件的详细说明将在下期分享。 1.修改kibana [root@localhost kibana]# vi /opt/kibana/config/kibana.yml

    2.修改elasticsearch.yml

    es的配置文件是一个yaml文件,配置文件位置在/etc/elasticsearch/下,该目录下有两个文件,elasticsearch.yml是服务配置文件,logging.yml是日志配置文件。以下是配置文件具体说明。 [root@localhost EFK]# vi /etc/elasticsearch/elasticsearch.yml

    cluster字段配置群集信息,主要是cluster.name字段;es会自动发现在同一网段下的es,如果在同一网段下有多个集群,es服务用该属性来区分不同的集群。 # ———————————- Cluster ———————————– … cluster.name: my-es … 该字段描述节点信息 … # ———————————— Node ————————————

    node.name: es-node-1 node.master: true 指定该节点是否有资格被选举成为node,默认是true,es是默认集群中的第一台机器为master,如果这台机挂了就会重新选举master。 node.data: true 指定该节点是否存储索引数据,默认为true。 . . 该字段描述路径,可以自行调整,默认在es根目录下。 ——————– Paths ———————————- 网络相关字段,主要设置需要绑定的ip和端口。es节点间交互的tcp端口为9300,对外是http的9200口。 # ———————————- Network ———————————–

    network.host: 192.168.1.135 http.port: 9200 集群服务发现 # ——————————— Discovery ———————————- … discovery.zen.ping.unicast.hosts: [“192.168.1.175”, “192.168.1.176”] … 3.Fluentd配置 cp /etc/td-agent/td-agent.conf /etc/td-agent/td-agent.conf.bak vi /etc/td-agent/td-agent.conf 写配置文件内容,去收集不同的日志,具体说明见Fluentd配置 [root@…]# chmod 644 /var/log/messages [root@…]# systemctl restart systemctl restart 访问:http://ip:5601 进入kibana页面

    进入之后可以查看到日志,也可以进入Marvel查看。

    转载请注明原文地址: https://ju.6miu.com/read-1203767.html
    最新回复(0)