通过helm方式安装elasticsearch 7.17.3

这篇具有很好参考价值的文章主要介绍了通过helm方式安装elasticsearch 7.17.3。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

下载安装包

安装elasticsearch有很多种方法,比如裸机安装、通过docker安装、通过k8s pod安装、通过Helm安装。
本文提供了通过Helm安装elasticsearch集群的方案,该方案出自于es官方。做了点小改动,可以直接在k8s集群中运行。

helm repo add elastic https://helm.elastic.co
helm pull elastic/elasticsearch --version 7.17.3

修改helm 的value文件中的配置

clusterName: "es-cluster"
nodeGroup: "master"

masterService: ""
roles:
  master: "true"
  ingest: "true"
  data: "true"
  remote_cluster_client: "true"
  ml: "true"

replicas: 3
minimumMasterNodes: 2

运行helm安装

helm install elasticsearch elasticsearch -n default

创建PV

如果集群中有3个基点,要另外增加两个PV,并改名字“es-cluster-master-es-cluster-master-0” 为 “es-cluster-master-es-cluster-master-1” 和 “es-cluster-master-es-cluster-master-2”

PV文件 模板如下 es-pv1.yaml:

apiVersion: "v1"
kind: "PersistentVolume"
metadata:
  name: "es-cluster-master-es-cluster-master-0"
spec:
  capacity:
    storage: "100Gi"
  accessModes:
    - "ReadWriteOnce"
  persistentVolumeReclaimPolicy: Recycle
  hostPath:
    path: /data/db/es-data

kubectl apply -f es-pv1.yaml
kubectl apply -f es-pv2.yaml
kubectl apply -f es-pv3.yaml

创建密码

可以查看values.yaml文件,中有说明使用secret方式创建密码。

测试

 curl -XGET --user http://172.16.xx.xx:9200/_cat/nodes

通过docker-compose方式:

master1,master2,master3的ip:
172.16.79.1,172.16.79.2,172.16.79.3文章来源地址https://www.toymoban.com/news/detail-766232.html

3 台机器的docker-compose文件:

master1
version: '3'
services:
  es:                    # 服务名称
    image: elasticsearch:7.3.0      # 使用的镜像
    container_name: es01   # 容器名称
    restart: always                 # 失败自动重启策略
    environment:
      - node.name=es01                 # 节点名称,集群模式下每个节点名称唯一
      - network.host=0.0.0.0                # 设置绑定的ip地址,可以是ipv4或ipv6的,默认为0.0.0.0,即本机
      - network.publish_host=172.16.79.1      # 用于集群内各机器间通信,对外使用,其他机器访问本机器的es服务,一般为本机宿主机IP
      - discovery.seed_hosts=172.16.79.1,172.16.79.2,172.16.79.3        # es7.0之后新增的写法,写入候选主节点的设备地址,在开启服务后,如果master挂了,哪些可以被投票选为主节点
      - cluster.initial_master_nodes=es01  # es7.0之后新增的配置,初始化一个新的集群时需要此配置来选举master
      - cluster.name=es-cluster-prod     # 集群名称,相同名称为一个集群, 三个es节点须一致
      - bootstrap.memory_lock=true  # 内存交换的选项,官网建议为true
      - node.master=true
      - node.data=true
      - http.port=9200
      - transport.tcp.port=9300
      - "ES_JAVA_OPTS=-Xms2g -Xmx2g" # 设置内存,如内存不足,可以尝试调低点
    ulimits:        # 栈内存的上限
      memlock:
        soft: -1    # 不限制
        hard: -1    # 不限制
    volumes:
      - ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml  # 将容器中es的配置文件映射到本地,设置跨域, 否则head插件无法连接该节点
      - ./data:/usr/share/elasticsearch/data  # 存放数据的文件
      - ./logs:/usr/share/elasticsearch/logs  #存放日志文件
      - ./elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12 #存放证书, 证书生成请自行查阅
    ports:
      - 9200:9200    # http端口,可以直接浏览器访问
      - 9300:9300    # es集群之间相互访问的端口,jar之间就是通过此端口进行tcp协议通信,遵循tcp协议。
    networks:
      - elk
