ELK相关软件下载安装

news/2024/7/5 16:14:36 标签: elk, elasticsearch, kibana, IK分词器

elasticsearch_0">一、Windows安装elasticsearch

1、安装JDK,至少1.8.0_73以上版本,验证:java -version

2、下载和解压缩Elasticsearch安装包,查看目录结构

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

在这里插入图片描述

目录结构:
在这里插入图片描述

3、配置文件

位置:使用zip、tar安装,配置文件的地址在安装目录的config下

常用的配置项如下:

cluster.name: 
	配置elasticsearch的集群名称,默认是elasticsearch。建议修改成一个有意义的名称。
node.name:
	节点名,通常一台物理服务器就是一个节点,es会默认随机指定一个名字,建议指定一个有意义的名称,方便管理
	一个或多个节点组成一个cluster集群,集群是一个逻辑的概念,节点是物理概念,后边章节会详细介绍。
path.conf: 
	设置配置文件的存储路径,tar或zip包安装默认在es根目录下的config文件夹,rpm安装默认在/etc/ elasticsearch
path.data:
	设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开。
path.logs:
	设置日志文件的存储路径,默认是es根目录下的logs文件夹
path.plugins: 
	设置插件的存放路径,默认是es根目录下的plugins文件夹
bootstrap.memory_lock: true
	设置为true可以锁住ES使用的内存,避免内存与swap分区交换数据。
network.host: 
	设置绑定主机的ip地址,设置为0.0.0.0表示绑定任何ip,允许外网访问,生产环境建议设置为具体的ip。
http.port: 9200
	设置对外服务的http端口,默认为9200。
transport.tcp.port: 9300  集群结点之间通信端口
node.master: 
	指定该节点是否有资格被选举成为master结点,默认是true,如果原来的master宕机会重新选举新的master。
node.data: 
	指定该节点是否存储索引数据,默认为true。
discovery.zen.ping.unicast.hosts: ["host1:port", "host2:port", "..."]
	设置集群中master节点的初始列表。
discovery.zen.ping.timeout: 3s
	设置ES自动发现节点连接超时的时间,默认为3秒,如果网络延迟高可设置大些。
discovery.zen.minimum_master_nodes:
	主结点数量的最少值 ,此值的公式为:(master_eligible_nodes / 2) + 1 ,比如:有3个符合要求的主结点,那么这里要设置为2。
node.max_local_storage_nodes: 
	单机允许的最大存储结点数,通常单机启动一个结点建议设置为1,开发环境如果单机启动多个节点可设置大于1。

jvm.options:设置最小及最大的JVM堆内存大小

在jvm.options中设置 -Xms和-Xmx:

  • 两个值设置为相等

  • 将Xmx 设置为不超过物理内存的一半。

4、启动Elasticsearch:bin\elasticsearch.bat,es的特点就是开箱即,无需配置,启动即可

注意:es7 windows版本不支持机器学习,所以config\elasticsearch.yml中添加如下几个参数:

node.name: node-1  
cluster.initial_master_nodes: ["node-1"]  
xpack.ml.enabled: false 
http.cors.enabled: true
http.cors.allow-origin: /.*/

5、检查ES是否启动成功:浏览器访问http://localhost:9200/

在这里插入图片描述

