Docker安装Elesticsearch7详细步骤

图片

1、创建安装目录

mkdir -p /usr/local/docker/es-docker

2、配置虚拟内存

如果不配置,后面启动es会报错。

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

配置如下

vi /etc/sysctl.conf
vm.max_map_count=262144

最后执行以下命令使其生效

sysctl -p

3、配置docker-compose.yml

内容如下:

version: '2.2'
services:
  es01:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.17.12
    container_name: es01
    environment:
      - node.name=es01
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es02,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data01:/usr/local/docker/es-docker/data/data01
    ports:
      - 9200:9200
    networks:
      - elastic
  es02:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.17.12
    container_name: es02
    environment:
      - node.name=es02
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data02:/usr/local/docker/es-docker/data/data02
    networks:
      - elastic
  es03:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.17.12
    container_name: es03
    environment:
      - node.name=es03
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es02
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data03:/usr/local/docker/es-docker/data/data03
    networks:
      - elastic

volumes:
  data01:
    driver: local
  data02:
    driver: local
  data03:
    driver: local

networks:
  elastic:
    driver: bridge

4、安装

docker-compose -f docker-compose.yml up -d

5、Elasticsearch新特性

Elasticsearch 7 于2019年11月发布,对比6.x,7.x 版本的特性变化主要有:
1. 集群连接变化:TransportClient 被废弃,7.x 的 java 代码,只能使用 restclient。对于 java 编程,建议采用 High-level-rest-client 的方式操作 ES 集群。
2. ES 数据存储结构变化:去除了 Type,es6时,官方就提到了 es7会删除 type,并且 es6时已经规定每一个 index 只能有一个 type。在 es7中使用默认的_doc 作为 type,官方说在8.x版本会彻底移除 type。同时,api 请求方式也发送变化,如获得某索引的某 ID 的文档的请求方式为:GET index/_doc/id,其中index和id为具体的值。
3. High-level REST client 改变:已删除接受 Header 参数的 API 方法;Cluster Health API 默认为集群级别。
4. ES 程序包默认打包 JDK:7.x 版本的程序包大小突然变为300MB+,对比6.x,包大了200MB+,正是 JDK 的大小。
5. 默认配置变化:默认节点名称为主机名,默认分片数改为1,不再是5。
6. 查询相关性速度优化:采用 Weak-AND 算法。核心原理是取 TOP N 结果集,估算命中记录数。一般情况下,在计算文本相关性时,会通过倒排索引的方式进行查询,通过倒排索引已经要比全量遍历节约大量时间,但有时候仍然很慢。这是因为很多时候我们其实只想要 top n 个结果,一些结果明显较差的也进行了复杂的相关性计算,而 Weak-AND 算法通过计算每个词的贡献上限来估计文档的相关性上限,从而建立一个阈值对倒排中的结果进行减枝,从而得到提速的效果。
7. 间隔查询(Intervals queries):在某些搜索用例中,例如法律和专利搜索,引入了查找单词或短语彼此相距一定距离的记录的需要。Elasticsearch 7.0中的间隔查询引入了一种构建此类查询的全新方式,与之前的方法(跨度查询 span queries)相比,使用和定义更加简单。与跨度查询相比,间隔查询对边缘情况的适应性更强。
8. 引入新的集群协调子系统。
这些新特性使得 Elasticsearch 7 在性能、可扩展性和易用性方面有了显著的提升,为用户提供了更好的搜索体验。

图片

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

光伏行业常用到的专业名词有哪些?都是什么意思?

光伏行业作为新能源领域的重要组成部分,涉及许多专业名词。本文将介绍一些常用的专业名词及其含义。 光伏电池:光伏电池是光伏发电系统的核心部件,能够将太阳能转换成直流电能。它是通过光生电效应工作的。 光伏组件:光伏组件是…

【vue3】vue3的应用实例是什么和怎么使用

简言 每个 Vue 应用都是通过 createApp 函数创建一个新的应用实例。 应用实例指的就是createApp的返回值,它是一个对象,里面包含了多个vue相关的属性,例如component(组件)、directive(指令)use…

自动化测试数据校验神器!

在做接口自动化测试时,经常需要从接口响应返回体中提取指定数据进行断言校验。 今天给大家推荐一款json数据提取神器: jsonpath jsonpath和常规的json有哪些区别呢?在Python中,json是用于处理JSON数据的内置模块,而jsonpath是用…

代码随想录 516. 最长回文子序列

题目 给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。 子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。 示例 1: 输入:s “bbbab” 输出&…

Jmeter接口自动化03-JMeter的常用核心组件

p03 高清B站视频链接 由于JMeter涉及的组件数目很多,据不完全统计至少有110个,而其实只需要掌握20%的组件就可以完成80%甚至更多的日常工作了,所以接下来我们重点剖析使用最频繁的核心组件,如下图所示。只需要优先掌握这10个左右…

百家大吉·夕阳关爱——昌岗街微型养老博览会

