elk之安装和简单配置

news2024/9/23 9:33:12

写在前面

本文看下elk的安装和简单配置,安装我们会尝试通过不同的方式来完成,也会介绍如何使用docker,docker-compose安装。

1:安装es

1.1:安装单实例

  • 下载es安装包
    在这里插入图片描述
    在这里 下载,下载后解压到某个目录,然后执行如下操作。
  • 创建es使用的用户
groupadd elk
useradd -g elk elk
chown -R elk:elk /opt/program
chmod -R 755  /opt/program

因为es不允许使用root账号启动,所以需要新建账号,并且到该账号。

  • 启动

注意:执行该步骤前不要使用root启动,不然后续会有文件权限问题,如果已经启动报了权限问题,则可重新执行:

chown -R elk:elk /opt/program
chmod -R 755  /opt/program
# 切换到非root账号
su elk
[elk@localhost elasticsearch-7.6.2]$ /opt/program/elasticsearch-7.6.2/bin/elasticsearch -d
[elk@localhost elasticsearch-7.6.2]$ OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
# 停止
[elk@localhost elasticsearch-7.6.2]$ ps -ef | grep elasti
elk        2957      1 40 01:56 pts/0    00:00:20 /opt/program/elasticsearch-7.6.2/jdk/bin/java -Des.networkaddress.cache.ttl=60 -Des.networkaddress.... -cp /opt/program/elasticsearch-7.6.2/lib/* org.elasticsearch.bootstrap.Elasticsearch -d
[elk@localhost elasticsearch-7.6.2]$ kill -9 2957
  • 启动后访问
    默认只可本机访问,若要外部机器访问,则需要修改配置config/elasticsearch.yml,改变其绑定的IP地址:
# 绑定所有网卡IP
network.host: 0.0.0.0
# 没这个会报错,集群节点发现相关配置
discovery.seed_hosts: ["127.0.0.1"]

# 给自己起个名字,集群中不可重复
node.name: node-1
# 集群只有自己,那就自己当老大,即作为master节点
cluster.initial_master_nodes: ["node-1"]

在这里插入图片描述
如果不能访问,可能是开启了防火墙,执行如下操作:

systemctl status firewalld.service
systemctl stop firewalld.service
systemctl status firewalld.service
systemctl disable firewalld.service
使用vim /etc/sysconfig/selinux,将SELINUX=enforcing改为SELINUX=disabled。
最后重启。

一般就好了。

  • 安装es插件
[elk@localhost elasticsearch-7.6.2]$ ./bin/elasticsearch-plugin list
[elk@localhost elasticsearch-7.6.2]$ ./bin/elasticsearch-plugin install analysis-icu
-> Installing analysis-icu
-> Downloading analysis-icu from elastic
[=================================================] 100%   
-> Installed analysis-icu
[elk@localhost elasticsearch-7.6.2]$ ./bin/elasticsearch-plugin list
analysis-icu

接口查看:
在这里插入图片描述

1.2:安装多实例

TODO

2:安装kibana

2.1:下载

在这里 下载,下载后解压。

2.2:修改配置和启动

主要修改如下配置:

server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://127.0.0.1:9200"]

elasticsearch.hosts这里注意修改为你本地的es地址,因为我是在同一个虚拟机,所以指定为127就行。
启动:

nohup ./bin/kibana --allow-root &

其中的--allow-root如果不是root启动的话可以不加,通过nohup.log查看日志(在执行启动命令的目录生成)
访问http://192.168.10.162:5601/
在这里插入图片描述
kibana为我们准备了电商数据,飞行数据,以及web程序运行日志数据,点击add data导入:
在这里插入图片描述
在这里插入图片描述
成功后可以查看dashboard:
在这里插入图片描述
在这里插入图片描述
看日志:
在这里插入图片描述

2.3:dev tools (重要!!!)

在这里插入图片描述
可用来测试es接口:
在这里插入图片描述

2.4:kibana plugin

在这里插入图片描述

3:安装logstash

3.1:下载

在这里 下载。

3.2:配置和启动

在config目录下增加logstash.conf:

input {
  file {
    path => "/opt/program/packages/movie.csv"
    start_position => "beginning"
    sincedb_path => "/dev/null"
  }
}
filter {
  csv {
    separator => ","
    columns => ["id","content","genre"]
  }

  mutate {
    split => { "genre" => "|" }
    remove_field => ["path", "host","@timestamp","message"]
  }

  mutate {

    split => ["content", "("]
    add_field => { "title" => "%{[content][0]}"}
    add_field => { "year" => "%{[content][1]}"}
  }

  mutate {
    convert => {
      "year" => "integer"
    }
    strip => ["title"]
    remove_field => ["path", "host","@timestamp","message","content"]
  }

}
output {
   elasticsearch {
     hosts => "http://localhost:9200"
     index => "movies"
     document_id => "%{id}"
   }
  stdout {}
}

这里使用文件作为数据源,其中movie.csv从这里 下载。输出到elasticsearch,hosts注意改成你本地实际的,其他的不需要动,接着启动:

[elk@localhost jdk1.8.0_151]$ nohup /opt/program/logstash-7.6.2/bin/logstash -f /opt/program/logstash-7.6.2/config/logstash.conf &
[2] 4491
[elk@localhost jdk1.8.0_151]$ nohup: ignoring input and appending output to ‘nohup.out’
[elk@localhost jdk1.8.0_151]$ tail -f nohup.out
...
{
    "@version" => "1",
       "title" => "Gintama",
       "genre" => [
        [0] "Action",
        [1] "Adventure",
        [2] "Comedy",
        [3] "Sci-Fi"
    ],
          "id" => "191005",
        "year" => 2017
}
...
看到刷这些信息就说明在导入logstash了。

接着我们就可以在kibana中创建索引来查看数据了:
在这里插入图片描述
点击创建索引:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
接着在dicovery就能看到movies索引了:
在这里插入图片描述
在这里插入图片描述
后续我们会使用这些数据来进行学习。

4:docker一键安装

参考这里 。

写在后面

参考文章列表

es启动报错解决 maybe these locations are not writable or multiple nodes were started without increasing 。

ElasticSearch启动&停止命令 。

Elasticssearch 7.6.2单机版的安装配置 。

springcloud之链路追踪 。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

KubeSphere 核心实战之四【在kubesphere平台上部署Ruoyi-cloud项目】(实操篇 4/4)

**《KubeSphere 核心实战系列》** KubeSphere 核心实战之一(实操篇 1/4) KubeSphere 核心实战之二(实操篇 2/4) KubeSphere 核心实战之三(实操篇 3/4) KubeSphere 核心实战之四(实操篇 4/4&…

Chiplet,汽车“芯”风向

异构集成、高速互联、算力灵活可扩展正在成为新一轮汽车芯片竞争的焦点。尤其是随着以ChatGPT为代表的大数据、大模型产品在车端的落地,对于芯片的要求还在持续提升。 本周,12家日本汽车制造商(包括丰田、日产、本田等)、零部件制…

数据结构之单链表详解

前言 之前大摆了5天多,没怎么学编程,自昨日起,觉不可如此,痛定思痛,开始继续学习,昨天刷了20多道简单级别的力扣,今天想把链表好好巩固一下,于是乎,把单链表的增删查改搞…

【linux|java应用报错】Cannot allocate memory

启动一个java应用报Cannot allocate memory,并且会生产一个hs_ess_pid.log文件。 文件内容为: #内存不足,Java运行时环境无法继续。 #本机内存分配(mmap)无法映射4294967296字节以提交保留内存。 【排查】 1、尝试使…

【日常总结】如何快速迁移Navicat中的全部连接设置到新安装的Navicat中?

一、场景 二、需求 三、解决方案 Stage 1:“文件”-->“导出连接”。 Stage 2:获取备份文件 connections.ncx Stage 3:导入connections.ncx 四、不足 一、场景 公司电脑换新,所有软件需要重装,包括navicat 1…

《golang设计模式》第三部分·行为型模式-10-模板方法(Template Method)

文章目录 1. 概述1.1 角色1.2 类图 2. 代码示例2.1 设计2.2 代码2.3 类图 1. 概述 模板方法(Template Method)用来定义算法的框架,将算法中的可变步骤定义为抽象方法,指定子类实现或重写。 1.1 角色 AbstractClass(…

【脑电信号处理与特征提取】P5-彭薇薇:脑电信号的预处理及数据分析要点

彭薇薇:脑电信号的预处理及数据分析要点 脑电 脑电是神经活动的测量方法,在不同位置测量有不同的方法。比如大脑皮层表面测量的是ECoG,在头皮测量的是EEG。除了EEG是无损的,其他都是有损的。 脑电信号采集系统 下面是完整的…

指针操作一维字符型数组和及回调函数------努力学习嵌入式的第十四天!今天的内容让人脑瓜子嗡嗡的 着重复习

总结 1.快速排序 注意: 第二三步并不能反过来 要想降序排列只需要加将比较的符号换一下 2.指针操作一维字符型数组 (const) char *s "hello"; *sH; //错误 char s[]"hello"; s[0] B char *strncpy(char *d…

05 SB3之Spring Initializr+运行方式+自动配置原理(TBD)

1. 使用IDEA内置Spring Initializr 生成SB项目 最上方Server URL可以选择借助哪个平台生成, 可选阿里云 作为对比 , 官方可选版本最旧为3.1.18 ; 阿里云可选最新版本为3.0.2 本次选择3.1.8版本, 并且添加Spring Web依赖(包括RESTful / Spring MVC/)和Lombok依赖 生成后端项目…

力扣hot100 单词搜索 深度优先搜索 特殊字符判重

Problem: 79. 单词搜索 Code class Solution{int n, m;char[][] b;String word;int[] dx { 1, 0, -1, 0 };int[] dy { 0, 1, 0, -1 };public boolean exist(char[][] board, String word){b board;this.word word;n b.length;m b[0].length; // 以所有点作为起点来进行…

关于 PostgreSQL,你了解多少

背景 最近因工作原因,了解到了阿里的 hologre,它只支持 psql 协议,用起来跟 mysql 会差很多,也很不习惯。所以就好奇,为啥放着mysql不用,却用 psql 什么是 psql psql 是 开源的关系型数据库管理系统 Pos…

vuex store,mutations,getters,actions

文章目录 1.vuex概述2.构建vuex【多组件数据共享】环境Son1.vueSon2.vueApp.vue 3.创建一个空仓库4.如何提供&访问vuex的数据①核心概念 - state状态1.通过store直接访问2.通过辅助函数简化代码 ②核心概念 - mutations(粗略) 5.核心概念 - mutation…

vue3之echarts3D环柱饼图

vue3之echarts3D环柱饼图 效果&#xff1a; 版本 "echarts": "^5.4.1", "echarts-gl": "^2.0.9" 核心代码&#xff1a; <template><div class"content"><div ref"eCharts" class"chart&…

【Docker】linux、nginx、容器镜像三者基本概念

欢迎来到《小5讲堂》&#xff0c;大家好&#xff0c;我是全栈小5。 这是《Docker容器》序列文章&#xff0c;每篇文章将以博主理解的角度展开讲解&#xff0c; 特别是针对知识点的概念进行叙说&#xff0c;大部分文章将会对这些概念进行实际例子验证&#xff0c;以此达到加深对…

【数据结构 04】单链表

一、链表简介 链表是一种物理存储结构上非连续的存储结构&#xff0c;数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 链表在结构上的分类&#xff1a; 1. 带头结点或无头结点 2. 单向或双向 3. 循环或非循环 虽然链表有多种结构类型&#xff0c;但是我么在实际开发中…

算法设计与分析实验:并查集与生成树

目录 一、情侣牵手 1.1 采用并查集的思想 1.2 采用动态规划的思想 二、账户合并 2.1 具体思路 2.2 思路呈现 2.3 代码实现 2.4 复杂度分析 三、连接所有点的最小费用 3.1 思路一&#xff1a;最小生成树 3.2 思路二&#xff1a;并查集 鸡汤 一、情侣牵手 力扣第765…

Django模型(五)

一、数据的条件查询 参考文档:QuerySet API 参考 | Django 文档 | Django 1.1、常用检索字段 字段检索,是在字段名后加 __ 双下划线,再加关键字,类似 SQL 语句中的 where 后面的部分, 如: 字段名__关键字 exact :判断是否等于value,一般不使用,而直接使用 =contai…

数据与资源可视化——长安链运维监控实践

前言 “链上的交易总量是多少”&#xff0c;“我的链上现在有多少区块了”&#xff0c;“节点是否存活无法第一时间感知到”&#xff0c;除sdk查询链上的相关信息外&#xff0c;今天我们介绍一种新的方式实现链上数据与相关资源的可视化的监控。 简介 监控链上数据以及链上节…

日志资源成本减少 35%:新东方可观测体系改造如何降本增效?

一分钟精华速览 在双减政策影响下&#xff0c;新东方面临业务缩减和资源紧张的局面&#xff0c;迫切需要技术调整和优化以应对成本压力并提高效率。面对人手减少、技术标准化不足和技术栈复杂等挑战&#xff0c;公司制定了通过建立标准化的可观测性体系来提升运维和研发效率的…

初始化爱情的构造之旅

初始化爱情的构造之旅 The Constructive Journey of Initializing Love 在一个名为“编程之城”的奇幻世界里&#xff0c;住着两位年轻的程序员——林浩然和杨凌芸。林浩然是Java王国中的首席对象设计师&#xff0c;擅长用代码构建复杂而精巧的对象&#xff1b;而杨凌芸则是数据…