搭建Elastic search群集

news/2024/12/26 2:53:57/

一、实验环境

二、实验步骤

  • Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎
  • Elasticsearch目录文件:

/etc/elasticsearch/elasticsearch.yml#配置文件

/etc/elasticsearch/jvm.options#java虚拟机

/etc/init.d/elasticsearch#服务启动脚本

/etc/sysconfig/elasticsearch#elasticsearch服务变量

/usr/lib/sysctl.d/elasticsearch.conf#设置elasticsearch用户使用的内存大小

/usr/lib/systemd/system/elasticsearch.service  #添加系统服务文件

/var/log/elasticsearch/elasticsearch.log #日志文件路径

  • Elasticsearch群集状态颜色:

灰色:未连接

绿色:数据完整态

黄色:副本不完整

红色:数据分片不完整

紫色:数据分片复制过程

  • 群集主机角色:

主节点master:负责管理调度

工作节点:   负责处理数据

默认情况,所有节点都是工作节点,即主节点也处理数据

1、安装Elasticsearch(Elasticsearch1、Elasticsearch2、Elasticsearch3)

需要jdk Java环境

java -version

elasticsearch-6.6.0包拖入

rpm -ivh elasticsearch-6.6.0.rpm

2、创建数据目录并修改权限(Elasticsearch1、Elasticsearch2、Elasticsearch3)

mkdir -p /data/elasticsearch

chown -R elasticsearch.elasticsearch /data/elasticsearch/

3、修改配置文件

Elasticsearch1:

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

     

Elasticsearch2:

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

     

Elasticsearch3:

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

 

4、启动Elasticsearch(Elasticsearch1、Elasticsearch2、Elasticsearch3)

启动需要等待才能看到端口

systemctl daemon-reload

systemctl start elasticsearch

netstat -anpt | grep 9200

5、上传扩展工具(win10)

将es-head.crx文件夹拖入win10桌面

打开微软浏览器

选择扩展

 

6、创建索引(win10)

 

刷新浏览器页面

发现进行了分片处理

7、删除索引(win10)

8、将第二台主机添加到群集(Elasticsearch2)

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

systemctl restart elasticsearch

netstat -anpt | grep 9200

9、将第三台主机添加到群集(Elasticsearch3)

vim /etc/elasticsearch/elasticsearch.yml

修改添加:

systemctl restart elasticsearch

netstat -anpt | grep 9200

10、创建索引(win10)

 

刷新浏览器页面

粗框为主分片,细框为副分片

11、群集管理监控命令

1)查看索引信息(Elasticsearch1)

curl -XGET '192.168.8.5:9200/_cat/indices?pretty'

2)查看群集健康状态(Elasticsearch1)

curl -XGET '192.168.8.5:9200/_cluster/health?pretty'

3)统计群集节点(Elasticsearch1)

curl -XGET '192.168.8.5:9200/_cat/nodes?human&pretty'

4)查看群集所有节点详细信息(Elasticsearch1)

curl -XGET '192.168.8.5:9200/_nodes/_all/info/jvm.process?human&pretty'

5)使用命令创建索引vipinfo、类型user、序号1、数据部分……

Elasticsearch1:

curl -XPUT '192.168.8.5:9200/vipinfo/users/1?pretty&pretty' -H 'Content-Type: application/json' -d '{"name": "liudehua","age": "60","job": "mingxing"}'

curl -XPUT '192.168.8.5:9200/vipinfo/users/2?pretty&pretty' -H 'Content-Type: application/json' -d '{"name": "guofucheng","age": "61","job": "mingxing"}'

win10:

刷新浏览器页面

查看写入的内容

6)使用命令创建索引index1,修改分片为3、副本为2

Elasticsearch1:

curl -XPUT 192.168.8.5:9200/index1  -H 'Content-Type: application/json' -d '{

"settings" : {

"index" : {

"number_of_shards" : 3,

"number_of_replicas" : 2

}

}

}'

win10:

刷新浏览器页面

7)使用命令将索引index1的副本数从2改为1

注:已经存在的索引,不能修改分片数,只能修改副本数

Elasticsearch1:

curl -XPUT '192.168.8.5:9200/index1/_settings?pretty'  -H 'Content-Type: application/json' -d '{

"settings": {

"number_of_replicas": "1"

}

}'

win10:

刷新浏览器页面


http://www.ppmy.cn/news/1557843.html

相关文章

【Django开发】前后端分离django美多商城项目第11篇:商品数据库表设计,1. SPU介绍【附代码文档】

本教程的知识点为: 项目准备 项目准备 配置 1. 修改settings/dev.py 文件中的路径信息 2. INSTALLED_APPS 3. 数据库 用户部分 图片 1. 后端接口设计: 视图原型 2. 具体视图实现 用户部分 使用Celery完成发送 判断帐号是否存在 1. 判断用户名是否存在 后…

分布式爬虫scrapy-redis

Scrapy 爬虫,虽然爬虫是异步加多线程的,但是我们只能在一台主机上运行,所以爬取效率还是有限的,分布式爬虫则是将多台主机组合起来,共同完成一个爬取任务,这将大大提高爬取的效率。 分布式爬虫解决的问题1:爬虫任务共享 所谓分布式爬虫,我们需要做的就是在多台主机上…

Day1 苍穹外卖前端 Vue基础、Vue基本使用方式、Vue-router、Vuex、TypeScript

目录 1.VUE 基础回顾 1.1 基于脚手架创建前端工程 1.1.1 环境要求 1.1.2 脚手架创建项目 1.1.3 工程结构 1.1.4 启动前端服务 1.2 vue基本使用方式 1.2.1 vue 组件 1.2.2 文本插值 1.2.3 属性绑定 1.2.4 事件绑定 1.2.5 双向绑定 1.2.6 条件渲染 1.2.7 跨域问题 1.2.8 axios 1.…

Excel中match()函数

函数功能概述 MATCH 函数是 Excel 中用于在指定区域中查找特定值的位置的函数。它返回指定数值在指定数组区域中的位置。这个位置是相对于查找区域的相对位置,而不是绝对的单元格位置。语法结构 MATCH(lookup_value, lookup_array, match_type)lookup_value&#xf…

WebRTC服务质量(08)- 重传机制(05) RTX机制

一、前言: RTX协议(Retransmission,即重传协议)是 WebRTC 中用于处理丢包恢复的一部分。由于网络通信中的丢包不可避免,WebRTC RTP协议栈支持多种丢包恢复机制,其中之一便是通过RTX协议实现的重传机制。 …

Spring Cloud OpenFeign快速入门demo

一、应用场景 Spring Cloud OpenFeign 是一个声明式的 HTTP 客户端,旨在简化微服务之间的通信。它使得开发者能够通过简单的接口定义和注解来调用 RESTful API,极大地减少了样板代码。以下是一些典型的应用场景: 微服务间调用:在…

小程序 - 模拟时钟

微信小程序常用API练习 - 模拟时钟小程序开发笔记 模拟时钟 “模拟时钟”微信小程序是一个简约风格的动态时钟,该时钟时间与系统时间一致,且时针、分针、秒针会与系统时间同步更新,用户可以很方便地查看时间。下面将对“模拟时钟”微信小程序…

【漏洞复现】CVE-2021-45788 SQL Injection

漏洞信息 NVD - cve-2021-45788 Time-based SQL Injection vulnerabilities were found in Metersphere v1.15.4 via the “orders” parameter. Authenticated users can control the parameters in the “order by” statement, which causing SQL injection. API: /test…