networks:
  elk:
    driver: bridge
    ```

##### master2
```bash
version: '3'
services:
  es:                    # 服务名称
    image: elasticsearch:7.3.0      # 使用的镜像
    container_name: es01   # 容器名称
    restart: always                 # 失败自动重启策略
    environment:
      - node.name=es01                 # 节点名称,集群模式下每个节点名称唯一
      - network.host=0.0.0.0                # 设置绑定的ip地址,可以是ipv4或ipv6的,默认为0.0.0.0,即本机
      - network.publish_host=172.16.79.2      # 用于集群内各机器间通信,对外使用,其他机器访问本机器的es服务,一般为本机宿主机IP
      - discovery.seed_hosts=172.16.79.1,172.16.79.2,172.16.79.3        # es7.0之后新增的写法,写入候选主节点的设备地址,在开启服务后,如果master挂了,哪些可以被投票选为主节点
      - cluster.initial_master_nodes=es01  # es7.0之后新增的配置,初始化一个新的集群时需要此配置来选举master
      - cluster.name=es-cluster-prod     # 集群名称,相同名称为一个集群, 三个es节点须一致
      - bootstrap.memory_lock=true  # 内存交换的选项,官网建议为true
      - node.master=true
      - node.data=true
      - http.port=9200
      - transport.tcp.port=9300
      - "ES_JAVA_OPTS=-Xms2g -Xmx2g" # 设置内存,如内存不足,可以尝试调低点
    ulimits:        # 栈内存的上限
      memlock:
        soft: -1    # 不限制
        hard: -1    # 不限制
    volumes:
      - ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml  # 将容器中es的配置文件映射到本地,设置跨域, 否则head插件无法连接该节点
      - ./data:/usr/share/elasticsearch/data  # 存放数据的文件
      - ./logs:/usr/share/elasticsearch/logs  #存放日志文件
      - ./elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12 #存放证书, 证书生成请自行查阅
    ports:
      - 9200:9200    # http端口,可以直接浏览器访问
      - 9300:9300    # es集群之间相互访问的端口,jar之间就是通过此端口进行tcp协议通信,遵循tcp协议。
    networks:
      - elk
networks:
  elk:
    driver: bridge
    ```
##### master3
```bash
version: '3'
services:
  es:                    # 服务名称
    image: elasticsearch:7.3.0      # 使用的镜像
    container_name: es01   # 容器名称
    restart: always                 # 失败自动重启策略
    environment:
      - node.name=es01                 # 节点名称,集群模式下每个节点名称唯一
      - network.host=0.0.0.0                # 设置绑定的ip地址,可以是ipv4或ipv6的,默认为0.0.0.0,即本机
      - network.publish_host=172.16.79.3      # 用于集群内各机器间通信,对外使用,其他机器访问本机器的es服务,一般为本机宿主机IP
      - discovery.seed_hosts=172.16.79.1,172.16.79.2,172.16.79.3        # es7.0之后新增的写法,写入候选主节点的设备地址,在开启服务后,如果master挂了,哪些可以被投票选为主节点
      - cluster.initial_master_nodes=es01  # es7.0之后新增的配置,初始化一个新的集群时需要此配置来选举master
      - cluster.name=es-cluster-prod     # 集群名称,相同名称为一个集群, 三个es节点须一致
      - bootstrap.memory_lock=true  # 内存交换的选项,官网建议为true
      - node.master=true
      - node.data=true
      - http.port=9200
      - transport.tcp.port=9300
      - "ES_JAVA_OPTS=-Xms2g -Xmx2g" # 设置内存,如内存不足,可以尝试调低点
    ulimits:        # 栈内存的上限
      memlock:
        soft: -1    # 不限制
        hard: -1    # 不限制
    volumes:
      - ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml  # 将容器中es的配置文件映射到本地,设置跨域, 否则head插件无法连接该节点
      - ./data:/usr/share/elasticsearch/data  # 存放数据的文件
      - ./logs:/usr/share/elasticsearch/logs  #存放日志文件
      - ./elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12 #存放证书, 证书生成请自行查阅
    ports:
      - 9200:9200    # http端口,可以直接浏览器访问
      - 9300:9300    # es集群之间相互访问的端口,jar之间就是通过此端口进行tcp协议通信,遵循tcp协议。
    networks:
      - elk
