【Elasticsearch】安装配置与使用

1 前期准备

1.1 环境准备

麒麟ARM 64位操作系统
环境准备

1.2 安装包准备

elasticsearch安装包
Elasticsearch下载地址: https://www.elastic.co/cn/downloads/elasticsearch
下载elasticsearch

2 部署elasticsearch

2.1 创建es专用用户

注意:ES不能使用root用户来启动,必须使用普通用户来安装启动。
创建一个es专门的用户(必须),如:isearch
使用root用户在三台机器执行以下命令

useradd isearch
passwd isearch

2.2 上传压缩包,然后解压

tar -zxvf elasticsearch-7.17.7-linux-aarch64.tar.gz -C /rpa/

解压压缩包
建立软连接(方便日后升级)

ln -s /rpa/elasticsearch-7.17.7 /rpa/elasticsearch

2.3 修改配置文件

cd /rpa/elasticsearch/config/
vi elasticsearch.yml
# 集群名称 
cluster.name: my-elasticsearch# 节点名称 
node.name: node-1# 是否可以成为master节点 
node.master: true# 是否允许该节点存储数据,默认开启 
node.data: true# 配置elasticsearch数据路径(建议不放在es安装路径下,方便日后升级)
path.data: /rpa/datas/elasticsearch# 配置elasticsearch日志路径(建议不放在es安装路径下,方便日后升级)
path.logs: /rpa/logs/elasticsearch/# 网络绑定,绑定 0.0.0.0,代表支持外网访问 
network.host: 192.168.12.33# 设置对外服务的http端口,默认为9200 
http.port: 9200# 设置节点间交互的tcp端口,默认是9300 
transport.tcp.port: 9300# 手动指定可以成为 mater 的所有节点的 name 或者 ip,这些配置将会在第一次选举中进行计算 
cluster.initial_master_nodes: ["node-1"]# 设置集群自动发现机器ip的集合 
discovery.seed_hosts: ["192.168.12.33:9300"]# 设置允许跨域资源共享(CORS)
http.cors.enabled: true# 设置定义了哪些来源可以访问Elasticsearch。"*" 表示允许所有来源
http.cors.allow-origin: "*"# 设置指定了哪些HTTP方法(请求类型)被允许用于跨域请求
http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE# 设置定义了哪些HTTP头部可以在跨域请求中使用
http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, X-User"# 设置控制是否锁定Elasticsearch进程的内存
bootstrap.memory_lock: false# 设置用于禁用系统调用过滤器
bootstrap.system_call_filter: false# 设置启用了X-Pack安全功能,它提供了身份验证、授权、加密通信和基于角色的访问控制等功能
xpack.security.enabled: true# 设置启用了传输层(节点间通信)的SSL/TLS加密
xpack.security.transport.ssl.enabled: true

2.4 启动es

nohup /rpa/elasticsearch/bin/elasticsearch -d

2.5 配置elasticsearch登录认证

切换到Elasticsearch的bin目录,然后执行以下命令来设置密码:

cd /rpa/elasticsearch/bin
./elasticsearch-setup-passwords interactive

这个命令会提示你为不同的用户设置密码。这些用户通常包括elastic、apm_system、kibana、kibana_system、logstash_system、beats_system和remote_monitoring_user等。你需要按照提示输入每个用户的密码。
初始化密码

2.6 浏览器中访问es页面

链接: http://192.168.12.33:9200/
es登录页面
es页面

3 修改es密码

curl -u elastic:isearch@2020 -H "Content-Type:application/json; charset=UTF-8" -XPUT http://192.168.12.33:9200/_security/user/apm_system/_password -d '{"password":"isa1qaz2wsx"}' 
curl -u elastic:isearch@2020 -H "Content-Type:application/json; charset=UTF-8" -XPUT http://192.168.12.33:9200/_security/user/kibana/_password -d '{"password":"isa1qaz2wsx"}' 
curl -u elastic:isearch@2020 -H "Content-Type:application/json; charset=UTF-8" -XPUT http://192.168.12.33:9200/_security/user/logstash_system/_password -d '{"password":"isa1qaz2wsx"}' 
curl -u elastic:isearch@2020 -H "Content-Type:application/json; charset=UTF-8" -XPUT http://192.168.12.33:9200/_security/user/beats_system/_password -d '{"password":"isa1qaz2wsx"}' 
curl -u elastic:isearch@2020 -H "Content-Type:application/json; charset=UTF-8" -XPUT http://192.168.12.33:9200/_security/user/remote_monitoring_user/_password -d '{"password":"isa1qaz2wsx"}' 
curl -u elastic:isearch@2020 -H "Content-Type:application/json; charset=UTF-8" -XPUT http://192.168.12.33:9200/_security/user/elastic/_password -d '{"password":"isa1qaz2wsx"}' 

