如何使用内网穿透工具实现Java远程连接本地Elasticsearch搜索分析引擎

文章目录

    • 前言
    • 1. Windows 安装 Cpolar
    • 2. 创建Elasticsearch公网连接地址
    • 3. 远程连接Elasticsearch
    • 4. 设置固定二级子域名

前言

简单几步,结合Cpolar 内网穿透工具实现Java 远程连接操作本地分布式搜索和数据分析引擎Elasticsearch。

Cpolar内网穿透提供了更高的安全性和隐私保护,通过使用加密通信通道,Cpolar技术可以确保数据传输的安全性,这为用户和团队提供了更可靠的保护,使他们能够放心地处理和存储敏感的工作内容。

1. Windows 安装 Cpolar

访问cpolar官网,注册一个账号,然后下载并安装客户端,具体安装教程可以参考官网文档教程。

Cpolar官网:https://www.cpolar.com/download

  • windows系统:在官网下载安装包后,双击安装包一路默认安装即可。
  • linux系统:支持一键自动安装脚本,详细请参考官网文档——入门指南

image-20231113140709326

注意! Cpolar安装成功后,默认Cpolar web 界面访问端口也是9200,和Elasticsearch 会有冲突,需要修改一下Cpolar 管理界面端口,如果Elasticsearch 的端口不是9200,可以不用修改.

找到cpolar配置文件:c:\Users\用户名\.cpolar\cpolar.yml,使用Notepad++编辑工具或者其他软件打开

image-20231113140858314

在配置文件中,增加一行:client_dashboard_addr: 127.0.0.1:9800,端口可以自定义,这边使用9800

image-20231113141453289

修改好后,记得保存配置文件,然后在控制面板–管理工具—服务—cpolar service,重启cpolar服务

image-20231113141414399

然后浏览器输入localhost:9800,即可访问到了Cpolar Web UI 管理界面,输入官网注册的账号即可登录操作了.

image-20231113141644952

2. 创建Elasticsearch公网连接地址

登录后,点击左侧仪表盘的隧道管理——创建隧道,创建一个9200的http隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:https://127.0.0.1:9200 (本地访问的方式是https就需要填写完整地址)
  • 域名类型:免费选择随机域名
  • 地区:选择China

点击创建

image-20231123162335001

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https,由于本地是https,我们只需要使用https地址即可

image-20231123162509393

3. 远程连接Elasticsearch

导入相关的Maven 依赖,这里使用的Elasticsearch版本是最新版本8.11.0

<dependency><groupId>co.elastic.clients</groupId><artifactId>elasticsearch-java</artifactId><version>8.11.1</version><!--改为自己的版本--></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.12.3</version></dependency><dependency><groupId>jakarta.json</groupId><artifactId>jakarta.json-api</artifactId><version>2.0.1</version></dependency><dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-client</artifactId><version>8.11.1</version><!--改为自己的版本--></dependency>

导入后,根据官方的demo,我们编写相关的连接代码,连接地址使用上面创建的Cpolar公网地址,如果是其他语言,连接方式也是一样,

image-20231123163454683

设置好后,测试写入数据,这里测试,写入一个对象

image-20231123164409227

执行没有报错且成功后,在控制台日志信息上我们可以看到通过浏览器查看写入的数据链接,该链接前缀可以看到,也是cpolar公网地址,任意浏览器都可以访问

image-20231123164549203

通过链接,我们打开浏览器访问,输入用户名密码登录,登录后可以看到我们写入的数据,表示成功,这样一个公网连接地址就设置好了

image-20231123164833381

小结

为了更好地演示,我们在前述过程中使用了cpolar生成的隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不太容易记忆(例如:3ad5da5.r10.cpolar.top)。另外,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定二级子域名,原因是我希望将网址发送给同事或客户时,它是一个固定、易记的公网地址(例如:elasticsearch.cpolar.cn),这样更显正式,便于流交协作。

4. 设置固定二级子域名

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网后台,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

image-20231113151721641

保留成功后复制保留的二级子域名地址

image-20231113151751358

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20231113152109057

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新