居民热情参与博览会 为让长者了解及选择适合自己的养老服务,昌岗街在2023年12月27日开展以“百家大吉夕阳关爱”为主题的昌岗街微型养老服务公益博览会活动,通过搭建养老服务机构供需服务平台,拓宽社区长者了解正规养老服务机构的渠道&#…

部署ATS(Apache Traffic Server)和Nginx正向代理服务性能对比

部署ATS(Apache Traffic Server)和Nginx正向代理服务&性能对比 1. 正向代理的用途2. ATS(Apache Traffic Server)正向代理服务器部署3. Nginx正向代理服务器部署4. 性能对比 1. 正向代理的用途 正向代理一般是用于内部网络出去,反向代理一…

三、GCC编译:链接

代码准备 main.c extern int shared; extern void func(int *a, int *b); int main(){int a 100;func(&a, &shared);return 0; }func.c int shared 1; int tmp 0; void func(int *a, int *b){tmp *a;*a *b;*b tmp; }静态链接 编译 gcc -static -fno-stack-p…

【Leetcode】2696. 删除子串后的字符串最小长度

文章目录 题目思路代码 题目 2696. 删除子串后的字符串最小长度 思路 计算通过删除字符串中的 “AB” 和 “CD” 子串后,可获得的最终字符串的最小长度。 主要思路是使用一个栈来模拟字符串的处理过程,每次遍历字符串时,如果当前字符和栈…

open3d相关操作总结

open3d其实有很多交互式命令,在运行程序打开了open3d渲染的窗口后,鼠标点击窗口,按H就会弹出,交互命令的帮助,如下图所示: 其中比较常用的有: Q :退出当前窗口 H:打印帮…

掌汇云 | 公司库开启入驻模式:FoodTalks靠食品雷达实现一本“万”利

不久前我们介绍了群硕的掌汇云产品功能,深入探讨了公司库的作用及其生态价值。 当FoodTalks遇上公司库,新一代食品类商业信息服务平台隆重登场——“食品雷达”,让食品人轻松找到公司、品牌、供应商、客户…… 为了更好地享用本文&#xff…

【计算机组成原理】程序的转换及机器级表示 常用计算机术语英文缩写汇总

编码 二进制编码的十进制数(BCD):Binary Coded Decimal美国信息交换标准代码(ASCII):American Standard Code for Information Interchange 数据的排列顺序 最低有效位(LSB)&…

深入剖析 Linux Cgroups 子系统:资源精细管理

本章主要演示以下 cgroups 下各个 subsystem 的作用。 根据难易程度,依次演示了 pids 、cpu 和 memory 3 个 subsystem 的使用。 注:本文所有操作在 Ubuntu20.04 下进行。 如果你对云原生技术充满好奇,想要深入了解更多相关的文章和资讯&…

Camunda Spin

Spin 常用于在脚本中解析json或者xml使用,S(variable) 表示构造成Spin对象,通过prop(“属性名”)获取属性值,通过stringValue()、numberValue()、boolValue() 等对类型转换。 repositoryService.createDeployment().name("消息事件流程&…

力扣120. 三角形最小路径和(Java 动态规划)

Problem: 120. 三角形最小路径和 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 Problem:64. 最小路径和 本题目可以看作是在上述题目的基础上改编而来,具体的思路: 1.记录一个int类型的大小的 n 乘 n n乘n n乘n的数组(其中 n n n为…

SCI一区级 | Matlab实现RIME-CNN-BiLSTM-Mutilhead-Attention多变量多步时序预测

SCI一区级 | Matlab实现RIME-CNN-BiLSTM-Mutilhead-Attention多变量多步时序预测 目录 SCI一区级 | Matlab实现RIME-CNN-BiLSTM-Mutilhead-Attention多变量多步时序预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现RIME-CNN-BiLSTM-Mutilhead-Attention多…

YOLOV8

YOLOv8 是 ultralytics (超溶体)公司在 2023 年 1月 10 号开源的 YOLOv5 的下一个重大更新版本,目前支持图像分类、物体检测和实例分割任务,在还没有开源时就收到了用户的广泛关注。 总结: 1. 是YOLOV5的继承者 2. …

使用CloudCompare对obj网格模型转换为pcd/ply点云模型

1.打开CloudCompare,点击文件夹图标,首先先把文件类型选择为.obj,然后再去找预处理的obj网格模型,点击打开。 2.测试打开的obj网格模型如下图: 3.选中obj文件,点击网格上样本点的图标,输入预生成…

VNC:虚拟网络计算技术及在VMware中开启VNC连接教程

什么是VNC? VNC (Virtual Network Computing) 是一种广泛应用的远程桌面共享系统,它允许用户通过网络实时查看并控制另一台计算机的桌面环境。无论操作系统如何,只要两端设备均安装了兼容的VNC客户端和服务端软件,即可实现跨平台…

RT-Thread入门笔记6-空闲线程及两个常用的钩子函数

空闲线程 空闲线程是一个比较特殊的系统线程,它具备最低的优先级。当系统中无其他就绪线程可运行时,调度器将调度到空闲线程。 空闲线程还负责一些系统资源回收以及将一些处于关闭态的线程从线程调度列表中移除的动作 空闲线程在形式上是一个无线循环结…