ELK搭建教程(全过程)

ELK搭建教程(全过程)1 服务器使用阿里云服务器 方便 抢占式实例 便宜 4 核 16G 系统选择 centos7 4 64 位 好用 购买地址 https ecs buy aliyun com 我们只是测试学习使用 把端口权限全开就行 不然外网访问不了 安全组配置那里添加如下 2 下载 ELK 的包 下载地址 https www elastic co downloads 下载最新版的 l

1.服务器

使用阿里云服务器(方便),抢占式实例(便宜),4核16G,系统选择centos7.4/64位(好用)。购买地址:https://ecs-buy.aliyun.com/

我们只是测试学习使用,把端口权限全开就行(不然外网访问不了),安全组配置那里添加如下:

ELK搭建教程(全过程)

ELK搭建教程(全过程)

2.下载ELK的包:

下载地址:https://www.elastic.co/downloads

下载最新版的、linux服务器能使用的。

右键复制链接地址,wget就可以下载,如:wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.3.tar.gz

下载完,解压,如:  tar -zxvf elasticsearch-6.4.3.tar.gz

有的需要使用unzip解压,需要使用: yum install unzip  下载安装unzip工具

弄完了如下图:

ELK搭建教程(全过程)

3.elasticsearch配置启动

先安装jdk1.8,在centos7.4里面,直接yum install tomcat就行,会自动安装好tomcat和jdk1.8,完了java -version看下版本:

ELK搭建教程(全过程)

解压后进入config目录:cd elasticsearch-6.4.2/config,vim elasticsearch.yml 修改配置文件,在最下面加入如下几行:

network.host: 0.0.0.0 http.port: 9200 http.cors.enabled: true http.cors.allow-origin: "*" 

注意,root用户是不能直接启动elasticsearch的,需要新建用户,然后切换用户去启动elasticsearch,如下:

  • 创建elsearch用户组及elsearch用户
    1. groupadd elsearch
    2. useradd elsearch -g elsearch -p elasticsearch
  • 更改elasticsearch-6.4.2文件夹及内部文件的所属用户及组为elsearch:elsearch
    1. cd切换到elasticsearch-6.4.2的父路径下
    2. chown -R elsearch:elsearch elasticsearch-6.4.2
  • 切换到elsearch用户再启动
    1. su elsearch
    2. cd elasticsearch-6.4.2/bin
    3. sh elasticsearch &

至此,elasticsearch配置启动完毕,可以在浏览器输入url:   服务器外网ip:9200 查看是否成功启动:

ELK搭建教程(全过程)

4.kibana配置启动

按照上面的操作,可以先切回root用户了:su root     需要输入root密码

然后cd kibana-6.4.2-linux-x86_64/config/  进入kibana的配置文件夹,

 vim kibana.yml  编辑配置文件,在最后面加上如下配置就行:

 server.port: 5601 server.host: "0.0.0.0" elasticsearch.url: "http://localhost:9200" kibana.index: ".kibana" 

cd命令进入bin目录,

sh kibana &   启动kibana

启动完毕,可以浏览器输入url:   服务器外网ip:5601 查看是否成功启动:

ELK搭建教程(全过程)

5.logstash配置启动

现在可以配置logstash了

cd logstash-6.4.2/bin/进入bin目录

新建文件 vim logstash1.conf ,写入内容(监听tomcat的日志):

input { file { path => "/usr/share/tomcat/logs/*.log" start_position => beginning } } filter { } output { elasticsearch { hosts => "localhost:9200" } } 

启动logstash:sh logstash -f logstash1.conf  &

如果提示–path.data的问题,则需要指定path.data的路径,随便找个路径就行,

我的是这样启动:sh logstash -f logstash1.conf  –path.data=/home/elk/logstash-6.4.2/logs &

完了可以看到kibana上面有logstash推送过去的日志了

