ELK实验部署过程

ELK集群部署环境准备

配置ELK日志分析系统

192.168.1.51

elk-node1

es、logstash、kibana

192.168.1.52

elk-node2

es、logstash

192.168.1.53

apache

logstash

(我这里是把虚拟机的配置全部都改为2核3G的)

  2台linux 第1台:elk-node1 第2台:node2(双核、内存4G

关闭防护机制

iptables -F

setenforce 0

systemctl stop firewalld

第1台

修改名字

hostnamectl    set-hostname elk-node1

 bash

主机映射vim修改配置文件在末尾添加(两台都做)

  vim /etc/hosts

192.168.1.51 elk-node1

192.168.1.52 elk-node2

第2台

修改名字

 hostnamectl    set-hostname elk-node2

 bash

1,2台都用系统自带java环境

 java -version

2台rz上传软件包 第1台软件包全部上传 第2台只上传3个

 

安装elasticsearch软件 (rz   logstash-5.5.1.rpm和elasticsearch-5.5.0.rpm

1,2

 rpm -ivh elasticsearch-5.5.0.rpm

rpm  -ivh logstash-5.5.1.rpm

重新识别系统中的服务并且设置为开机自启动

 systemctl daemon-reload

 systemctl enable elasticsearch.service

修改node1,node2的配置文件

 vim /etc/elasticsearch/elasticsearch.yml

http.cors.enabled: true

http.cors.allow-origin: "*"

创建目录并且把用户和组都改为elasticsearch

 mkdir -p /data/elk_data

 chown elasticsearch:elasticsearch /data/elk_data/

启动elasticsearch.服务并且查看端口

 systemctl start elasticsearch.service

 netstat -anpt | grep 9200

访问节点ip

 http://192.168.1.51:9200/

 http://192.168.1.52:9200/

检查集群健康状态为green代表健康

 http://192.168.1.51:9200/_cluster/health?pretty

 http://192.168.1.52:9200/_cluster/health?pretty

 

第1台

安装elasticsearch-head插件

解压软件包  (rz node-v8.2.1-linux-x64.tar.gz

 tar xf node-v8.2.1-linux-x64.tar.gz -C /usr/local/

做链接

 ln -s /usr/local/node-v8.2.1-linux-x64/bin/node /usr/bin/node

 ln -s /usr/local/node-v8.2.1-linux-x64/bin/npm /usr/local/bin/

查看版本

node -v

npm -v

解压headrz  elasticsearch-head.tar.gz

 tar xf elasticsearch-head.tar.gz -C /data/elk_data/

cd到elk_data

 cd /data/elk_data/

修改用户和组

 chown -R elasticsearch:elasticsearch elasticsearch-head/

cd到elasticsearch-head/

 cd elasticsearch-head/

安装npm (在/data/elk_data/elasticsearch-head目录下使用该命令安装)

 npm install

cd到site/下并且把app.js做个备份然后编辑

 cd _site/

 cp app.js{,.bak}

 vim app.js

启动npm并且启动elasticsearch

 npm run start &

 systemctl start elasticsearch   如果访问后没有发现node2 

                              cd /data/elk_data/

                              rm -rf nodes/

查看端口是否有9100

 netstat -lnpt | grep 9100

访问ip查看节点

  http://192.168.1.51:9100/

插入数据测试类型为test

 curl -XPUT 'localhost:9200/index-demo/test/1?pretty&pretty' -H 'Content-Type: application/json' -d '{ "user": "zhangsan","mesg":"hello word" }'

刷新http://192.168.1.51:9100/查看索引是否有变化

安装logstash

1台也就是node1上安装logstash

rpm -ivh logstash-5.5.1.rpm  

启动logstash服务并且做一个软链接

systemctl start logstash

ln -s /usr/share/logstash/bin/logstash /usr/local/bin/

logstash 命令行常用的选项

-f:通过这个命令可以指定Logstash的配置文件,根据配置文件配置logstashe

-e: 后面跟着字符串,该字符串可以被当做logstash的配置(如果是"”则默认使用stdin作为输入,stdout作为输出)

-t:测试配置文件是否正确,然后退出

 

启动一个 logstash -e 在命令行执行 input

 logstash -e 'input { stdin{} } output { stdout{} }'

标准输入是靠键盘输入标准输出是直接在屏幕上输出

 

使用rubydebug 显示详细输出 codec

logstash -e 'input { stdin{} } output { stdout{ codec =>rubydebug} }'

使用logstash将信息写入到elasticsearch

 logstash -e 'input {stdin{} } output {  elasticsearch { hosts=> ["192.168.200.111:9200"]} }'

www.baidu.com

www.sina.com.cn

www.gogle.com

配置收集系统日志 第1台

cd到logstash写入配置文件

 cd /etc/logstash/conf.d/

 vim systemc.conf

input {

    file {

        path => "/var/log/messages"

        type => "system"

        start_position => "beginning"

   }

}

output  {

    elasticsearch {

        hosts => ["192.168.1.51:9200"]

        index => "system-%{+YYYY.MM.dd}"

    }

}

重启logstash

 systemctl restart logstash

加载systemc.conf 文件并且查看是否打入到es当中

logstash -f systemc.conf

安装kibana第1台rz  kibana-5.5.1-x86_64.rpm

 rpm -ivh kibana-5.5.1-x86_64.rpm

设置为开机自启动

 systemctl enable kibana.service

修改配置文件并启动服务

 vim /etc/kibana/kibana.yml

启动服务并且查看端口

 systemctl restart kibana.service

 netstat -lnpt | grep 5601

logstash -f /etc/logstash/conf.d/system.conf

访问 http://192.168.1.51:5601/

 

第3台

开启第3台起名:apache

 hostname apache

 bash

关闭防护机制

 iptables -F

 systemctl stop firewalld

 setenforce 0

启动httpdyum -y install httpd

 systemctl start httpd

 

查看java版本 

java -version

rz上传软件包

 

rpm安装并且设置为开机自启动

 rpm -ivh logstash-5.5.1.rpm

 systemctl enable logstash.service

cd到logstash

 cd /etc/logstash/conf.d/

vim编辑配置文件

 vim apache_log.conf

 input {

   file {

        path => "/var/log/httpd/access_log"

        type => "access"

        start_position => "beginning"

   }

  file {

     path => "/var/log/httpd/error_log"

     type => "error"

     start_position => "beginning"

  }

}

output  {

    if [type] == "access" {

       elasticsearch {

        hosts => ["192.168.1.51:9200"]

        index => "apache_access-%{+YYYY.MM.dd}"

     }

 }

  if [type] == "error" {

    elasticsearch {

        hosts => ["192.168.1.51:9200"]

        index => "apache_error-%{+YYYY.MM.dd}"

    }

  }

}

[root@apache conf.d]# logstash -f apache_log.conf //加载文件

systemctl start logstash

ln -s /usr/share/logstash/bin/logstash /usr/local/bin/找不到命令试下这两个命令

这里输入信息后退出回出现apache_access索引 

访问 192.168.1.53也就是第3台连续刷新然后查看 http://192.168.1.51:9100/ 

 

选择查看

 

 

 

ELK端口号:

elasticsearch:9200    

elasticsearch-head9100

logstash9600    input4560

Logstash agent:9601

kibana:5601

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/15952.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Vivado那些事儿】动态时钟的使用

时钟是每个 FPGA 设计的核心。如果我们正确地设计时钟架构、没有 CDC 问题并正确进行约束设计,就可以减少与工具斗争的时间。 但对于某些应用,我们希望能够更改某些IP中的时钟频率。其中一个例子是在图像处理管道中,输出分辨率可以动态变化&a…

PADS Layout中显示与布线标签页参数设置

1.“显示”标签页如图1 所示: 图1 显示标签页 显示标签页是用于去设置网络名以及管脚编号的字体大小的设置,建议是可以采取默认设置的,如果自己设计有另外要求,也是可以去进行设置。 2.“布线”标签也有三个子标签,首先…

【Python】使用pycharm结合gradio做一个web页面的demo

紧接上文我们安装好了python3.10,现在需要下载它的开发工具pycharm,我们在这里不过多赘述具体细节,仅简要说明关键步骤,来通过gradio体验一下示例demo 一、下载IDE pycharm官网:https://www.jetbrains.com.cn/pycharm…

选择排序、归并排序、快速排序

1.选择排序 选择排序算法的实现思路有点类似插入排序,也分已排序区间和未排序区间。但是选择排序每次会从未排序区间中找到最小的元素,将其放到已排序区间的末尾。 Java代码实现如下。 ps:选择排序的最好情况时间复杂度、最坏情况和平均情况…

PAX-DV-D24-1带升压双比例阀放大器

驱动比例流量阀、比例压力阀及泵、双比例控制阀; 双通道相互独立,PWM输出,发热小; 电流负反馈恒流输出,精密采样,温度漂移小于0.5%; 内部可选带升压,满足大阻抗线圈输出; 重复精度高,线性度…

Debezium系列之:基于debezium将mysql数据库数据更改流式传输到 Elasticsearch和PostgreSQL数据库

Debezium系列之:基于debezium将mysql数据库数据更改流式传输到 Elasticsearch和PostgreSQL数据库 一、背景二、技术路线三、配置四、从mysql同步数据到Elasticsearch和PostgreSQL数据库五、总结 一、背景 基于 Debezium 的端到端数据流用例,将数据流式传…

SpringMVC 中的视图如何渲染模型数据

SpringMVC 中的视图如何渲染模型数据 SpringMVC 是一个基于 Spring 框架的 Web 框架,它提供了一种方便的方式来处理 HTTP 请求和响应。在 SpringMVC 中,视图是用来渲染模型数据的组件,它们负责将模型数据转换为 HTML、JSON、XML 等格式的响应…

Flink DataStream之Union合并流

新建类 package test01;import jdk.nashorn.internal.runtime.regexp.joni.Config; import org.apache.flink.api.java.ExecutionEnvironment; import org.apache.flink.configuration.Configuration; import org.apache.flink.streaming.api.datastream.DataStream; import o…

UNION 和 UNION ALL 用法及区别

UNION UNION 是一个用于合并多个 SELECT 查询结果的操作符。它的作用是将多个查询的结果集合并为一个结果集,并去除重复的行。 主要特点和作用如下: 合并结果集:UNION 操作符可以将多个查询的结果集合并为一个结果集。每个查询的结果集必须…

使用Llama.cpp在CPU上快速的运行LLM

大型语言模型(llm)正变得越来越流行,但是它需要很多的资源,尤其时GPU。在这篇文章中,我们将介绍如何使用Python中的llama.cpp库在高性能的cpu上运行llm。 大型语言模型(llm)正变得越来越流行,但是它们的运行在计算上是非常消耗资源…

干了4年外包,技术落后得明显,感觉要被行业优化了

先说一下自己的情况。大专生,19年通过校招进入深圳某软件公司,干了接近4年的测试,今年年中旬,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了4年,…

Django实现简单的音乐播放器 1

使用django框架开发一个简单的音乐播放器。 效果: 目录 环境准备 安装django 创建项目 创建应用 注册应用 配置数据库 设置数据库配置 设置pymysql库引用 创建数据库 创建数据表 生成表迁移文件 执行表迁移 配置时区 配置语言 配置子应用路由 在pla…