• elasticSearch 安装及使用采坑


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

    本文中为:LINUX X86_64 的7.9.3 

    2、解压 

    tar -zxf elasticsearch-7.9.3.tar.gz
    cd elasticsearch-7.9.3/bin 
    ./elasticsearch
    
    注意:不要用root账号启动,会报错,报错信息明确提示不能用root账号启,
    加新的账号别忘了权限啊

       如果想es作为后台守护进程,那么启动的命令后面 加   -d   


    3、执行命令:  

    curl http://localhost:9200/

    如果返回的下面这样,说明安装成功:

    {
      "name" : "localhost.localdomain",
      "cluster_name" : "elasticsearch",
      "cluster_uuid" : "g9uoXKQhRSCeMBAurwZOhw",
      "version" : {
        "number" : "7.9.3",
        "build_flavor" : "default",
        "build_type" : "tar",
        "build_hash" : "c4138e51121ef06a6404866cddc601906fe5c868",
        "build_date" : "2020-10-16T10:36:16.141335Z",
        "build_snapshot" : false,
        "lucene_version" : "8.6.2",
        "minimum_wire_compatibility_version" : "6.8.0",
        "minimum_index_compatibility_version" : "6.0.0-beta1"
      },
      "tagline" : "You Know, for Search"
    }

    重点几个关注下即可:

    • name : 默认启动的时候指定了 ES 实例名称,name 为 localhost.localdomain
    • cluster_name : 默认名为 elasticsearch
    • version :版本信息

    查看集群健康状态:

    命令:curl -X GET "localhost:9200/_cat/health?v"

    返回:

    epoch      timestamp cluster       status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
    1604908400 07:53:20  elasticsearch green           1         1      0   0    0    0        0             0                  -                100.0%

    我们可以看到,我们命名为“elasticsearch”的集群现在是green状态。

    无论何时我们请求集群健康时,我们会得到green, yellow, 或者 red 这三种状态。

    • Green : everything is good(一切都很好)(所有功能正常)
    • Yellow : 所有数据都是可用的,但有些副本还没有分配(所有功能正常)
    • Red : 有些数据不可用(部分功能正常)

    从上面的响应中我们可以看到,集群"elasticsearch"总共有1个节点,0个分片因为还没有数据。

    下面看一下集群的节点列表:

    同样通过命令  curl http://localhost:9200/_cat/nodes?v ,可以看到当前节点信息,如下:

    ip        heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
    127.0.0.1           63          85   1    0.01    0.05     0.10 dilmrt    *      localhost.localdomain

    可以看到集群中只有一个节点

    那就捯饬几个出来

    单机多个 ES 实例,形成一个 ES 单机伪集群,启动脚本如下:

    bin/elasticsearch -E node.name=node01 -E cluster.name=bysocket_es_cluster -E path.data=node01_data -d
    
    bin/elasticsearch -E node.name=node02 -E cluster.name=bysocket_es_cluster -E path.data=node02_data -d
    
    bin/elasticsearch -E node.name=node03 -E cluster.name=bysocket_es_cluster -E path.data=node03_data -d

    命令简单解释如下:

    • node.name : ES 节点名称,即实例名
    • cluster.name : ES 集群名称
    • path.data : 指定了存储文档数据目录

    命令   curl http://localhost:9200/_cat/nodes?v     查看集群节点

    结果如下

    ip        heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
    127.0.0.1            8          77  98    4.76    2.06     2.43 dilmrt    *      node01
    127.0.0.1           22          77  93    4.76    2.06     2.43 dilmrt    -      node03
    127.0.0.1           17          77  96    4.76    2.06     2.43 dilmrt    -      node02

    可以看到启动情况:node01 为当前 master 节点

    如何关闭集群中的 ES 实例,可以使用简单的命令实现:

    ps | grep elasticsearch
    kill -9 pid

    就是一个个kill 掉 es的进程 

    关于es的插件

    插件是用来增强 Elasticsearch 功能的方法,分为 核心插件(官方) & 社区插件。

    安装 analysis-icu ICU 分析插件,命令如下:

    sudo bin/elasticsearch-plugin install analysis-icu

    查看已安装的插件,命令如下:

    bin/elasticsearch-plugin list 

    删除已安装的插件,命令如下:

    sudo bin/elasticsearch-plugin remove analysis-icu

     第一次安装  

    analysis-icu  插件失败了,报错:
    ERROR: SHA-512 mismatch, expected 86872513926e。。。。 but got 34af8defd。。。。

    然后专门去搜了一下 插件,,,发现一个博客上写了 :

    注意:es的插件安装需要使用root权限,因为会涉及到一些文件写入的权限操作。

    换到root安装,先提示要卸载,因为刚才报错的操作,其实下载了或者安装了部分(具体不清楚),

    根据提示 用root,先卸载,再安装  就成功了,

    有点不理解,es启动不能用root,装插件必须用 root,不知道后面使用会不会有权限问题,, 

    参考:https://www.cnblogs.com/Alandre/p/11386178.html、https://www.cnblogs.com/cjsblog/p/9439331.html

  • 相关阅读:
    负载均衡之数据链路层
    阿里云CentOS6.8安装MySQL5.6
    Maven clean命令不能执行问题Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project
    Oracle数据库不能创建表空间及表中文乱码问题
    win7物理主机与虚拟XP系统互相ping不通解决方法
    Linux严格区分大小写
    java的Date类型转换为MySQL数据库的Date类型
    Spring框架中的AOP技术----注解方式
    Ajax实现验证码异步校验
    Spring框架中的AOP技术----配置文件方式
  • 原文地址:https://www.cnblogs.com/feiye512/p/13961705.html
Copyright © 2020-2023  润新知