【Elasticsearch】-7.17.24版本接入

embedded/2024/9/24 0:53:09/

官网 https://www.elastic.co/cn/downloads/elasticsearch

本项目基于windows环境下,其他环境操作类似

1、初始化配置

打开config/elasticsearch.yaml

添加如下配置

cluster.name: dams_clusternetwork.host: 127.0.0.1
http.port: 9200# 不开启geo数据库
ingest.geoip.downloader.enabled: false# 设置访问账号密码
xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: false 

2、设置访问密码

使用elasticsearch提供的内置工具

2.1、手动设置密码

bin/elasticsearch-setup-passwords interactive

2.2、自动分配密码

密码配置需要elasticsearch处于运行状态,否则执行失败

bin/elasticsearch-setup-passwords auto

其中,用户权限分别如下:

  • elastic 账号:拥有 superuser 角色,是内置的超级用户。
  • kibana 账号:拥有 kibana_system 角色,用户 kibana 用来连接 elasticsearch 并与之通信。Kibana 服务器以该用户身份提交请求以访问集群监视 API 和 .kibana 索引。不能访问 index。
  • logstash_system 账号:拥有 logstash_system 角色。用户 Logstash 在 Elasticsearch 中存储监控信息时使用。

2.3、修改密码

curl -H "Content-Type:application/json" -XPOST -u elastic 'http://127.0.0.1:9200/_xpack/security/user/elastic/_password' -d '{ "password" : "123456" }'

2.4、带密码查询

curl -XGET --user user:passwd 'http://XXXX:9200/XX/XXX'

3、Java客户端连接

官方Java接入说明 

3.1、pom依赖

 <properties><es.version>7.17.24</es.version></properties><dependency><groupId>co.elastic.clients</groupId><artifactId>elasticsearch-java</artifactId><version>${es.version}</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.17.0</version></dependency><dependency><groupId>jakarta.json</groupId><artifactId>jakarta.json-api</artifactId><version>2.0.1</version></dependency>

 3.2、初始化连接

import co.elastic.clients.elasticsearch.ElasticsearchClient;
import co.elastic.clients.json.jackson.JacksonJsonpMapper;
import co.elastic.clients.transport.ElasticsearchTransport;
import co.elastic.clients.transport.rest_client.RestClientTransport;
import lombok.extern.slf4j.Slf4j;
import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.apache.http.impl.client.DefaultConnectionKeepAliveStrategy;
import org.elasticsearch.client.RestClient;
import org.springframework.beans.factory.ListableBeanFactory;
import org.springframework.stereotype.Service;import javax.annotation.Resource;
import java.io.IOException;
import java.util.Map;/*** 初始化服务,可以对外*/public synchronized ElasticsearchClient init(EsConfig esConfig) {if (null != esClient) {return esClient;}final BasicCredentialsProvider credential = new BasicCredentialsProvider();// 配置身份验证if (esConfig.openAuth()) {credential.setCredentials(AuthScope.ANY,new UsernamePasswordCredentials(esConfig.getLoginName(), esConfig.getPassword()));}RestClient restClient = RestClient.builder(new HttpHost(esConfig.getIp(), esConfig.getPort(), esConfig.getScheme())).setRequestConfigCallback(requestConfigBuilder -> {// 设置连接超时和请求超时return requestConfigBuilder.setConnectTimeout(5000)    // 连接超时时间.setSocketTimeout(60000)    // 套接字超时时间.setConnectionRequestTimeout(1000); // 请求超时时间}).setHttpClientConfigCallback(httpClientBuilder -> {// 设置 keep-alive 策略return httpClientBuilder.setDefaultCredentialsProvider(credential).setKeepAliveStrategy(DefaultConnectionKeepAliveStrategy.INSTANCE);}).build();ElasticsearchTransport transport = new RestClientTransport(restClient, new JacksonJsonpMapper());// And create the API clientesClient = new ElasticsearchClient(transport);return esClient;}


http://www.ppmy.cn/embedded/112744.html

相关文章

CRM如何助力科技服务机构突破业务瓶颈?

在当今知识经济时代&#xff0c;科技服务机构面临着复杂的业务环境和多样化的客户需求。客户管理系统&#xff08;CRM&#xff09;在这个领域的应用正逐渐成为机构提升运营效率、优化客户服务的关键。 科技服务行业的业务特点 知识产权代理行业具有高度的专业性和复杂性。其业…

Oracle临时表

Oracle临时表 主要用于存储临时数据&#xff0c;这些表的数据通常只在一个事务或会话期间有效。临时表对于处理大型批处理作业或存储中间结果特别有用&#xff0c;因为它们可以减少重做日志(redolog)的开销&#xff0c;并且不会污染永久表空间。 临时表的类型 1. 会话级临时表…

关键错误 你的开始菜单出现了问题 我们将尝试在你下一次登录时修复它。【笔记】

使用场景设备为Windows11系统&#xff0c;处理提示“关键错误 你的开始菜单出现了问题 我们将尝试在你下一次登录时修复它。”方法之一 处理步骤如下&#xff1a; 1、打开【设置】→【Windows更新】→【高级选项】。 2、切换界面选择【恢复】。 3、选择【使用Windows更新…

【笔记】第一节. 引言

• 轨道用钢的加工过程 • 钢轨结构及其标准 • 轨道结构特点 • 钢轨的商业化及其发展趋势 轨道用钢的加工过程 钢轨形式及其标准 钢轨的基本结构 轨头、轨腰、轨底。 钢轨的技术标准 • 铁道行业标准《TB/T2344-2003&#xff1a;43&#xff5e;75 kg/m 热轧钢轨订货技术…

鸿蒙介绍、鸿蒙编程环境、基本组件、页面跳转学习

系列文章目录 第一章 鸿蒙介绍、鸿蒙编程环境、基本组件、页面跳转学习 文章目录 系列文章目录前言一、HarmonyOS基础1. 鸿蒙系统是什么&#xff1f;2. 鸿蒙系统的重要目录及文件 二、HarmonyOS编程介绍1. ArkTS编程语言介绍2. DevEco Studio编程环境介绍3. 关系介绍 三、使用…

TDengine 签约寓信科技,推动智慧公寓的数字化转型

在数字化浪潮不断推动各行各业变革的时代背景下&#xff0c;智慧公寓的建设正面临日益增长的挑战与机遇。随着城市化进程的加快和租赁市场的多样化&#xff0c;公寓管理企业需要高效处理海量的设备运行数据和水电抄表信息。这些数据不仅庞大&#xff0c;而且具有时间敏感性和多…

Python 数据分析与可视化

在当今的数据驱动时代&#xff0c;数据分析与可视化已成为各行各业的重要工具。Python凭借其强大的数据处理能力和丰富的可视化库&#xff0c;成为数据分析的热门语言。本指南将为您提供Python数据分析与可视化的基础知识、实用技巧和实际操作案例&#xff0c;帮助您快速上手。…

Java设计模式—面向对象设计原则(五) ----->迪米特法则(DP) (完整详解,附有代码+案例)

文章目录 3.5 迪米特法则(DP)3.5.1 概述3.5.2 案例 3.5 迪米特法则(DP) 迪米特法则&#xff1a;Demeter Principle&#xff0c;简称DP 3.5.1 概述 只和你的直接朋友交谈&#xff0c;不跟“陌生人”说话&#xff08;Talk only to your immediate friends and not to stranger…