使用Docker-compose 搭建 Elasticsearch 集群服务
Elasticsearch是一个开源的分布式搜索和分析引擎,用于处理大规模数据集。它构建在Apache Lucene搜索引擎库之上,提供了强大的全文搜索、实时数据分析和可扩展性。
以下是Elasticsearch的一些关键特点和常见使用场景:
1、强大的搜索功能:Elasticsearch提供了全文搜索、近实时搜索和复杂的查询功能。它支持全文索引和检索,并且可以进行模糊匹配、词条搜索、短语搜索等各种高级搜索操作。
2、实时数据分析:Elasticsearch具有实时数据索引和分析的能力。它可以处理大规模的数据集,支持聚合操作、数据可视化和复杂的数据分析任务。它还可以与Kibana等工具集成,实现强大的数据可视化和监控功能。
3、分布式架构:Elasticsearch是一个分布式系统,可以水平扩展以处理大规模数据。它使用分片和复制机制实现数据的高可用性和负载均衡。这使得它可以在大型集群中存储和处理海量数据,并实现快速的搜索和分析。
4、多种数据类型支持:Elasticsearch支持多种数据类型的索引和查询,包括文本、数值、地理位置等。它还提供了丰富的分析器和过滤器,用于处理各种语言和特殊数据类型的索引和搜索需求。
5、日志和监控:Elasticsearch被广泛用于处理日志数据和实时监控。它可以接收、索引和搜索大量的日志数据,并提供强大的实时监控和报警功能。通过与Logstash和Beats等工具的集成,可以构建完整的日志处理和分析解决方案。
6、搜索引擎和电子商务:Elasticsearch在搜索引擎和电子商务领域有广泛的应用。它可以实现产品搜索、推荐系统、相关性排序等功能,提供快速和准确的搜索结果。
总的来说,Elasticsearch适用于需要快速、可扩展、实时搜索和分析大规模数据的场景,包括日志处理、监控、搜索引擎、电子商务等各种应用。它的强大功能和灵活性使得它成为了很多企业和开发者的首选搜索和分析引擎。
部署 Elasticsearch Docker-Compose.yml 文件内容
version: '2.2' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:6.4.2 container_name: elasticsearch environment: - cluster.name=docker-cluster - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m -Des.scripting.exception_for_missing_value=true" - http.cors.enabled=true - http.cors.allow-origin=* - discovery.zen.minimum_master_nodes=2 ulimits: memlock: soft: -1 hard: -1 volumes: - esdata1:/usr/share/elasticsearch/data ports: - 9200:9200 networks: - esnet elasticsearch2: image: docker.elastic.co/elasticsearch/elasticsearch:6.4.2 container_name: elasticsearch2 environment: - cluster.name=docker-cluster - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m -Des.scripting.exception_for_missing_value=true" - "discovery.zen.ping.unicast.hosts=elasticsearch" - http.cors.enabled=true - http.cors.allow-origin=* - discovery.zen.minimum_master_nodes=2 ulimits: memlock: soft: -1 hard: -1 volumes: - esdata2:/usr/share/elasticsearch/data networks: - esnet elasticsearch3: image: docker.elastic.co/elasticsearch/elasticsearch:6.4.2 container_name: elasticsearch3 environment: - cluster.name=docker-cluster - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms512m -Xmx512m -Des.scripting.exception_for_missing_value=true" - "discovery.zen.ping.unicast.hosts=elasticsearch" - http.cors.enabled=true - http.cors.allow-origin=* - discovery.zen.minimum_master_nodes=2 ulimits: memlock: soft: -1 hard: -1 volumes: - esdata3:/usr/share/elasticsearch/data networks: - esnet kibana: image: 'docker.elastic.co/kibana/kibana:6.4.2' container_name: kibana environment: SERVER_NAME: kibana.local ELASTICSEARCH_URL: http://elasticsearch:9200 ports: - '5601:5601' networks: - esnet headPlugin: image: 'mobz/elasticsearch-head:5' container_name: head ports: - '9100:9100' networks: - esnet volumes: esdata1: driver: local esdata2: driver: local esdata3: driver: local networks: esnet:
完成上述操作后,您通过docker-compose up -d 就可以开启您的 ES使用之旅了。
参考
本文来自 上海志彦,作者:上海志彦,转载请注明原文链接:https://www.cnblogs.com/pmo-sh/p/docker-compose-for-elasticsearch-cluster-big-data.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)