Docker安装Elesticsearch7详细步骤

news2024/9/29 1:29:16

图片

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 在性能、可扩展性和易用性方面有了显著的提升,为用户提供了更好的搜索体验。

图片

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL夯实之路-存储引擎深入浅出

innoDB Mysql4.1以后的版本将表的数据和索引放在单独的文件中 采用mvcc来支持高并发,实现了四个标准的隔离级别,默认为可重复读,并且通过间隙锁(next-key locking)策略防止幻读(查询的行中的间隙也会锁定…

使用Navicat导入csv数据至mysql

问题 使用Navicat导入csv数据至mysql 详细问题 笔者有已进行数据处理的csv,需要将数据信息导入mysql中 解决方案 步骤1、建立数据表,字段信息(最好)与csv字段信息保持一致,方便后续导入。 具体的,双击…

WPS - 表格虚线变成实线解决方案(Office 同上)

1、选中表格区域,在表格中选中需要调整为实线的表格区域 2、点击设置单元格格式,鼠标进行右击并点击设置单元格格式选项 3、选择实线,在单元格格式下的边框,调整到实线 4、设置为实线,即可将表格的虚线设置为实线

Django(七)

Django(六) 4.编辑用户 点击编辑,跳转到编辑页面(将编辑行的ID携带过去)。编辑页面(默认数据,根据ID获取并设置到页面中)提交: 错误提示数据校验在数据库更新 user_edit.html {% exte…

JavaScript Web Worker用法指南

🧑‍🎓 个人主页:《爱蹦跶的大A阿》 🔥当前正在更新专栏:《VUE》 、《JavaScript保姆级教程》、《krpano》 ​ ​ ✨ 前言 Web Worker可以将耗时任务放到后台执行,避免阻塞UI。本文将详细介绍Web Worker的用法,让你…

Spark原理——运行过程

运行过程 逻辑图 是什么 怎么生成 具体怎么生成 val textRDD sc.parallelize(Seq("Hadoop Spark", "Hadoop Flume", "Spark Sqoop")) val splitRDD textRDD.flatMap(_.split(" ")) val tupleRDD splitRDD.map((_, 1)) val reduceRD…

代币合约 ERC20 Token接口

代币合约 在以太坊上发布代币就要遵守以太坊的规则,那么以太坊有什么规则呢?以太坊的精髓就是利用代码规定如何运作,由于在以太坊上发布智能合约是不能修改和删除的,所以智能合约一旦发布,就意味着永久有效,不可篡改…

ESU毅速丨复杂结构模具可尝试3D打印随形水路

冷却水路对模具的生产效率影响巨大,一些结构复杂、骨位深的模具常规水路加工困难且冷却效果不理想,这时可尝试3D打印来制造水路。3D打印技术可以制造出具有复杂内部结构和任意几何形状的部件,特别适合结构复杂、骨位深、薄壁等特征的模具水路…

解决uni-app小程序获取路由及路由参数

代码: this.id = this.$route.query.id;错误信息: 解决方案: // 获取query对象// #ifdef H5this.id = this.$route

电子学会C/C++编程等级考试2023年09月(三级)真题解析

C/C++编程(1~8级)全部真题・点这里 第1题:谁是你的潜在朋友 “臭味相投”——这是我们描述朋友时喜欢用的词汇。两个人是朋友通常意味着他们存在着许多共同的兴趣。然而作为一个宅男,你发现自己与他人相互了解的机会并不太多。幸运的是,你意外得到了一份北大图书馆的图书借…

最新AI绘画Midjourney绘画提示词Prompt大全

一、Midjourney绘画工具 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭…

提供一些防扫描被封禁、防溯源工具

1► 介绍 SecScanC2可以创建P2P网络进行安全扫描和C2。该工具可以帮助安全研究人员更有效地进行渗透测试,防止扫描被封禁,保护自己免受溯源。 2► 工具特性 P2P:将大量互联网节点构建成P2P网络 防止扫描被封禁:随机或指定节点…

Photoshop 2024 (PS2024) v25 直装版 支持win/mac版

Photoshop 2024 提供了多种创意工具,如画笔、铅笔、涂鸦和渐变等,用户可以通过这些工具来创建独特和令人印象深刻的设计效果。增强的云同步:通过 Adobe Creative Cloud,用户可以方便地将他们的工作从一个设备无缝同步到另一个设备…

Springboot注解@EnableConfigurationProperties和@ConfigurationProperties关系和作用

目录 EnableConfigurationProperties和ConfigurationProperties关系是什么? 简介 ConfigurationProperties EnableConfigurationProperties 二者之间的联系 总结 EnableConfigurationProperties和ConfigurationProperties关系是什么? 其实我能明白…

计算机毕业设计 基于Java的美食信息推荐系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

openssl3.2 - 官方demo学习 - cipher - aesgcm.c

文章目录 openssl3.2 - 官方demo学习 - cipher - aesgcm.c概述笔记END openssl3.2 - 官方demo学习 - cipher - aesgcm.c 概述 AES-256-GCM 在这个实验中验证了EVP_CIPHER_fetch()中算法名称字符串的来源定位. 在工程中配置环境变量PATH, 且合并环境. 这样就不用将openSSL的D…

kubeadm安装kubernetes

基本环境配置 节点分为:master,node,masterlb(keepalived虚拟Ip,不占用机器) k8s-master01 16 k8s-node01 113 15 k8s-node02 115 进入之后直接选done done 上海 123456 设置静态ip 然后去虚拟机里面设置ens即可 查看命…

【算法与数据结构】62、LeetCode不同路径

文章目录 一、题目二、解法2.1 动态规划解法2.2 数论解法 三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 2.1 动态规划解法 思路分析:机器人只能向下或者向右移动,那么到达&a…

【金猿人物展】DataPipelineCEO陈诚:赋能数据应用,发挥未来生产力

‍ 陈诚 本文由DataPipelineCEO陈诚撰写并投递参与“数据猿年度金猿策划活动——2023大数据产业年度趋势人物榜单及奖项”评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 我们处在一个“见证奇迹”的时代。在过去的20年间,我们见证了大数据技术快速发展所带…

Linux中Docker数据管理的数据卷及挂载

目录 一、数据管理 1. 讲述 2. 应用场景 二、数据卷的应用 1. 命令 2. tomcat镜像 3. 挂载数据卷 4. 项目部署在数据卷 三、目录挂载 四、完善Tomcat配置 每篇一获 一、数据管理 1. 讲述 Docker 的数据管理主要涉及到两个方面:数据卷(Volumes&#xff09…