刷新浏览器页面,验证新密码正确,密码修改完成

4 es集群搭建

4.1 复制安装包

另外再准备两台elasticsearch服务器,将单机环境的es目录,复制两份,分别放到另外两台服务器上
(没有那么多资源,可以放在不同的目录下)
集群搭建

4.2 修改每台服务器的配置

4.2.1 es-cluster-01的配置:

# 集群名称 
cluster.name: my-elasticsearch# 节点名称 
node.name: node-1# 是否可以成为master节点 
node.master: true# 是否允许该节点存储数据,默认开启 
node.data: true# 配置elasticsearch数据路径(建议不放在es安装路径下,方便日后升级)
path.data: /rpa/datas/elasticsearch1# 配置elasticsearch日志路径(建议不放在es安装路径下,方便日后升级)
path.logs: /rpa/logs/elasticsearch1# 网络绑定,绑定 0.0.0.0,代表支持外网访问 
network.host: 192.168.12.33# 设置对外服务的http端口,默认为9200 
http.port: 9201# 设置节点间交互的tcp端口,默认是9300 
transport.tcp.port: 9301# 手动指定可以成为 mater 的所有节点的 name 或者 ip,这些配置将会在第一次选举中进行计算 
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]# 设置集群自动发现机器ip的集合 
discovery.seed_hosts: ["127.0.0.1:9301", "127.0.0.1:9302", "127.0.0.1:9303"]# 设置允许跨域资源共享(CORS)
http.cors.enabled: true# 设置定义了哪些来源可以访问Elasticsearch。"*" 表示允许所有来源
http.cors.allow-origin: "*"# 设置指定了哪些HTTP方法(请求类型)被允许用于跨域请求
http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE# 设置定义了哪些HTTP头部可以在跨域请求中使用
http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, X-User"# 设置控制是否锁定Elasticsearch进程的内存
bootstrap.memory_lock: false# 设置用于禁用系统调用过滤器
bootstrap.system_call_filter: false

4.1.1 es-cluster-02的配置:

# 集群名称 
cluster.name: my-elasticsearch# 节点名称 
node.name: node-2# 是否可以成为master节点 
node.master: true# 是否允许该节点存储数据,默认开启 
node.data: false# 配置elasticsearch数据路径(建议不放在es安装路径下,方便日后升级)
path.data: /rpa/datas/elasticsearch2# 配置elasticsearch日志路径(建议不放在es安装路径下,方便日后升级)
path.logs: /rpa/logs/elasticsearch2# 网络绑定,绑定 0.0.0.0,代表支持外网访问 
network.host: 192.168.12.33# 设置对外服务的http端口,默认为9200 
http.port: 9202# 设置节点间交互的tcp端口,默认是9300 
transport.tcp.port: 9302# 手动指定可以成为 mater 的所有节点的 name 或者 ip,这些配置将会在第一次选举中进行计算 
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]# 设置集群自动发现机器ip的集合 
discovery.seed_hosts: ["127.0.0.1:9301", "127.0.0.1:9302", "127.0.0.1:9303"]# 设置允许跨域资源共享(CORS)
http.cors.enabled: true# 设置定义了哪些来源可以访问Elasticsearch。"*" 表示允许所有来源
http.cors.allow-origin: "*"# 设置指定了哪些HTTP方法(请求类型)被允许用于跨域请求
http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE# 设置定义了哪些HTTP头部可以在跨域请求中使用
http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, X-User"# 设置控制是否锁定Elasticsearch进程的内存
bootstrap.memory_lock: false# 设置用于禁用系统调用过滤器
bootstrap.system_call_filter: false

4.1.3 es-cluster-03的配置:

