java怎么连接elasticsearch单节点 10C

java怎么连接elasticsearch单节点,网上全是连接集群的,单例和集群的连接方式一样吗?

0

7个回答

TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("192.168.1.247"), 9200));
//官网上有例子.

0

我也不懂,求解求解求解求解!

0
0

package cn.test;

import java.net.InetAddress;
import java.net.UnknownHostException;

import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.action.search.SearchType;
import org.elasticsearch.client.transport.TransportClient;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.transport.InetSocketTransportAddress;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.SearchHit;
public class ElkTest {
// private static final String CLUSTER_NAME = "cluster_name";

public static final String CLUSTER_NAME = "elasticsearch"; //实例名称
private static final String IP = "127.0.0.1";

//private static final String IP = "192.168.0.29";

private static final int PORT = 9300; //端口
//1.设置集群名称:默认是elasticsearch,并设置client.transport.sniff为true,使客户端嗅探整个集群状态,把集群中的其他机器IP加入到客户端中

/*
//对ES1.6有效
private static Settings settings = ImmutableSettings
.settingsBuilder()
.put("cluster.name",CLUSTER_NAME)
.put("client.transport.sniff", true)
.build();
*/

//对ES2.0有效

private static Settings settings = Settings

.settingsBuilder()

.put("cluster.name",CLUSTER_NAME)

.put("client.transport.sniff", true)

.build();

//创建私有对象

private static TransportClient client;

//反射机制创建单例的TransportClient对象  ES1.6版本  

// static {

// try {

// Class<?> clazz = Class.forName(TransportClient.class.getName());

// Constructor<?> constructor = clazz.getDeclaredConstructor(Settings.class);

// constructor.setAccessible(true);

// client = (TransportClient) constructor.newInstance(settings);

// client.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(IP), PORT));

// } catch (Exception e) {

// e.printStackTrace();

// }

// }

//ES2.0版本  
static {  
    try {  
        client = TransportClient.builder().settings(settings).build()  
                .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(IP), PORT));  
    } catch (UnknownHostException e) {  
        e.printStackTrace();  
    }  
}  

//取得实例  
public static synchronized TransportClient getTransportClient(){  
    return client;  
}  

//为集群添加新的节点  
public static synchronized void addNode(String name){  
    try {  
        client.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(name),9300));  
    } catch (UnknownHostException e) {  
        e.printStackTrace();  
    }  
}  

//删除集群中的某个节点  
public static synchronized void removeNode(String name){  
    try {  
        client.removeTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(name),9300));  
    } catch (UnknownHostException e) {  
        e.printStackTrace();  
    }  
}  
public static void main(String args[]){
    String index="logstash-2016.02.16";    
    String type="logs"; 
    SearchResponse response=ElkTest.getTransportClient().prepareSearch(index)//设置要查询的索引(index)
    .setSearchType(SearchType.DFS_QUERY_THEN_FETCH)
    .setTypes(type)//设置type, 这个在建立索引的时候同时设置了, 或者可以使用head工具查看
    .setQuery(QueryBuilders.matchQuery("message", "Accept")) //在这里"message"是要查询的field,"Accept"是要查询的内容
    .setFrom(0)
    .setSize(10)
    .setExplain(true)
    .execute()
    .actionGet();
    for(SearchHit hit:response.getHits()){
        System.out.println(hit.getSourceAsString());
    }
}  

}

0

1.创建一个node来加入集群,通过node获取client。

0

httpclient 直接调用 es的java api

0