解释:

  • name: node名称,取自机器的hostname
  • cluster_name: 集群名称(默认的集群名称就是elasticsearch
  • version.number: 7.3.2,es版本号
  • version.lucene_version:封装的lucene版本号

6、浏览器访问 http://localhost:9200/_cluster/health 查询集群状态

{
    "cluster_name": "elasticsearch",
    "status": "green",
    "timed_out": false,
    "number_of_nodes": 1,
    "number_of_data_nodes": 1,
    "active_primary_shards": 0,
    "active_shards": 0,
    "relocating_shards": 0,
    "initializing_shards": 0,
    "unassigned_shards": 0,
    "delayed_unassigned_shards": 0,
    "number_of_pending_tasks": 0,
    "number_of_in_flight_fetch": 0,
    "task_max_waiting_in_queue_millis": 0,
    "active_shards_percent_as_number": 100
}

解释:

Status:集群状态。green 所有分片可用。Yellow所有主分片可用。Red主分片不可用,集群不可用。

二、 Windows安装Kibana

1、下载,解压kibana

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

在这里插入图片描述

2、启动Kibana:bin\kibana.bat

在这里插入图片描述

3、浏览器访问 http://localhost:5601 进入Dev Tools界面

在这里插入图片描述

三、 Windows安装IK分词器

1、根据es版本下载相应版本包解压(es/plugins/ik)

下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases

在这里插入图片描述

2、重启es

ik分词器基础知识

  • ik_max_word: 会将文本做最细粒度的拆分,比如会将“中华人民共和国人民大会堂”拆分为“中华人民共和国,中华人民,中华,华人,人民共和国,人民大会堂,人民大会,大会堂”,会穷尽各种可能的组合

  • ik_smart: 会做最粗粒度的拆分,比如会将“中华人民共和国人民大会堂”拆分为“中华人民共和国,人民大会堂”

ik分词器的使用

存储时,使用ik_max_word,搜索时,使用ik_smart

//存储
PUT /my_index 
{
  "mappings": {
      "properties": {
        "text": {
          "type": "text",
          "analyzer": "ik_max_word",
          "search_analyzer": "ik_smart"
        }
      }
  }
}

//搜索
GET /my_index/_search?q=中华人民共和国人民大会堂

ik配置文件

  • ik配置文件地址:es/plugins/ik/config目录

  • IKAnalyzer.cfg.xml:用来配置自定义词库

  • main.dic:ik原生内置的中文词库,总共有27万多条,只要是这些单词,都会被分在一起

  • preposition.dic: 介词

  • quantifier.dic:放了一些单位相关的词,量词

  • suffix.dic:放了一些后缀

  • surname.dic:中国的姓氏

  • stopword.dic:英文停用词

ik原生最重要的两个配置文件

  • main.dic:包含了原生的中文词语,会按照这个里面的词语去分词

  • stopword.dic:包含了英文的停用词

自定义词库

  • 自己建立词库:每年都会涌现一些特殊的流行词,网红,鬼畜,一般不会在ik的原生词典里,需要自己补充自己的最新的词语,到ik的词库里面

    • IKAnalyzer.cfg.xml:ext_dict,创建mydict.dic,补充自己的词语,然后需要重启es,才能生效
  • 自己建立停用词库:比如了,的,啥,么,我们可能并不想去建立索引,让人家搜索

    • custom/ext_stopword.dic,已经有了常用的中文停用词,可以补充自己的停用词,然后重启es

http://www.niftyadmin.cn/n/352293.html

相关文章

登录应该是POST还是GET?

前言: 在开发web应用程序时,登录模块是经常使用到的一个模块。然而,对于一个登录请求,我们应该使用哪种HTTP方法呢?是使用POST还是GET呢?本篇文章将会给出答案。 POST和GET: 在web开发中&…

微服务学习笔记--(Docker)

目录 初识DockerDcoker的基本操作Dockerfile自定义镜像Docker-ComposeDocker镜像服务 初始Docter 什么是DockerDocker和虚拟机的区别Docker架构安装Docker 初识Docker-什么是docker 项目部署的问题 大型项目组件较多,运行环境也较为复杂,部署时会碰…

Selenium、JUnit、Appium…一网打尽,轻松掌握自动化测试工具

目录 前言: 一、 自动化测试原理 二、 自动化测试工具和技术 三、 自动化测试案例 四、 总结 前言: 自动化测试是现代软件开发中必不可少的组成部分,它可以让开发者快速、高效地测试软件,并确保其符合预期要求。在本文中&am…

go-gf框架查询结果数组里套数组 数据和方法

数据 type ObtainClassificationRes struct {Id int json:"id" dc:"用户名"Name string json:"name" dc:"标题"Introduce string json:"introduce" dc:"介绍"Picture string…

前端HTML之基础扫盲

博主简介:想进大厂的打工人博主主页:xyk:所属专栏: JavaEE初阶 本篇文章将讲解HTML的基础,认识HTML的基本结构,学会使用常用的HTML标签,愿诸位喜欢 目录 文章目录 一、创建第一个HTML程序 二、HTML基本标签介绍 2.1 HT…

从选型工具到内核优化,从替代方法到迁移改造,河北移动联合云和恩墨以创新树标杆,推进国产数据库应用落地...

势在必行,电信行业国产化改造适逢其时 自十四五规划以来,伴随着“科技创新”和“信息安全”等相关政策的密集出台,我国信创产业正式进入高速发展期,力求通过构建各行业全栈国产IT体系,实现科技技术自主可控&#xff0c…

推荐5个免费好用的UI模板网站!

1、即时设计 即时设计资源广场是一个聚集了大量优秀设计作品和大厂设计系统超过3000个UI组件库的设计师灵感库。该广场每月更新上百个精品模板,且还将这些模板分门别类按不同类型素材进行分类,其丰富的设计资源包括移动设计、网页设计、插画、线框图、矢…

linux0.12-10-chr_drv

[466页] 第10章 字符设备驱动程序 466–10-1-总体功能 466–10-1-1-终端驱动程序基本原理 467–10-1-2-Linux支持的终端设备类型 468–10-1-3-终端基本数据结构 472–10-1-4-规范模式和非规范模式 473–10-1-5-控制台终端和串行终端设备 476–10-1-6-终端驱动程序接口 476–…