# 集群名称 
cluster.name: my-elasticsearch# 节点名称 
node.name: node-3# 是否可以成为master节点 
node.master: false# 是否允许该节点存储数据,默认开启 
node.data: true# 配置elasticsearch数据路径(建议不放在es安装路径下,方便日后升级)
path.data: /rpa/datas/elasticsearch3# 配置elasticsearch日志路径(建议不放在es安装路径下,方便日后升级)
path.logs: /rpa/logs/elasticsearch3# 网络绑定,绑定 0.0.0.0,代表支持外网访问 
network.host: 192.168.12.33# 设置对外服务的http端口,默认为9200 
http.port: 9203# 设置节点间交互的tcp端口,默认是9300 
transport.tcp.port: 9303# 手动指定可以成为 mater 的所有节点的 name 或者 ip,这些配置将会在第一次选举中进行计算 
cluster.initial_master_nodes: ["node-1", "node-2", "node-3"]# 设置集群自动发现机器ip的集合 
discovery.seed_hosts: ["127.0.0.1:9301", "127.0.0.1:9302", "127.0.0.1:9303"]# 设置允许跨域资源共享(CORS)
http.cors.enabled: true# 设置定义了哪些来源可以访问Elasticsearch。"*" 表示允许所有来源
http.cors.allow-origin: "*"# 设置指定了哪些HTTP方法(请求类型)被允许用于跨域请求
http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE# 设置定义了哪些HTTP头部可以在跨域请求中使用
http.cors.allow-headers: "X-Requested-With, Content-Type, Content-Length, X-User"# 设置控制是否锁定Elasticsearch进程的内存
bootstrap.memory_lock: false# 设置用于禁用系统调用过滤器
bootstrap.system_call_filter: false

4.3 启动服务

分别执行命令启动3台elasticsearch 服务

nohup ./es-cluster-01/bin/elasticsearch -d
nohup ./es-cluster-02/bin/elasticsearch -d
nohup ./es-cluster-03/bin/elasticsearch -d

在这里插入图片描述

使用ps命令查看全部启动成功

在这里插入图片描述

4.3 集群验证

浏览器访问链接: http://192.168.12.33:9201/
集群验证

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/5117.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【百度Apollo】探索自动驾驶:小白教学如何使用 Dreamview 播放数据包

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《linux深造日志》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 引入一、Dreamview 简介二、使用 Dreamview 具体步骤步骤一:进入 Apollo Docker 环境步骤二&#xff…

.net报错异常及常用功能处理总结(持续更新)

.net报错异常及常用功能处理总结---持续更新 1. WebApi dynamic传参解析结果中ValueKind Object处理方法问题描述方案1:(推荐,改动很小)方案2: 2.C# .net多层循环嵌套结构数据对象如何写对象动态属性赋值问题描述JavaScript动态属性赋值.net…

初步认识Vscode

4.26初步认识Vscode (一)快捷键的使用 1. 打开控制端 ctrl ~2. 结束终端 ctrl c3. 多行同时对齐输出 按住shift alt 光标多选4. 多行同时任意位置输出 按住alt 光标单点你想要输入的位置5. 代码太长了,想混行编辑 alt z6. 打开设置控制…

记录一次大数据量接口优化过程

问题描述 记录一次大数据量接口优化过程。最近在优化一个大数据量的接口,是提供给安卓端APP调用的,因为安卓端没做分批次获取,接口的数据量也比较大,因为加载速度超过一两分钟,所以导致接口超时的异常,要让…

【网络原理】TCP协议的相关机制(确认应答、超时重传)

系列文章目录 【网络通信基础】网络中的常见基本概念 【网络编程】Java网络编程中的基本概念及实现UDP、TCP客户端服务器程序(万字博文) 【网络原理】UDP协议的报文结构 及 校验和字段的错误检测机制(CRC算法、MD5算法) 文章目…

# 谷歌 Chrome 浏览器无法安装插件的解决方法

谷歌 Chrome 浏览器无法安装插件的解决方法 运用开发模式安装 安装步骤: 1、 将 XX.crx 插件的扩展名改成 .zip 或者 .rar 并解压到文件夹 XX 目录。 1)如:下载的 前端框架 vue.js 插件 nhdogjmejiglipccpnnnanhbledajbpd-6.6.1-Crx4Chro…

面试重点2:网页访问不了,从服务器层面如何排查

从服务器层面排查网页访问问题可以按照以下步骤进行: 1. 检查网络连接 确保服务器的网络连接正常,可以通过 ping 命令测试网络是否通畅,例如 ping www.example.com。 2. 排查 DNS 问题 如果访问域名无法解析,可能是 DNS 配置问…

