ES 入坑笔记系列(一)ES和Kibana的安装笔记记录

基于docker-compose安装es和kibana

编写es的docker-compose脚本:

yaml 复制代码
version: "3.1"
services:
  elasticsearch: 
    image: daocloud.io/library/elasticsearch:6.5.4
    restart: always
    container_name: elasticsearch
    ports:
      - 9200:9200
  kibana:
    image: daocloud.io/library/kibana:6.5.4
    restart: always
    container_name: kibana
    ports:
      - 80:5601
    environment:
      - elasticsearch_url=http://119.29.239.77:9200
    depends_on:
      - elasticsearch     

部署过程中,你可能会遇到这么些问题:

如何寻找相关es和kibana的镜像地址

进入这个平台直接搜索即可:hub.daocloud.io/repos?q=ela...

选择使用人最多的镜像,然后点击拉取按钮,接着会有镜像地址提示框弹出。

这里我们要注意,kibana和es是同一家公司研发出来的,因此它们在选择的时候产品的版本号要统一,这里我用的是6.5.4版本。

Docker安装 elasticsearch 报错max virtual memory areas vm.max_map_count [65530] is too low

遇到这种内存不足的问题,直接如下操作即可,修改linux的sysctl.conf配置文件

ini 复制代码
vi /etc/sysctl.conf
添加 一行 vm.max_map_count=655360
加载参数
sysctl -p
重启

修改了内存配置之后,再docker-compose重新执行一次。

如果es启动成功,我们可以通过 curl 'localhost:9200' 去看看返回结果,正常的话返回结果应该如下所示:

json 复制代码
{
  "name" : "hZMgI5A",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "PT91KmjkTi2o15sNm6D7TA",
  "version" : {
    "number" : "6.5.4",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "d2ef93d",
    "build_date" : "2018-12-17T21:17:40.758843Z",
    "build_snapshot" : false,
    "lucene_version" : "7.5.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

然后再去访问 Kibana的页面,直接输入ip加端口即可访问

安装IK分词器

默认的es分词器对于英文的分词还可以,但是对于中文来说,不是那么好用。

ik分词器的下载地址

ruby 复制代码
https://github.com/medcl/elasticsearch-analysis-ik/releases

使用docker exec -it xxxx bash 命令可以直接进入到容器内部的es目录下,在进入es的docker容器之后,我们可以手动切换到bin目录下,然后使用elasticsearch-plugin命令去下载ik分词器

由于docker容器内部下载东西网络太慢,所以我这边在本地的电脑上下载好了ik分词器,并且传到了一个免费的云存储平台上。下载命令如下:

arduino 复制代码
elasticsearch-plugin install https://files.catbox.moe/u712h6.zip

注意:安装了ik分词器后,需要重启才能使之生效,所以这里我们直接使用docker restart命令去重启es即可。

测试中文分词结果

最后在kibana上的dev tools上,我们可以去测试ik分词器。

json 复制代码
POST _analyze
{
  "analyzer":"ik_max_word",
  "text":"高质量柔软白色tisu棉衣"
}
相关推荐
枕星而眠2 分钟前
C++ String类精讲:从基础用法到进阶底层原理
开发语言·c++·后端·学习方法
念何架构之路7 分钟前
Go pprof性能剖析
开发语言·后端·golang
zhz52148 分钟前
Spring Boot 接入国密实战:传输加密(TLCP)+ 密码加密(SM4)
java·spring boot·后端·国密·sm4
我是一颗柠檬16 分钟前
【JDK8新特性】函数式接口Day2
java·开发语言·后端·intellij-idea
Trouvaille ~16 分钟前
【Redis篇】Redis 安装与启动:快速搭建一个 Redis 环境
数据库·redis·后端·ubuntu·缓存·环境搭建·安装教程
Mahir0818 分钟前
Spring Boot 自动装配深度解密:从原理到自定义 Starter 实战
java·spring boot·后端·自动装配·自定义starter·大厂面试题
Mahir089 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析
java·后端·spring·缓存·面试·循环依赖·三级缓存
IT_陈寒13 小时前
Redis缓存击穿把我整不会了,原来还有这手操作
前端·人工智能·后端
kyriewen14 小时前
面试官让我查各部门工资最高的员工,我用AI三秒写出窗口函数,他愣了
后端·mysql·面试
文心快码BaiduComate14 小时前
干货|Comate Harness Engineering工程实践指南
前端·后端·程序员