networks:
  elk:
    driver: bridge
    ```

### 启动容器
三台机器上执行,docker-compose up -d

到了这里,关于通过helm方式安装elasticsearch 7.17.3的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java SpringBoot API 实现ES(Elasticsearch)搜索引擎的一系列操作(超详细)(模拟数据库操作)

    小编使用的是elasticsearch-7.3.2 基础说明: 启动:进入elasticsearch-7.3.2/bin目录,双击elasticsearch.bat进行启动,当出现一下界面说明,启动成功。也可以访问http://localhost:9200/ 启动ES管理:进入elasticsearch-head-master文件夹,然后进入cmd命令界面,输入npm run start 即可启动。访问http

    2024年02月04日
    浏览(54)
  • 使用Logstash同步mysql数据到Elasticsearch(亲自踩坑)_将mysql中的数据导入es搜索引擎利用logstash(1)

    先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7 深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前! 因此收集整理了一份《2024年最新大数据全套学习资料》,

    2024年04月28日
    浏览(49)
  • ElasticSearch内容分享(四):ES搜索引擎

    目录 ES搜索引擎 1. DSL设置查询条件 1.1 DSL查询分类 1.2 全文检索查询 1.2.1 使用场景 1.2.2 match查询 1.2.3 mulit_match查询 1.3 精准查询 1.3.1 term查询 1.3.2 range查询 1.4 地理坐标查询 1.4.1 矩形范围查询 1.4.2 附近(圆形)查询 1.5 复合查询 1.5.0 复合查询归纳 1.5.1 相关性算分 1.5.2 算分函数查

    2024年02月05日
    浏览(49)
  • elasticsearch(ES)分布式搜索引擎03——(RestClient查询文档,ES旅游案例实战)

    文档的查询同样适用昨天学习的 RestHighLevelClient对象,基本步骤包括: 1)准备Request对象 2)准备请求参数 3)发起请求 4)解析响应 我们以match_all查询为例 3.1.1.发起查询请求 代码解读: 第一步,创建 SearchRequest 对象,指定索引库名 第二步,利用 request.source() 构建DSL,DSL中可

    2024年02月07日
    浏览(49)
  • 入门ElasticSearch :为什么选择ES作为搜索引擎?

    随着数据量的不断增长,搜索和分析大规模数据集变得越来越重要。传统数据库在面对这种需求时往往表现不佳,这时候就需要一种专门用于搜索和分析的引擎。ElasticSearch (简称ES)就是这样一款强大的搜索引擎,它具有许多优势,使得它成为许多企业和开发者的首选。 简

    2024年02月09日
    浏览(46)
  • Elasticsearch (ES) 搜索引擎: 搜索功能:搜索分页、搜索匹配、全文搜索、搜索建议、字段排序

    原文链接:https://xiets.blog.csdn.net/article/details/132348920 版权声明:原创文章禁止转载 专栏目录:Elasticsearch 专栏(总目录) ES 搜索 API 官网文档:Search APIs 先创建一个索引,并写入一些文档用于搜索示例: 写入一些文档示例: 官网API:The _source option 搜索结果中的文档数据封装

    2024年02月08日
    浏览(50)
  • 搜索引擎ElasticSearch分布式搜索和分析引擎学习,SpringBoot整合ES个人心得

    Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,

    2024年02月04日
    浏览(69)
  • elasticsearch(ES)分布式搜索引擎01——(初识ES,索引库操作和文档操作,RestClient操作索引库和文档)

    1.1.1.elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容 1.1.2.ELK技术栈 elasticsearch结合kibana、Logstash、Beats,也就是elastic stack(ELK)。被广泛应用在日志数据分析、实时监控等领域: 而elasticsearc

    2024年02月07日
    浏览(60)
  • Elasticsearch (ES) 搜索引擎: 文本搜索:分析器/分词器、同义词/停用词、拼音搜索、高亮显示、拼写纠错

    原文链接:https://xiets.blog.csdn.net/article/details/132349032 版权声明:原创文章禁止转载 专栏目录:Elasticsearch 专栏(总目录) 文本搜索主要指的就是全文搜索,全文搜索是搜索引擎的核心功能,与精确匹配的结构化数据不同,文本(text)数据在构建索引和搜索时都需要进行额外的处

    2024年02月03日
    浏览(55)
  • 【搜索引擎2】实现API方式调用ElasticSearch8接口

    1、理解ElasticSearch各名词含义 ElasticSearch对比Mysql Mysql数据库 Elastic Search Database 7.X版本前有Type,对比数据库中的表,新版取消了 Table Index Row Document Column mapping Elasticsearch是使用Java开发的,8.1版本的ES需要JDK17及以上版本;es默认带有JDK,如果安装es环境为java8,则会默认使用自带

    2024年04月17日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包