ES(EFK)日志分析系统 centos/redhat 部署流程(不用logstash)

ES(EFK)日志分析系统 centos/redhat部署流程

使用的是centos6.5 系统部署 其中大部分内容 centos都适用 chkconfig这块可能有不同的地方 可以用其他方式将服务加入到service中。

 

下载相关软件的安装文件—— RPM格式 可以到elasitc官网去下载

 

1. 安装 elasticsearch

  • 使用命令 rpm --install elasticsearch-x.x.x-x86-64.rpm 安装elasticsearch (x替换相应版本号码)
  • 使用命令chkconfig --add elasticsearch (加入服务列表 【可利用这个设置自动启动】 )
  • 使用 service elaticsearch start 来启动服务 (启动应用)
  • 配置YML文件在  /etc/elaticsearch/elaticsearch.yml中

1.1 启用密码:

  1. 配置文件添加:

xpack.security.enable: true (注意冒号后面有空格)

discovery.type: single-node (根据需要修改 本设置适用于ES和KIBANA在同一台服务器的简单情况)

  1. 到 /usr/share/elaticsearch/bin目录下 使用命令

./elasticsearch-setup-passwords interactive 开启密码交互设置 设置各个账号的密码

 

1.2 常用配置:

 /etc/elaticsearch/elaticsearch.yml中

1. es的index(可以理解成表)数据及其他数据存储路径 path.data: (注意如果是运行后修改 需要将原来的数据拷贝到新的位置后再运行,否则部分数据会有冲突导致kibana或者自身启动失败)

2. es的自身log存储位置 path.logs:

3.内存设置 在同目录的 jvm.options  其中的 Xms4g 和 Xmx4g 前面的#注释去掉就是设置其内存的方法 具体值调整数据

4. 公网访问 设置 network.host: 0.0.0.0 (设置网域)

 

2.安装 kibana 

  • 使用命令 rpm --install kibana-x.x.x-x86-64.rpm 安装 kibana chkconfig --add kibana加入到service 中
  • 配置YML文件在  /etc/kibana/kibana.yml中

 

 

2.1设置密码

  • 明文方式(安全性低)可以在 /etc/kibana/kibana.yml 里面 直接设置 elasticsearch.username 和 elasticsearch.password的值
  • 非明文方式(安全性高)到/usr/share/kibana/bin目录下使用如下三个命令设置kibana访问es的密码

./kibana-keystore create 

./kibana-keystore add elasticsearch.username (会出现交互设置)

./kibana-keystore add elasticsearch.password(会出现交互设置)

 

 

设置好密后重启kibana就可以了

进入 目标IP:5601/status 来登陆 (启动需要一定时间)

 

2.3 设置其他用户和用用户 elastic 和密码 登陆 kibana 进入 Stack Management>Security>Users 图形界面操作

 

3 Filebeat 安装配置 

3.1 安装 rpm -vi filebeat-7.9.3-x86_64.rpm 用 chkconfig --add fielbeat 加入到service 中

3.2 配置 filebeat.yml 中的 (这部分是配置filebeat 跟ES主机链接的部分

         output.elasticsearch:
            hosts: ["myEShost:9200"]
            username: "filebeat_internal"
            password: "YOUR_PASSWORD"

            

3.2.2 配置KIBANA (ES与 kibana同一台主机时可以省略此部分)

         setup.kibana:
            host: "mykibanahost:5601" 
            username: "my_kibana_user" (使用上面的密码 或者自定义)
            password: "{pwd}"

3.3 自己配置filebeat模块 收集log的位置及差异化设置

3.3.1.主要配置 filebeat.yml 下的 filebeat.inputs项目

filebeat.inputs:
- type: log

     enabled: true (注意这部分默认是false)
    paths:
        - /var/log/sys*.log 可以同时写多个文件 也可以用通配符多个文件在不同的行写 (详见YAML语法)
        - /var/log/wifi.log

下面三个是当log中有部分行是上一个log太长了分行出来的话,可以将多个行的数据合并为一条数据

     multiline.pattern: ^\d  判断多行的条件

     multiline.negate:true 上一个patten 是多行的否听条件还是确认条件 (现在的配置的意思是 如果以数字开头认为就不是多行(新的一行) 不是数字开头的都认为是一条数据)

     multiline.match: after 第一个特征后面的是一条 还是前面的是一条数据

3.3.2 配置filebeat 的ILM(index 的生命周期管理)在配置文件中加入下面四个项目

setup.ilm.enabled: auto (auto兼容 true强制)

setup.ilm.rollover_alias: 'demoname' (设置一个别名 不同于pattern 用来写数据的)

setup.ilm.pattern: "{now/d}-000001" (这里是用日期的天数 加一个数字 数字不能少 不然无法滚动创建 默认就是001这个就行)

setup.ilm.policy_name: "save_4_days_max_4gb" (在kibana中创建的 Index Lifecycle Policies的名字 用来控制什么条件新建新的index 什么条件删除index )

3.4. 启用配置 filebeat setup -e

3.5. 启动服务 sudo service filebeat start

总结 部署ES日志收集系统时候,elastic 和 kibana 端配置相对固定,注意存储空间和内存配置需要给够,不然运行时候经常崩掉(累积数据多时候尤其明显)

filebeat部分就是配置相对麻烦,注意enable: true这块 使用 ILM管理index相对方便很多,建议使用这个方法给自己的index命名而不是用indexpatter和template的模式。
:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值