一、集群环境搭建1、环境概览ES版本6.3.2,集群名称esmaster,虚拟机centos7 。
文章插图
ElasticSearch基础功能和用法:
- MySQL数据全量和增量方式向ES搜索引擎同步
- Linux系统Centos7环境搭建ElasticSearch中间件
- SpringBoot2整合ElasticSearch搜索引擎框架
2、集群配置配置文件
vim /opt/elasticsearch-6.3.2/config/elasticsearch.yml
文章插图
主节点配置
# 集群主节点配置cluster.name: esmasternode.master: true# 节点名称 node.name: esnode1# 开发访问network.host: 0.0.0.0
从节点配置【数据源管理 | 搜索引擎框架,ElasticSearch集群模式】注意这里两个从节点配置,node.name分别配置为esnode2和esnode3即可 。
# 集群名称cluster.name: esmaster# 节点名称node.name: esnode2# 开发访问network.host: 0.0.0.0# 主节点IPdiscovery.zen.ping.unicast.hosts: ["192.168.72.133"]
内存权限vim /etc/sysctl.conf# 添加内容vm.max_map_count=262144# 执行sysctl -p
3、集群启动添加esroot用户,并授权 。/opt/elasticsearch-6.3.2/bin/elasticsearch
单服务查看ps -aux |grep elasticsearch
集群状态查看http://localhost:9200/_cluster/health?pretty{"cluster_name" : "esmaster",# 集群名称"status" : "green",# 绿:健康,黄:亚健康,红:病态"timed_out" : false,# 是否超时"number_of_nodes" : 3, # 节点个数}
二、集群模式测试1、环境配置dev环境配置单个节点,选择任意单节点,进行数据写入测试 。
spring:data:elasticsearch:# 集群名称cluster-name: esmaster# 单节点# cluster-nodes: en-master:9300# cluster-nodes: en-node01:9300cluster-nodes: en-node02:9300
test环境链接集群环境,进行数据读取测试 。
spring:data:elasticsearch:# 集群名称cluster-name: esmaster# 集群节点cluster-nodes: en-master:9300,en-node01:9300,en-node02:9300
当然所有的操作都可以基于单节点或者集群环境测试 。2、实例对象基于注解管理数据对象实例 。
import org.springframework.data.annotation.Id;import org.springframework.data.elasticsearch.annotations.Document;@Document(indexName = "usersearchindex",type = "usersearch")public class UserSearch {//Id注解Elasticsearch里相应于该列就是主键,查询时可以使用主键查询@Idprivate Long id;private String userId;private String userName;private String sex;}
3、操作案例提供一个数据查询操作和数据写入操作 。import com.esearch.cluster.entity.UserSearch;import org.springframework.stereotype.Service;import JAVAx.annotation.Resource;@Servicepublic class UserSearchServiceImpl implements UserSearchService {@Resourceprivate UserSearchRepository userSearchRepository ;@Overridepublic String esInsert(Integer num) {for (int i = 0 ; i < num ; i++){UserSearch userSearch = new UserSearch() ;userSearch.setId(System.currentTimeMillis());userSearch.setUserId("Name"+i);userSearch.setUserName("ZSan"+i);userSearch.setSex("Male"+i);userSearchRepository.save(userSearch) ;}return "success" ;}@Overridepublic Iterable<UserSearch> esFindAll (){return userSearchRepository.findAll() ;}}
三、集群控制台这里是基于Kibana组件做的集群控制台 。1、数据列表在discover面板中可以查看列表数据,也可以继续搜索 。
列表查询
文章插图
列表搜索
文章插图
2、开发工具在dev_tools面板中可以执行ElasticSearch相关命令 。
查看集群健康状态
GET /_cat/health?v
文章插图
查询全部数据
GET _search{"query": {"match_all": {}}}
文章插图
推荐阅读
- 改进管理方法,云南欧盟有机标准滇红云丝
- 仓储物流管理细则 仓储的重要性
- tracert命令详解
- 分布式爬虫管理平台Crawlab开发搭建
- 网吧无盘技术无盘服务器管理系统使用手册
- 交管12123怎么取消缴费?
- 淘宝特价版商家规则 天猫预售业务管理规范
- 大棚茶叶栽培管理技术,加强茶园冬季管理
- Webapi管理和性能测试工具WebBenchmark
- 仓库库存如何管理 如何库存管理