通过ES的JAVA api接口进行http访问

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
elasticsearch的单节点和集群的安装和使用代码操作
elasticsearch安装与使用代码操作单节点的安装下面介绍一个插件head,它给我们提供了友好的web界面来查看elasticsearch数据下面介绍分布式的安装、此处安装三个节点 一个master节点和两个slave节点**elasticsearch的单节点个集群的搭建到此结束了,使用命令和代码进行操作的介绍在下篇文章中介绍** 单节点的安装 1、首先安装jdk,最好是1.8及其以上的版...
elasticsearch 学习之 搭建简单的elasticsearch单节点服务器
前提:jdk1.8 node版本大于6 1:下载elasticsearch 最新版 https://www.elastic.co/downloads/elasticsearch 2:下载到本地进行解压 3:由于我本地的内存有限,所以修改配置文件中的启动所需要的JVM内存(config/jvm.options) 4:启动elasticsearch 5:打开浏览
Graylog:集中日志解决方案
为什么80%的码农都做不了架构师?&gt;&gt;&gt; ...
elasticsearch 单节点部署出现的坑
我用的是vmw 虚拟出来的centos6,32位,装的jdk是1.8,是32位的。以下的坑,全可以通过阅读官方文档查询原因,因此强烈建议安装的时候照着官方文档来。一、安装完成,只能在安装的机器上访问,curl http://localhost:9200/外部机器是访问不了的,因为es默认配置,只能闭环访问。可以通过修改配置文件$ES_HOME/config/elasticsearch.yml,修改...
java 连接elasticSearch封装的工具类
java连接elasticSearch的工具类,只需要传入两个参数 一个是节点名称,一个是ip地址即可返回对象Client
elasticsearch简述与单节点安装
         Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。(官方的定义)。其有以下特点:1、查询:支持结构化与非结构化数据的快速查询,支持简单及复杂的查询;2、分析:可根据需求对数据进行聚合,折分等操作,建立各类模式的分析策略;3、速度:一定字,快,在查询方面TB级别的数量也是非常快的,PB级别需要看集群大小;4、可扩展:...
