mac下安装Elasticsearch实践

一:Elasticsearch安装

1.1 基础安装

下载地址:​​​​elasticsearch下载

1. 报错修复

 打开 http://localhost:9200/

received plaintext http traffic on an https channel, closing connection

找到config/目录下面的elasticsearch.yml配置文件,把安全认证开关从原先的true都改成false,实现免密登录访问即可,修改这两处都为false后:

xpack.security.enabled: true ->false

xpack.security.http.ssl:

  enabled: true->false

2. 重新启动

    再次打开http://localhost:9200/

报错

failed to load plugin class [org.elasticsearch.xpack.security.Security

flase 拼写错误,应该是false

1.2 密码设置

     执行 ./elasticsearch-setup-passwords interactive

Changed password for user [apm_system]
Changed password for user [kibana_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]

二:kibana下载安装

    Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索、查看交互存储在Elasticsearch索 引中的数据。使用Kibana,可以通过各种图表进行高级数据分析及展示。Kibana让海量数据更容易理 解。它操作简单,基于浏览器的用户界面可以快速创建仪表板(dashboard)实时显示Elasticsearch查 询动态。设置Kibana非常简单。无需编码或者额外的基础架构,几分钟内就可以完成Kibana安装并启动 Elasticsearch索引监测。

下载地址

解压,进入config文件夹,修改配置文件kibana.yml

将es的地址,改为自己本机IP地址就ok,如果是服务器的话,改为服务器地址就好了。

设置密码:

elasticsearch.username: "kibana_system"
elasticsearch.password: "123456"

汉化需要修改如下:

进入bin目录,启动kibana(用户名: elastic  密码: 123456):

打开网址:http://localhost:5601

三:Elasticsearch基础操作

3.1 中文分词包IK

1. 下载ik分词器的包 下载

2. 下载后解压,并将目录拷贝到ElasticSearch根目录下的 plugins 目录中。
plugins目录下新建ik文件夹,将zip解压到ik文件夹下

3. 重新启动 ElasticSearch 服务,在启动过程中,你可以看到正在加载"analysis-ik"插件的提示信息。

 Plugin [analysis-ik] was built for Elasticsearch version 8.12.0 but version 8.12.1 is running

测试IK 分词器 (ik_smart)

测试IK 分词器(ik_max_word)

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

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

默认分词器:

GET _analyze
{
  "text": "三生三世十里桃花"
}

3.2 监控模块

    注意:配置用户名和密码

    监控中可以看出状态处于 Yellow状态

3.3 索引操作

3.3.1 创建索引

Elasticsearch支持以下字段类型:

  • text:文本字段
  • keyword:关键词字段
  • date:日期字段
  • long、integer、short、byte、double、float、half_float、scaled_float:数字类型字段
  • boolean:布尔类型字段
  • binary:二进制类型字段
  • range:范围类型字段
  • object:嵌套类型字段
  • nested:嵌套类型字段(如数组)

下面是一个索引映射的示例:

{
  "mappings": {
    "properties": {
      "title": {
        "type": "text"
      },
      "author": {
        "type": "text"
      },
      "year": {
        "type": "date"
      },
      "price": {
        "type": "float"
      },
      "publisher": {
        "type": "object",
        "properties": {
          "name": { "type": "text" },
          "address": { "type": "text" }
        }
      }
    }
  }
}

3.3.2 查看索引

GET /_cat/indices?v

  返回结果:

health status index                                     uuid                   pri rep docs.count docs.deleted store.size pri.store.size dataset.size
yellow open   .ds-heartbeat-8.5.0-2024.02.09-000001     iOKQHVaZRimWPH2YISFeuw   1   1          0            0       249b           249b         249b
green  open   metrics-endpoint.metadata_current_default u3wBMzQaSausVn17p7ocIw   1   0          0            0       249b           249b         249b
yellow open   .lists-default-000001                     fCRXWSTaR0iX11XQgNEVuA   1   1          0            0       249b           249b         249b
green  open   .ds-.monitoring-es-8-mb-2024.02.09-000001 9iKkO75LQiGy-vezu7jJhA   1   0        155            0    348.7kb        348.7kb      348.7kb
yellow open   .items-default-000001                     MXXJ1C_bTQGYPvfl4XyoXg   1   1          0            0       249b           249b         249b
yellow open   .ds-metricbeat-8.5.3-2024.02.09-000001    QGG2IOGCTdKfk30RBUXHaA   1   1        135            0    194.9kb        194.9kb      194.9kb

含义:

表头	含义
health	当前服务器健康状态: green(集群完整) yellow(单点正常、集群不完整) red(单点不正常)
status	索引打开、关闭状态
index	索引名
uuid	索引统一编号
pri	主分片数量
rep	副本数量
docs.count	可用文档数量
docs.deleted	文档删除状态(逻辑删除)
store.size	主分片和副分片整体占空间大小
pri.store.size	主分片占空间大小

查看单个索引:

GET /shopping

   

四. Elasticsearch 基础

4.1 集群Cluster

     ElasticSearch 是一个分布式的搜索引擎,所以一般由多台物理机组成。而在这些机器上通过配置一个相同的cluster name,让其互相发现从而把自己组织成一个集群。

     集群的健康状态,ES集群存在三种健康状态,单节点ES也可以算是一个集群。

  • green(绿色):代表所有索引的主分片和副本均已分配且可用,集群是100%可用。
  • yellow(黄色):主分片已分配且全部主分片可用,但所有的副本不全部可用,可能是缺失,也有可能是某个索引的副本未被分配,可以通过move cancel allocate 命令所属的API进行分配或移动分片到指定节点,使用这里要注意主分片和其副本绝不能在同一节点。此时系统容错性和集群高可用被弱化。
  • red(红色):所有的主分片不全部可用,这代表很有可能存在丢失数据的风险。如果只有一个单节点Elasticsearch那么属于一种yellow状态,因为没有副本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值