docker 安装 elasticsearch 入门

一 基本概念

index (索引)

动词,相当于Mysql中的insert
名词,相当于Mysql中的Database

Type (类型)

在index(索引)中,可以定义一个或者多个类型。
类似于mysql 中的 table;每一种类型的数据放在一起。

Document (文档)

保存在某个 Index(索引)下,某种 Type(类型)的一个数据,Document(文档)是JSON格式的,Document 就像是 MySQL 中某个 Table 里面每一行的数据,字段就是Document里的属性。

在这里插入图片描述

倒排索引(多维护一张索引表)

在这里插入图片描述

docker 安装

docker pull elasticsearch:7.4.2  存储和检索数据
docker pull kibana:7.4.2      //可视化界面

配置数据挂载卷


# 创建配置文件目录
mkdir -p /mydata/elasticsearch/config

# 创建数据目录
mkdir -p /mydata/elasticsearch/data

# 将/mydata/elasticsearch/文件夹中文件都可读可写
chmod -R 777 /mydata/elasticsearch/

# 配置任意机器可以访问 elasticsearch
echo "http.host: 0.0.0.0" >/mydata/elasticsearch/config/elasticsearch.yml

启动Elasticsearch

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e  "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx512m" \
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \
-v  /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.4.2 
-p 9200:9200 -p 9300:9300:向外暴露两个端口,9200用于HTTP REST API请求,9300 ES 在分布式集群状态下 ES 之间的通信端口;
-e  "discovery.type=single-node":es 以单节点运行
-e ES_JAVA_OPTS="-Xms64m -Xmx512m":设置启动占用内存,不设置可能会占用当前系统所有内存
-v:挂载容器中的配置文件、数据文件、插件数据到本机的文件夹;
-d elasticsearch:7.6.2:指定要启动的镜像

访问服务器的9200 地址 (出现以下结果说名成功)

在这里插入图片描述

设置开机自启

docker update elasticsearch --restart=always

设置Kibana连接

docker run --name kibana \
-e ELASTICSEARCH_HOSTS=http://192.168.10.220:9200 \
-p 5601:5601 \
-d kibana:7.4.2

如果有多个网卡可能会出下链接不上

docker logs kibana 查看日志在这里插入图片描述
解决办法:执行查看ES内网IP地址

 docker inspect elasticsearch  |grep IPAddress

在这里插入图片描述

访问 http://192.168.10.220:5601/ 出现下面成功

docker update kibana --restart=always 设置开机自启

在这里插入图片描述

常用命令 _cat (都是get请求)

_cat/nodes  -- 查看所有节点
_cat/master  -- 查看主节点信息
_cat/health  -- 查看es的健康状况
_cat/indices -- 查看所有索引

在这里插入图片描述
这里就不 演示所有的了

新添加一条数据(PUT带上ID就是更新(必须带上ID) , POST(可以不带ID 不带就是插入,带上多次提交就是更新)不带就是插入)

在这里插入图片描述

获取上一步插入的数据 GET请求

http://192.168.10.220:9200/customer/external/1

在这里插入图片描述

{
    "_index": "customer", //在那个索引
    "_type": "external", //在那个类型
    "_id": "1", //记录id
    "_version": 1, //版本号
    "_seq_no": 0, //并发控制字段,每次更新就会加一,用来做乐观锁。
    "_primary_term": 1, //主分片重新分配就会变化
    "found": true,
    "_source": { //存储的类容
        "name": "xiaoke"
    }
}

更新数据
put 总是更新 叠加版本号
post 总是更新 叠加版本号
post带_update(对比版本 没有更新时不会叠加版本号)

post带_update
在这里插入图片描述
post 不带 _update
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值