image-20231113152142969

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称

最后,使用固定的域名公网https地址进行连接,修改代码中hostname,替换成固定公网地址,然后执行image-20231123165603839

执行后,通过打印出来的地址,进行访问(新地址访问,需要重新登录), 登录后,同样 可以看到我们写入到elasticsearch的数据,连接成功,这样一个永久固定不变的公网地址就设置好了!

image-20231123170126622

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

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

相关文章

光伏制氢:技术前沿与未来展望

光伏制氢&#xff1a;技术前沿与未来展望 一、引言 随着全球对可再生能源需求的日益增长&#xff0c;光伏制氢技术作为一种将太阳能转化为氢能的有效方式&#xff0c;正逐渐受到人们的关注。通过光伏发电和电解水相结合&#xff0c;我们可以将丰富的太阳能资源转化为清洁的氢…

腾讯混元、阿里通义千问成功通过中国首个“大模型标准符合性评测”

通义千问官网链接&#xff1a;通义通义&#xff0c;阿里云大模型的统一品牌&#xff0c;覆盖语言、听觉、多模态等领域&#xff0c;致力于实现类人智慧的通用智能。不仅有语言模型产品通义千问和文生图模型产品通义万相&#xff0c;也有基于通义大模型的通义听悟、通义灵码、通…

Python 中 key 参数的含义及用法

哈喽大家好&#xff0c;我是咸鱼 我们在使用 sorted() 函数的时候&#xff0c;都会看到里面有一个 key 参数 其实这个 key 参数也存在于其他内置函数中&#xff08;例如 min()、max() 等&#xff09;&#xff0c;那么我们今天就来了解一下 key 参数的含义以及用途吧&#xff…

vim 撤销和恢复

前言 vim 的撤销与恢复老是忘了快捷键&#xff0c;就记录一下 撤销 在命令模式&#xff08;按ESC进入&#xff09;下&#xff1a; 快捷键 u 恢复 在命令模式&#xff08;按ESC进入&#xff09;下&#xff1a; 快捷键 Ctrl r

LabVIEW在齿轮箱故障诊断中的应用

LabVIEW在齿轮箱故障诊断中的应用 在现代机械工业中&#xff0c;齿轮箱作为重要的传动设备&#xff0c;其性能稳定性对整体机械系统的运行至关重要。故障的及时诊断和处理不仅保障了设备的稳定运行&#xff0c;还减少了维护成本。利用LabVIEW强大数据处理和仿真能力&#xff0…

【网络编程】基于UDP数据报实现回显服务器/客户端程序

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【网络编程】【Java系列】 本专栏旨在分享学习网络编程的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 前言 我们如果…

VA01/VA02/VA03 销售订单根据定价和步骤校验权限隐藏价格(二)

1、文档说明 1.1、内容回顾 之前发表过相关文章《VA01/VA02/VA03 销售订单根据定价和步骤校验权限隐藏价格&#xff08;一&#xff09;》&#xff0c;本篇文章对上一篇文章做补充说明。 第一篇文章是通过拥有权限&#xff0c;则隐藏价格的模式&#xff0c;即对需要隐藏价格的…

ES6之数组新增的扩展

扩展运算符的应用 ES6通过扩展元素符…&#xff0c;比如 rest 参数的逆运算&#xff0c;将一个数组转为用逗号分隔的参数序列 console.log(...[1, 2, 3]) // 1 2 3console.log(1, ...[2, 3, 4], 5) // 1 2 3 4 5[...document.querySelectorAll(div)] // [<div>, <di…

GenerateBlocks Pro插件 构建更好的WordPress网站

GenerateBlocks Pro插件 构建更好的WordPress网站 GenerateBlocks Pro插件是一个 WordPress 插件&#xff0c;几乎可以完成任何事情&#xff0c;可让您创建轻量级和多功能的网站。由与流行且快速的 GeneratePress 主题相同的创作者构建&#xff0c;该插件不负众望。使用 Genera…

大疆L1激光点云数据处理(DJI Terra-大疆智图)

