第一章 docker安装ElasticSearch7

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

1 安装ES7

1.1 设置jvm线程数限制

#修改sysctl.conf
vi /etc/sysctl.conf
#修改max_map_count调大,如果没有这个设置,则新增一行
vm.max_map_count=262144
#改完保存后, 执行下面命令让sysctl.conf文件生效
sysctl -p

1.2 创建挂载目录

  • 为了防止容器删掉数据丢失,需要进行数据文件挂载
#创建es配置目录
mkdir /home/es/config -p
#创建es数据目录
mkdir /home/es/data 
#创建es插件目录
mkdir /home/es/plugins
#授权目录
chmod -R 777 /home/es
  • /home/es/config目录下创建配置文件 elasticsearch.yml 注意:配置冒号后面都有一个空格
  • 单机配置文件内容:
network.host: 0.0.0.0
network.publish_host: 192.168.101.157
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
# ======================== Elasticsearch Configuration =========================
# 配置es的集群名称,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群
cluster.name: elasticsearch
# 节点名称
node.name: node-1
# 指定该节点是否有资格被选举成为node
node.master: true
# 指定初始主节点
cluster.initial_master_nodes: ["172.16.2.84:9300"]
# 指定该节点是否存储索引数据,默认为true
node.data: true
# 设置绑定的ip地址还有其他节点和该节点交换的ip地址,本机ip
network.host: 0.0.0.0
network.publish_host: 172.16.2.84
# 指定http端口
http.port: 9200
# 设置节点间交互的tcp端口,默认是9300
transport.tcp.port: 9300
# 设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
discovery.zen.ping.unicast.hosts: ["172.16.2.84:9300","172.16.2.84:9300","172.16.2.85:9300"]
# 如果要使用head,那么需要解决跨域问题,使head插件可以访问es
http.cors.enabled: true
http.cors.allow-origin: "*"
  • 集群方式其他节点/home/es/config目录下创建配置文件 elasticsearch.yml
# ======================== Elasticsearch Configuration =========================
# 配置es的集群名称,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群
cluster.name: elasticsearch
# 节点名称
node.name: node-2
# 指定该节点是否有资格被选举成为node
node.master: true
# 指定初始主节点
cluster.initial_master_nodes: ["172.16.2.84:9300"]
# 指定该节点是否存储索引数据,默认为true
node.data: true
# 设置绑定的ip地址还有其他节点和该节点交换的ip地址,本机ip
network.host: 0.0.0.0
network.publish_host: 172.16.2.85
# 指定http端口
http.port: 9200
# 设置节点间交互的tcp端口,默认是9300
transport.tcp.port: 9300
# 设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
discovery.zen.ping.unicast.hosts: ["172.16.2.84:9300","172.16.2.85:9300","172.16.2.85:9300"]
# 如果要使用head,那么需要解决跨域问题,使head插件可以访问es
http.cors.enabled: true
http.cors.allow-origin: "*"

1.3 创建ES容器

  1. 拉取镜像
docker pull elasticsearch:7.16.3
  1. 启动容器
  • 单机启动
docker run --restart=always -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -d --name es7.16.3 -p 9200:9200 -p 9300:9300 -v /home/es/data:/usr/share/elasticsearch/data -v /home/es/plugins:/usr/share/elasticsearch/plugins -v /home/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml elasticsearch:7.16.3
# 参数: 
-e ES_JAVA_OPTS="-Xms512m -Xmx512m"  因为测试机器,把内存设为512m
-e "discovery.type=single-node"  单机启动
-d 后台运行
--name 给启动的容器起名称
-p 9200:9200 -p 9300:9300 映射docker的端口,9200是http的端口,9300是内部通讯的端口
-v 目录挂载
elasticsearch:7.16.3  es镜像名称,用这个镜像启动为容器
  • 可以安装head插件 扩展市场

2 安装kibana

2.1 拉取镜像

docker pull kibana:7.16.3

2.2 创建并配置文件

mkdir -p /home/kibana/config
vi kibana.yml
  • kibana.yml内容
server.name: kibana
server.host: "0"
elasticsearch.hosts: ["http://IP:9200"]
xpack.monitoring.ui.container.elasticsearch.enabled: true
monitoring.ui.container.elasticsearch.enabled: true

2.3 启动kibana容器

docker run --restart=always --name kibana716 -v /home/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml -p 5601:5601 -d kibana:7.16.3

3 使用kibana的Dev tools简单操作

3.1 创建索引

建立搜索数据集的对象,即建立索引

PUT /hotol
{
  "mappings":{
    "properties":{
      "title":{
        "type":"text"
      },
      "city":{
        "type":"keyword"
      },
      "price":{
        "type":"double"
      }
    }
  }
}

3.2 查询索引

GET /_cat/indices

3.3 删除指定索引

DELETE 索引名

3.4 写入文档

在索引中填充一些数据,创建了一条ID为001的文档

POST /hotol/_doc/001
{
  "title":"大富豪酒店",
  "city":"长春",
  "price":680.0
}

3.5 根据_id搜索文档

GET /hotol/_doc/001

3.6 根据一般字段搜索文档

query子句可以按照需求填充查询项。假设按照城市进行搜索,把酒店文档搜索出来。因为只需要进行文本是否相等的判断,所以需要用到term搜索文章来源地址https://www.toymoban.com/news/detail-402372.html