邦注科技即热式节能模温机 模温机的工作原理

模温机是一种用于控制模具温度的设备,主要用于塑料注塑、压铸、橡胶成型等工艺中。 其工作原理主要包括以下几个步骤: 加热阶段: 当模具需要加热时,双温模温机会启动加热系统,将热传导油或热传导水加热至设定温度。加…

Spring Cloud学习笔记(Hystrix):execute,queue,observe,toObservable样例和特性

这是本人学习的总结,主要学习资料如下 - 马士兵教育 1、Overview2、execute()2.1、Overview2.2、示例 3、queue()3.1、Overview3.2、示例 4、observe()4.1、Overview4.2、示例 5、toObservable()5.1、observe()和toObservable()的区别 1、Overview 我们知道Hystrix…

HDFS架构

HDFS 是一个主从 Master/Slave 架构一个 HDFS 集群包含一个 NameNode,这是一个 Master Server,用来管理文件系统的命名空间,以及协调客户端对文件的访问一个 HDFS 集群包含多个 DataNode,用来存储数据HDFS 会对外暴露一个文件系统命名空间,并允许用户数据以文件的形式进行存储在…

iOS实现一个高性能的跑马灯

效果图 该跑马灯完全通过CATextLayer 实现,轻量级,并且通过 系统的位移动画实现滚动效果,避免了使用displaylink造成的性能瓶颈,使用系统动画,系统自动做了很多性能优化,实现更好的性能,并使用…

java设计模式 -- 工厂模式

1、基本概念 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一,这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 工厂模式提供了一种创建对象的方式,而无需指定要创建的具体类。 工厂…

python与上位机开发day04

模块和包、异常、PyQt5 一、模块和包 1.1 模块 Python中模块就是一个.py文件,模块中可以定义函数,变量,类。模块可以被其他模块引用 1.1.1 导入模块 """ 导入格式1: import 模块名 使用格式: …

【yolov8目标检测部署】TensorRT int8量化

原作者github:https://github.com/xuanandsix/Tensorrt-int8-quantization-pipline/tree/main 改进: 源代码支持的TensorRT版本为7.许多属性已经弃用; 在原有的代码上将支持的TensorRT版本从7改到8. !!不知道如何安装T…

【设计模式】简单工厂模式(Simple Factory Pattern)

工厂模式(Factory Pattern) 用于创建不同类型的奖品对象。您可以创建一个奖品工厂,根据配置的类型来实例化相应的奖品对象。 public interface Prize {void award(); }public class MoneyPrize implements Prize {Overridepublic void awar…

在 Windows 系统上安装 TeamViewer 13

在 Windows 系统上安装 TeamViewer 13 References 默认安装到所有用户 同意协议 安装目录 勾选内容 打开文件位置 打开 rClientID.exe Extras -> Options -> Advanced Show advanced options -> Display language 重新启动TeamViewer 语言可修改为中文简体 …

稳扎稳打 部署丝滑 开源即时通讯(IM)项目OpenIM源码部署流程(linux windows mac)

背景 OpenIM包含多个关键组件,每个都是系统功能必不可少的一部分。具体来说,MongoDB 用于持久化存储;Redis 用作缓存;Kafka 用于消息队列;Zookeeper 用于服务发现;Minio 用于对象存储。这些组件的众多可能会…

C++14之std::exchange的使用和原理分析

目录 1.概述 2.使用 2.1.交换操作 2.2.移动语义 3.原理 4.综合示例 5.总结 1.概述 std::exchange 是 C 标准库中的一个实用函数,它的主要作用是替换一个对象的值,并返回该对象的旧值。这个函数在 C14 中引入,主要用于简化和优化代码。…

OpenCV如何在图像中寻找轮廓

返回:OpenCV系列文章目录(持续更新中......) 上一篇:OpenCV如何模板匹配 下一篇 :OpenCV系列文章目录(持续更新中......) 目标 在本教程中,您将学习如何: 使用 OpenCV 函数 cv::findContour…

55.基于SpringBoot + Vue实现的前后端分离-旅游管理系统(项目 + 论文)

项目介绍 本站是一个B/S模式系统,采用SpringBoot Vue框架,MYSQL数据库设计开发,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得基于SpringBoot Vue技术的旅游管理系统设计与实现管理工作系统…