Linux环境下ElasticSearch单节点以及集群的安装
环境: Linux:CentOS6.6 JDK: 1.8.0_141 ElasticSearch:  elasticsearch-6.2.4.tar.gz 在安装es之前需要提前配置好JAVA_HOME   ------------------------------------------------------------------------------------------...
ElasticSearch 安装 (单机单节点/单机多节点)
ElasticSearch 安装 (单机单节点/单机多节点) ElasticSearch 简介 ElasticSearch(ES) 现在已经随着技术发展越来越火爆了。它基于Lucence搜索引擎,实现RestFul风格,开箱即用。广泛用于在网站上做站内搜索。 下载 这个变焦简单了,会上网的人应该都会。 安装 ES 下载解压后,配置文件主要在config目录...
linux下ELK 6.6 版本之ElasticSearch单节点的安装部署
ELK的帮助文档:https://www.elastic.co/ 一、日志系统搭建部署(ELK的引入) 1、背景 &lt;1&gt;目的: 系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。 &lt;2&gt;日志管理: 通常,日志被分散的储存不...
Elasticsearch学习(1)之安装部署(单机多节点模式)
Elasticsearch集群环境部署(单机多节点)1. 环境准备 名称 地址 jdk-8u77-linux-x64.tar.gz http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htm elasticsearch-1.7.3.tar.gz https://downlo
ElasticSearch 单个节点监控
首发地址:http://www.54tianzhisheng.cn/2017/10/18/ElasticSearch-nodes-metrics/,转载请注明地址!集群健康监控是对集群信息进行高度的概括,节点统计值 API 提供了集群中每个节点的统计值。节点统计值很多,在监控的时候仍需要我们清楚哪些指标是最值得关注的。集群健康监控可以参考这篇文章:ElasticSearch 集群监控 节点信息
使用kubernetes部署Elasticsearch应用(单节点)
背景简介: kubernetes部署应用,特别的方便。用户只需要提交应用服务所需要的资源就可以了(通常是一个yaml配置文件),虽然没学过kubernetes,网上很多可以搭建k8s集群的博客(以后会学习) 一、 下载相关镜像 yaml文件中用到的镜像,下载本地之后。通过docker命令查看(官方镜像需要使用VPN,学习这些开源项目必须克服网络问题,要不然门都很难进啊)深有体会 [root@nod...
单节点Elasticsearch出现unassigned_shards原因及解决办法
查看单节点Elasticsearch健康状态使用head插件查看集群状态从上面截图可以看出存在5个unassigned的分片,新建索引blog5的时候,分片数为5,副本数为1,新建之后集群状态成为yellow,其根本原因是因为集群存在没有启用的副本分片,我们先来看一下官网给出的副本分片的介绍:副本分片的主要目的就是为了故障转移,正如在 集群内的原理 中讨论的:如果持有主分片的节点挂掉了,一个副本分...
Elasticsearch源码分析 | 单节点的启动和关闭
本文主要简要介绍Elasticsearch单节点的启动和关闭流程。Elasticsearch版本:6.3.2 相关文章 1、Google Guice 快速入门 2、Elasticsearch 中的 Guice 3、教你编译调试Elasticsearch 6.3.2源码 4、Elasticsearch 6.3.2 启动过程 创建节点 Elasticsearch的启动引导类为 Bootstrap 类,...
es学习笔记二---ElasticSearch5.x 在远程Linux6.5服务器上搭建单个节点
一、本机去es官网下载elasticsearch 5.x tar包,博主下的5.2.2版本链接[https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz],使用SecureFXPortable工具把下载好的es上传到远程服务器elasticsearch文件夹(自己mkdir)下 非root用户
原生elasticsearch测试用例编写
1.坐标 &amp;lt;dependencies&amp;gt; &amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;org.&amp;lt;/groupId&amp;gt; &amp;lt;artifactId&amp;gt;elasticsearch&amp;lt;/artifactId&amp;gt; &amp;lt;version&amp;gt;2.4.0&amp;lt;/versio
Linux下Elasticsearch-2.4.1的安装与简单配置(单节点)
项目中需要用到Elasticsearch,进行了es库的安装和简单配置,记录如下:     环境: CentOS6.5 , jdk环境需要设置好,建议使用1.7以上,es版本为 2.4.1 版本。     1.Elasticsearch的下载     官网各历史版本的浏览地址:https://www.elastic.co/downloads/past-releases  在其中可以找到自己需
ES 单机多节点如何保证高可用
问题: 一些高配的机器会选择在一个物理机上启动多个ES节点来充分利用资源,那么如何避免一个索引的主副本都分布在一个物理机上,从而导致一个物理机宕机了导致索引不可用? 解答: 引用官方文档 cluster.routing.allocation.same_shard.host Allows to perform a check to prevent allocation of mult...
ELK之Elasticsearch的单节点安装及配置
elasticsearch的单节点安装及配置 1.前期准备 1.1.安装JDK 1.2.关闭防火墙 2.创建elasticsearch文件夹,上传并解压安装包 cd /usr mkdir elasticsearch cd  elasticsearch rz(选中上传准备好的 elasticsearch安装包) tar –zxvf xxxxxxxx 3.创建ES用户和组(如果以r...
ElasticSearch6.X版本Java Api中文详解(一)之TransportClient客户端连接方式
 TransportClient使用传输模块远程连接到一个弹性搜索集群。它不加入集群,但只获得一个或多个初始传输ip地址,并在每个动作上与它们进行轮询(尽管大多数操作可能是&quot;two hop&quot; 操作)。// on startup TransportClient client = new PreBuiltTransportClient(Settings.EMPTY) .addTran...
ElasticSearch单节点部署步骤
NULL 博文链接:https://woaijiadanoo.iteye.com/blog/2406140
Redis连接池及单节点工具与多Redis节点管理工具
Redis提供Java的操作工具Jedis稍稍实现封装就可以直接拿来使用了,单节点和多节点这个封装就太简单了。Redis默认数据库实例个数0-15即16个实例。正常情况下,我们通过get或者set方法是从db0中取数据。 redis提供了 select命令,可以通过select index 这个指令,将数据库切换到index所在的那个数据库上 jedis客户端也提供了对应的方法,可以通过jed...
Java连接ElasticSearch(springboot2.X配置ES连接的方式)
springboot2.X配置ES连接的3种方式 Java连接ElasticSearch Java连接ElasticSearch的2种方式 有两种方式: 一种 是9200端口(RestClient)rest 接口,基于http协议; 另一种是用 节点的9300端口(TransportClient),基于Tcp协议;(不推荐使用,理由如下) es7.X 版本的改变 简单点说就是 TransportC...
Elasticsearch单机存储和多节点分布式存储配置
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎, 基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布, 是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。 一、单机存储配置 server1: 安装elastics...
【elasticsearch】初识es搜索引擎,单节点安装
es权威指南1:https://es.xiaoleilu.com/index.htmles权威指南2:https://elasticsearch.cn/book/elasticsearch_definitive_guide_2.x/部署es环境:centos6.9、jdk1.8 、elasticsearch-5.5.1.rpm部署步骤:官网下载最新版本的es: https://www.elasti
centos7下安装elasticSearch错误总结(单节点模式)
1、首先确定你安装了jdk,版本需要1.8以上 2、上传elasticsearchjar包,只需配置一个文件即可 修改配置文件config/elasticsearch.yml     network.host: 192.168.100.211 3、启动测试 进入到elasticsearch主目录执行   bin/elasticsearch 4、报错 os::commit_memory(...
elasticsearch 单机部署,脱离集群
安装好elasticsearch后,默认是会将同一网段的所有cluster.name相同的索引,都能搜索到, 但是在开发环境下,测试用的elasticsearch不应该到集群中,只应在单机显示, 解决方法: 在elasticsearch文件夹下,修改config文件夹下elasticsearch.yml文件: 默认设置: #cluster.name: elasti
Elasticsearch client 只创建一次连接节省资源
由于业务需要本人正在使用es,将es里面的数据取出来展现的页面上?  这个操作对于大牛来说,简直就是小菜一碟。 但是对于我这种菜鸡来说挺难得。 反正大牛做什么都是正确 的, 其实就是把client的连接代码抽取出来,不需要每次调用的时候都需要创建新的连接, 好了我们看一下代码。 //连接client TransportClient client = null; InetAddres
spring中使用Elasticsearch的代码实现
在使用Elasticsearch之前,先给大家聊一点干货。 1.      ES和solr都是作为全文搜索引擎出现的。都是基于Lucene的搜索服务器。 2.   ES不是可靠的存储系统,不是数据库,它有丢数据的风险。 3.   ES不是实时系统,数据写入成功只是trans log成功(类似于mysql的bin log),写入成功后立刻查询查不到是正常的。因为数据此刻可能还在内存里而不是进
elasticsearch连接java的开发流程
今天终于爬坑,把elasticsearch连接java测试跑通了,搜索那么多,走那么多弯路,哎!不说了, 自己仔细把走过的路记下来, 让自己和大家都少走弯路。 1、用maven项目搭建工程: 要注意的是, 你的elasticsearch是什么版本的, maven下载的那个jar也得对应该版本, 否则会报错:例如,我的是elasticsearch5.2.0,那么我的下载的版本也是5.2.0 ...
实战案例丨用 Docker Compose 快速运行一个 3 节点 Elasticsearch 集群
出品丨Docker公司(ID:docker-cn)编译丨小东每周一、三、五晚6点10分 与您不见不散!说在前面使用 Docker 在笔记本电脑上安装 Elasticse...
elasticsearch环境部署测试与配置【详细版】
共享模式下: useradd sxt echo sxt | passwd --stdin sxt su sxt root 用户创建 /opt/sxt/es(普通用户无法创建) mkdir -p /opt/sxt/es (注意:此时的目录权限属于root) 在附近目录尚学堂下执行: chown sxt:sxt es 单节点模式下root用户: 安装解压程序 ftp拷贝至根目录下,或者...
ElasticSearch基于单机多节点下的集群搭建
服务器:CentOS 7    ES版本:5.6.5 本文默认前提单节点启动都一切正常 1.配置文件的修改:slave-1 http.cors.enabled: true http.cors.allow-origin: "*" network.host: 0.0.0.0 cluster.name: pionner17 node.master: true node.name: slave1
Elasticsearch之单机多实例问题
Elasticsearch单机多实例配置以及配置后产生的同主机分配副本的解决方案
Spring Data ElasticSearch启动报错,无可用节点
启动时一直报 org.elasticsearch.client.transport.NoNodeAvailableException: No node available 但是实际上我的集群配置正常,服务也正常,检查了jar包版本,防火墙之类的东西,发现也没有问题。然后就猜测是不是网络的问题,仔细想了一下,当前的网络环境,都是内网,连接的都是配置的vpn。然后想到有个参数client.trans...
20-Minikube快速搭建K8S单节点环境
Minikube快速搭建K8S单节点环境1. K8S集群搭建方式1.1 最困难的搭建k8s的方式1.2 简单的搭建k8s的方式1.2.1 minikube1.2.2 kubeadm1.2.3 kops2. Minikube搭建k8s单节点环境 1. K8S集群搭建方式 K8S大牛:高塔,https://github.com/kelseyhightower 1.1 最困难的搭建k8s的方式 htt...
Elasticsearch搭建--适用每天增量为3亿的数据量
Elasticsearch是一个实时分布式搜索和分析引擎。它让你以前所未有的速度处理大数据成为可能。它用于全文搜索、结构化搜索、分析以及将这三者混合使用。
redis客户端jedis基于spring搭建单节点或者集群线程池连接
基于jedis线程池搭建单节点或集群连接完整代码                 redis.clients jedis 2.9.0 1:properties配置文件 ########### redis.model=single redis.url=10.128.90.60:6377 redis.testOnBorrow=true redis.testOnReturn
连接阿里elasticsearch连接客户端代码
连接阿里elasticsearch连接客户端代码,elasticsearch5.3.3
Java客户端连接elasticsearch5.5.3实现数据搜索(基于xpack安全管理)
https://blog.csdn.net/lvyuan1234/article/details/78185763