大疆L1激光点云数据处理 前言处理步骤查看成果 前言 大疆L1是一个激光雷达载荷&#xff0c;该载荷包括一个激光点云传感器和一个可见光传感器。截止2023年12月&#xff0c;已经发布了升级版L2&#xff0c;本文以L1获取的数据为例。 在使用L1的时候&#xff0c;应该开启RTK模式…

如何修复无法读取的U盘,修复U盘的方法

无法读取U盘是常见的故障&#xff0c;可能的原因有很多&#xff0c;例如U盘驱动器问题、文件系统损坏、电脑USB接口问题等。本文将详细分析这些原因&#xff0c;并提供相应的解决方法&#xff0c;帮助用户解决无法读取U盘的问题。 如何修复无法读取的U盘&#xff0c;修复U盘的方…

二叉树题目:分裂二叉树的最大乘积

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;分裂二叉树的最大乘积 出处&#xff1a;1339. 分裂二叉树的最大乘积 难度 6 级 题目描述 要求 给定二叉树的根结点 root \texttt{root} root&…

电脑触摸板用法大全

单手指&#xff1a; 单击→左键 两次单击→打开文件夹&#xff08;也就是鼠标的连续按两次左键&#xff09; 快速两次单击&#xff0b;拖动可以移动文件夹位置&#xff08;拖动图标&#xff09; 双指&#xff1a; 单击→右键 按住→可以上下/左右滑动窗口 三指&#xff1a; 同…

《PCI Express体系结构导读》随记 —— 前言

PCI与PCI Express&#xff08;PCIe&#xff09;总线在处理器系统中得到了大规模应用。PCISIG&#xff08;Peripheral Component Interconnect Special Interest Group&#xff0c;外围部件互连专业组&#xff09;也制定了一系列PCI与PCI Express总线相关的规范&#xff0c;这些…

探索C语言标准库中的qsort函数

引言 在C语言中&#xff0c;标准库提供了丰富的函数来支持各种操作&#xff0c;其中之一是qsort函数。这个函数是用于排序数组的利器&#xff0c;能够轻松地对一维数组、二维数组和结构体数组等不同类型的数据进行排序。本文将深入探讨qsort函数的使用&#xff0c;包括一维数组…

STL 优先队列priority_queue练习

目录 STL之优先队列priority_queue 绝对值排序问题&#xff08;题目描述&#xff09; &#xff08;一&#xff09;使用优先队列prioroty_queue实现绝对值降序排序 &#xff08;二&#xff09;使用vector实现绝对值降序排序&#xff08;使用库中的全局sort()函数&#xff09;…

P5740最厉害的学生

一&#xff1a;题目 二&#xff1a;思路分析 这道题就是会使用C语言的结构体&#xff0c;然后知道结构体数组 三&#xff1a;代码 #include <stdio.h> struct Stu {char name[10];int c;int m;int e; }s[1005];//结构体数组 int main() {int n 0;scanf("%d"…

商品列表无限加载

实现商品列表无限加载功能 需求&#xff1a;例如在商品列表页鼠标向下滑动自动监听去掉接口老数据新数据拼接展示&#xff0c;加载完毕结束监听 第一步 使用elementui中InfiniteScroll 无限滚动组件 第二步 如果数据加载完成了则停止监听 // 核心代码添加 v-infinite-scroll属…

GEE:基于MCD64A1的GlobFire的火灾时间

作者:CSDN @ _养乐多_ 本文将介绍如何可视化 JRC/GWIS/GlobFire/v2/FinalPerimeters 数据集中每个火灾斑块,以及火灾斑块发生火灾的时间。因为原始数据的时间是年月日格式,可视化只能是将其转换成 Day Of Year (DOY,一年中的天数,0-366),这样才能了解火灾发生的具体时…

数据从A集群,使用logstash迁移到B集群,如何保持_Id一致

有时候&#xff0c;我们在跨集群数据同步的时候&#xff0c;需要保持_id一致。这里给出一个案例。 这里直接给出一个配置文件 input {elasticsearch {hosts > "es.production.mysite.org"index > "mydata-2018.09.*"query > { "query":…