logstash配置mysql数据同步到elasticsearch:我参考的(https://blog.csdn.net/hatlonely/article/details/)

获取 jdbc mysql 驱动:

wget https://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-5.1.46.zip
unzip mysql-connector-java-5.1.46.zip

可以把解压后的mysql-connector-java-5.1.46-bin.jar复制到bin目录,方便启动

在bin目录新建配置文件    vim mysql-logstash.cnf ,写入:

 input { jdbc { jdbc_driver_library => "mysql-connector-java-5.1.46-bin.jar" jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_connection_string => "jdbc:mysql://ip:3306/db_name" jdbc_user => "jdbc_user" jdbc_password => "jdbc_password" schedule => "* * * * *" statement => "SELECT * FROM table WHERE 时间字段 >= :sql_last_value" use_column_value => true tracking_column_type => "timestamp" tracking_column => "时间字段" last_run_metadata_path => "syncpoint_table" } } output { elasticsearch { hosts => "localhost:9200" index => "索引名称" document_id => "%{主键字段}" } } 

需要先把logstash停了,在重启

netstat -ntlp  命令查看端口为9600的进程,

然后kill 线程id,我的是 kill 25437

ELK搭建教程(全过程)

 

使用命令 sh logstash -f mysql-logstash.cnf  –path.data=/home/elk/logstash-6.4.2/logs &

启动logstash

完了在kibana可以看到同步过去的数据,我的是这样的: 

ELK搭建教程(全过程)

 

至此,elk基本集成完毕!如果还有什么问题,都可以百度到解决方法的。

另外附上两个教程:

elasticsearch集成head插件查看es的数据:https://blog.csdn.net/mjlfto/article/details/

kibana基础教程:https://www.elastic.co/guide/cn/kibana/current/introduction.html

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/177302.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午7:50
下一篇 2026年3月26日 下午7:50


相关推荐

  • ESLint-的基本介绍[通俗易懂]

    ESLint-的基本介绍[通俗易懂]什么是eslintESLint是一个代码检查工具,用来检查你的代码是否符合指定的规范(例如:=的前后必须有一个空格)。规范行业推荐的规范;在创建项目时,我们使用的是JavaScriptStandardStyle代码风格的规则自定义的规范。你和你的团队可以自行约定一套规范使用ESLint的好处在于:多人协作时代码风格统一eslint是法官,Standard是法律vue-cli工具在创建项目时提供选项,我们前面在创建项目时选中了它,所以它在本项目中是直接生效

    2022年6月18日
    37
  • 从一段 Dubbo 源码到 CPU 分支预测的一次探险之旅

    从一段 Dubbo 源码到 CPU 分支预测的一次探险之旅

    2020年11月20日
    196
  • 分子模拟软件amber_使用Amber创建小分子与蛋白质复合蛋白的坐标和拓扑文件

    分子模拟软件amber_使用Amber创建小分子与蛋白质复合蛋白的坐标和拓扑文件复合蛋白amber坐标和拓扑文件的创建作者:朱宁来源:大科研小分享前言分子动力学(MolecularDynamics,MD)是一门结合物理,数学和化学的综合技术。目前主流分子动力学软件有NAMD、GROMACS、AMBER等。AMBER分子动力学程序包是由加州圣弗兰西斯科大学(UCSF)的PeterAKollman和其同事编写的,程序很全,大约包含60多个程序,相互协调工…

    2022年5月26日
    50
  • pycharm最新2021年激活码_通用破解码

    pycharm最新2021年激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月16日
    57
  • python和Java语法对比

    python和Java语法对比定义变量:java:inta=1;python:a=1#python中不需要分号结尾,python用缩进判断代码块Python定义变量的时候不需要给出类型,直接定义即可,Python会自动判断变量类型。String类型:java:Stringa=newString();a="123";python:a="123"…

    2022年7月8日
    23
  • Linux stat函数_python系统调用函数

    Linux stat函数_python系统调用函数Linux系统调用函数stat详解,以及文件信息结构体structstat结构体详解。

    2022年8月21日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号