GET /hotol/_search
{
  "query": {
    "term": {
      "city": {
        "value": "长春"
      }
    }
  }
}
  • 查询结果
{
  "took" : 1,
  "timed_out" : false,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : {   // 命中文档总数
      "value" : 1,
      "relation" : "eq"
    },
    "max_score" : 0.2876821, //命中文档最高得分
    "hits" : [
      {
        "_index" : "hotol",     //命中文档所在索引
        "_type" : "_doc",
        "_id" : "001",              //命中文档ID
        "_score" : 0.2876821, //命中文档分值
        "_source" : {     //命中文档内容
          "title" : "大富豪酒店",
          "city" : "长春",
          "price" : 680.0
        }
      }
    ]
  }
}

3.7 对某个字段进行模糊匹配

GET /hotol/_search
{
  "query": {
    "match": {
      "title": "富"
    }
  }
}

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

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

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

相关文章

  • ElasticSearch第一章(入门介绍)

    ElasticSearch(弹性搜索),简称ES。 ES是一个分布式,RESTFul风格的搜索和数据分析引擎 ,能够解决不断涌现出的各种用例。作为 Elastic Stack(Elastic技术栈简称ELK) 的核心,Elasticsearch 会集中存储您的数据,让您飞快完成搜索,微调相关性,进行强大的分析,并轻松缩放规模。 我

    2024年02月22日
    浏览(43)
  • ElasticSearch第一讲 Docker-compose 单机部署Elasticsearch kibana esHead与配置认证证书设置密码

    docker安装 docker-compose安装配置,如果还有没安装docker的可以参考我的docker/docker-compose安装配置 本次讲解的是安装ES 7.13.3 现在目前官网给出的最新ES版本已经是8.x了,ElasticSearch官网:https://www.elastic.co/guide/index.html 好了长话短说,我们直接上docker配置文件,对于一些配置文件和数

    2024年02月03日
    浏览(49)
  • Elasticsearch7.x——设置用户密码认证

    然后重启服务 接下来,我们需要启用X-Pack Security。这样才能对Elasticsearch进行更加全面的安全加固。具体操作如下: 在执行以上命令后,我们会收到弹出框提示。根据提示输入启用密码后,可以开始设置各种角色的密码,包括 elastic,apm_system,kibana,kibana_system,logstash_syste

    2024年02月04日
    浏览(45)
  • elasticsearch7设置用户名和密码

    windows ,elasticsearch 在elasticsearch.yml中添加 xpack.security.enabled: true xpack.security.transport.ssl.enabled: true 在es的bin目录下命令行执行:elasticsearch-setup-passwords interactive   curl -H \\\"Content-Type:application/json\\\" -XPOST -u elastic \\\'http://127.0.0.1:9200/_xpack/security/user/elastic/_password\\\' -d \\\'{ \\\"password\\\" : \\\"123456\\\" }\\\' 修

    2024年02月12日
    浏览(55)
  • elasticsearch7.x 集群的搭建和分片设置

    目录   一、es集群的基本核心概念 二、es集群搭建 三、es集群索引分片管理 3.1创建索引,指定分片  3.2索引分片的分配 3.2.1 手动移动分片:  3.2.1 修改副分片数量 Cluster 集群: 一个 Elasticsearch 集群由一个或多个节点(Node)组成,每个集群都有一个共同的集群名称作为 标识。

    2023年04月25日
    浏览(50)
  • 全文检索工具elasticsearch:第一章:理论知识

    cluster 整个elasticsearch 默认就是集群状态,整个集群是一份完整、互备的数据。 node 集群中的一个节点,一般只一个进程就是一个node shard 分片,即使是一个节点中的数据也会通过hash算法,分成多个片存放,默认是5片。 index 相当于rdbms的database, 对于用户来说是一个逻辑数据库

    2024年04月16日
    浏览(48)
  • Elasticsearch7.7设置账号密码时的逻辑矛盾问题

            2019年1月30日,外媒又报道了一起Elasticsearch数据泄露事件!2019年1月份的至少有6起Elasticsearch数据泄露事件了。原因何在,很简单,开发者在服务启动之后总是懒得去修改,哪怕是添加个密码,不信?你去看看你们公司的REDIS服务器,看看有多少设置了密码,至少我

    2024年02月11日
    浏览(60)
  • docker compose搭建elasticsearch7集群

    一、集群介绍 系统环境:Centos7.5 服务器节点: 主机名 IP hadoop03 192.168.1.153 hadoop04 192.168.1.154 hadoop05 192.168.1.155 二、环境准备 1、安装docker:略过 2、安装docker compose 1)使用官方推荐方式(此方式需服务器翻外网) 2)自行下载         由于服务器连不上Github,因此手动下载

    2024年02月03日
    浏览(59)
  • docker部署Elasticsearch7.17集群和kibana

    环境准备: 3台centos7.9的服务器 vim /etc/sysctl.conf添加:vm.max_map_count=262144 sysctl -w vm.max_map_count=262144 即时生效 cat /proc/sys/vm/max_map_count 查看 #创建es配置目录 mkdir /home/es/config -p #创建es数据目录 mkdir /home/es/data #创建es插件目录 mkdir /home/es/plugins #授权目录 chmod -R 777 /home/es 在/home/e

    2024年02月10日
    浏览(51)
  • 【第一章】docker镜像管理

    云计算涌现出很多改变传统IT架构和运维方式的新技术,比如虚拟机、容器、微服务、Serverless(无服务),无论这些技术应用在哪些场景,降低成本、提升效率是云服务永恒的主题 1.运行物理机,也称为裸金属 2.虚拟机VM,可以在一台物理机上创建多个虚拟机,并把物理配置

    2024年01月17日
    浏览(29)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包