ES集群搭建(docker版本,亲测)

Stella981
• 阅读 714

ES集群搭建(docker版本,亲测)

作者:星晴(当地小有名气,小到只有自己知道的杰伦粉)

作为现在主流的分布式搜索服务,是时候来掌握它了?今天我们来一步一步学习它,es集群服务本文采用docker安装方式,很多人会问我为什么直接采用官网推荐方式搭建,主要我不是专业运维,不想花太多时间吧(其实我也会哦,只是麻烦,需要的可以联系我)。

1.拉去ES镜像(服务A、服务B)

docker pull elasticsearch:6.7.1

2.创建目录(服务A、服务B)

mkdir -p /ES/config #挂载配置文件mkdir -p /ES/plugins #挂载存放分词插件mkdir -p /ES/data #挂载数据chmod -R 777 /ES

3.配置es.yml(服务A、服务B)

cd /ES/configvim es.yml

es.yml (服务A)

cluster.name: elasticsearch-clusternode.name: es-node1network.bind_host: 0.0.0.0network.publish_host: 192.168.91.66http.port: 9200transport.tcp.port: 9300http.cors.enabled: truehttp.cors.allow-origin: "*"node.master: truenode.data: true  discovery.zen.ping.unicast.hosts: ["192.168.91.66:9300","192.168.91.66:930"]discovery.zen.minimum_master_nodes: 1

es.yml(服务B)

cluster.name: elasticsearch-clusternode.name: es-node1network.bind_host: 0.0.0.0network.publish_host: 192.168.91.66http.port: 9200transport.tcp.port: 9300http.cors.enabled: truehttp.cors.allow-origin: "*"node.master: truenode.data: true  discovery.zen.ping.unicast.hosts: ["192.168.91.66:9300","192.168.91.66:9300"]discovery.zen.minimum_master_nodes: 1

4.elasticsearch用户拥有的内存权限太小,至少需要262144

在/etc/sysctl.conf文件最后添加一行

vm.max_map_count=262144

4.启动docker(服务A、服务B)

docker run -e -d -p 9200:9200 -p 9300:9300 -v  /ES/config/es.yml:/usr/share/elasticsearch/config/elasticsearch.yml  -v /ES/plugins:/usr/share/elasticsearch/plugins -v /ES/data:/usr/share/elasticsearch/data --name ES01 e2667f5db289

判断是否集群搭建成功:http://192.168.0.182:9200/\_cat/nodes

5.安装Ik中文分词器

https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v6.7.1 下载

解压到挂载插件目录cd /ES/plugins/mkdir ikcd ik/unzip elasticsearch-analysis-ik-6.7.1.zip

重启es

#在kibana的devTools的console输入:POST _analyze{"analyzer":"ik_max_word","text": "中华人民共和国人民大会堂"}分词了说明成功了

6.拉去kibana

docker pull kibana:6.7.1

6.运行kibana

docker run --name tlkiba -e ELASTICSEARCH_HOSTS=http://当前服务器ip:9200 -e SERVER_PORT=5601  -e SERVER_HOST=0.0.0.0 -p 5601:5601 -d 7f92ab934206

访问地址:http://192.168.0.182:5601

7.安装head插件

docker pull mobz/elasticsearch-head:5docker run -d -p 9100:9100 docker.io/mobz/elasticsearch-head:5

访问地址:http://192.168.0.182:9100

后续会贴上生产环境的代码如何使用es......

关注公众号,有很多好玩的等着你!!!

ES集群搭建(docker版本,亲测)

本文分享自微信公众号 - 喜欢奶茶的星晴(code-1984)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Karen110 Karen110
3年前
​一篇文章总结一下Python库中关于时间的常见操作
前言本次来总结一下关于Python时间的相关操作,有一个有趣的问题。如果你的业务用不到时间相关的操作,你的业务基本上会一直用不到。但是如果你的业务一旦用到了时间操作,你就会发现,淦,到处都是时间操作。。。所以思来想去,还是总结一下吧,本次会采用类型注解方式。time包importtime时间戳从1970年1月1日00:00:00标准时区诞生到现在
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
为什么mysql不推荐使用雪花ID作为主键
作者:毛辰飞背景在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这