内网穿透的应用-如何本地部署Elasticsearch搜索分析引擎实现并发布公网远程访问

news2024/10/6 8:25:54

文章目录

    • 系统环境
    • 1. Windows 安装Elasticsearch
    • 2. 本地访问Elasticsearch
    • 3. Windows 安装 Cpolar
    • 4. 创建Elasticsearch公网访问地址
    • 5. 远程访问Elasticsearch
    • 6. 设置固定二级子域名

Elasticsearch是一个基于Lucene库的分布式搜索和分析引擎,它提供了一个分布式、多租户的全文搜索引擎,具有HTTP Web接口和无模式JSON文档,同时也是是一个非常强大的工具,可以用于各种用途,例如日志分析、搜索引擎、安全分析等等。

远程连接的好处在于可以让用户从远程位置访问Elasticsearch集群,这样可以方便地进行数据查询和管理。具体好处如下:

  1. 方便远程协作:远程连接可以让多个用户从不同的地方同时访问Elasticsearch集群,方便团队协作和数据共享。
  2. 提高数据安全性:远程连接可以让用户在本地进行数据查询和管理,避免了在服务器上直接操作数据的风险,提高了数据的安全性。
  3. 方便数据备份:远程连接可以让用户方便地将数据备份到本地,避免了数据丢失的风险。
  4. 提高数据处理效率:远程连接可以让用户在本地进行数据处理和分析,避免了数据传输的时间和带宽限制,提高了数据处理效率。

下面介绍在Windows 安装Elasticsearch 并结合Cpolar实现远程连接和访问!

系统环境

JDK 1.8

1. Windows 安装Elasticsearch

进入官方下载界面: https://www.elastic.co/downloads/elasticsearch,选择windows版本下载,Elasticsearch 运行需要java 环境,如果没有安装环境,需要提前安装 JDK.

image-20231110145417985

下载完成后进行解压,进入bin目录,找到elasticsearch.bat脚本文件执行一键启动.

image-20231110145816972

启动后,特别注意一下cmd窗口的一个用户名和一个密码信息,访问登录需要这个用户名密码

image-20231110151352328

2. 本地访问Elasticsearch

运行服务后,浏览器输入https://lcoalhost:9200,会提示输入用户名密码,填写上面我们看到的用户名:elastic 和对应的密码,即可访问成功,下面进行安装Cpolar 工具,实现远程访问

image-20231110152246542

3. 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

4. 创建Elasticsearch公网访问地址

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

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

点击创建

image-20231113150106574

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

image-20231113150229680

5. 远程访问Elasticsearch

打开浏览器,使用Cpolar https公网地址访问,可以看到,访问成功,这样一个远程或者任意设备浏览器访问的公网地址就设置好了.

image-20231113150402441

小结

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

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

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

6. 设置固定二级子域名

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

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

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

image-20231113151721641

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

image-20231113151751358

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

image-20231113152109057

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

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

点击更新

image-20231113152142969

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

image-20231113152233962

最后,使用固定的域名公网https地址访问,可以看到同样也是访问成功,这样一个永久固定不变的公网地址就设置好了!

image-20231113152348531

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

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

相关文章

解决NPE的三种方式

解决NPE的三种方式 NullPointerException(空指针异常,NPE)是Java编程中常见的错误。解决NPE的方法可以从以下三个方面考虑: 明确处理空引用情况: 在某些情况下,无法避免使用可能为空的引用对象。此时&…

从零开始学习Netty - 学习笔记 - NIO基础 - 文件编程:FileChannel,Path,Files

3.文件编程 3.1.FileChannel FileChannel只能工作在非阻塞模式下面,不能和selector一起使用 获取 不能直接打开FIleChannel,必须通过FileInputSream,或者FileOutputSetream ,或者RandomAccessFile来获取FileChannel 通过FileIn…

docker自定义网络实现容器之间的通信

Background docker原理 docker是一个Client-Server结构的系统,Docker的守护进程运行在主机上。通过Socket从客户端访问。docker核心三大组件:image–镜像、container-容器、 repository-仓库。docker使用的cpu、内存以及系统内核等资源都是直接使用宿主…

C语言字符串函数strchr与strrchr

注意: 这两个函数的功能,都是在指定的字符串 s 中,试图找到字符 c。strchr() 从左往右找,strrchr() 从右往左找。字符串结束标记 ‘\0’ 被认为是字符串的一部分。 示例 char *p;p strchr("www.qq.com", .); // 从左…

rtsp推拉流

1.搭建视频服务器 smart-rtmpd: smart_rtmpd 是一款 rtmp、rtsp 服务器,非常好用,解压既运行,支持跨平台,无任何依赖,性能和 SRS 相比不分上下 2.推拉流 下载windows版本ffmpeg,并设置环境变量. 推流 ffmpeg -re -st…

sentinel中监听器的运用--规则管理

sentinel中监听器的运用–规则管理 规则结构 类图关系 类关系图如下 Rule 将规则抽象成一个类, 规则与资源是紧密关联的, 也就是说规则作用于资源。因此, 我们需要将规则表示为一个类, 并包含一个获取资源的方法 这里采用接口的原因就是规则是一个抽象概念而非具体实现。…

护眼灯减蓝光和无蓝光的区别是什么?盘点回购率前5名的护眼台灯!

随着近视问题日益严重,保护视力已逐渐成为公众关注的焦点。在日常生活中,不良的光线环境常常成为视力下降的潜在威胁,因此,护眼台灯成为了现代家庭保护视力的必备工具。其中,关于台灯的蓝光问题更是受到了广泛关注。有…

YOLOv9来了! 使用可编程梯度信息学习你想学的内容, v7作者新作!【文献速读】

YOLOv9文献速读,本文章使用 GPT 4.0 和 Ai PDF 工具完成。 文章地址:https://arxiv.org/pdf/2402.13616.pdf 文章目录 文章简介有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员?论文试图解决什么问题&a…

STM32—启用按键

​ 目录 1 、电路构成及原理图 2、编写实现代码 main.c main.h key.c 3、代码讲解 4、 烧录到开发板调试、验证代码 5、检验效果 本人使用的是朗峰 STM32F103 系列开发板,此笔记基于这款开发板记录。 1 、电路构成及原理图 重要!一定先用短路…

解决Uncaught SyntaxError: Cannot use import statement outside a module(at XXX)报错

报错原因:这个错误通常是因为你正在尝试在一个不支持 ES6 模块语法的环境中使用 import 语句。这可能是因为你的代码是在一个只支持 CommonJS 或 AMD 模块系统的环境中运行的,或者你的代码运行的环境没有正确配置以支持 ES6 模块。如果是在浏览器环境&am…

Predis Multi-Zone

A Data Flow Framework with High Throughput and Low Latency for Permissioned Blockchains 联盟链的吞吐瓶颈由共识层和网络层的数据分发过程共同决定。 Predis 协议利用了共识节点的空闲带宽,提前分发区块中的内容即bundle,减少了共识区块中的内容&…

服务器运维小技巧(三)——如何进行服务器批量管理

运维工程师在进行服务器运维时,往往一个人要同时监控几十甚至成百上千的机器,当机器数量增加时,服务器管理的难度将会大大增加。很多工程师在工作中会使用一些运维面板,比如bt,1panel等,但是这些工具往往一…

力扣 面试题 05.06. 整数转换

思路: 牵扯到二进制数,基本上要考虑位运算符,相关知识可以见http://t.csdnimg.cn/fzts7 之前做过类似的题目,大致思路就是先用按位异或^找出不同位,再用n&(n-1)计算出不同位的个数&#x…

利用Dynamo辅助设置项目浏览器——替换视图名称及子规程

前言 今天的案例,来自群友长不大的唐三岁,他自己也一直在学习Dynamo,同时他希望把自己的学习成果分享出来,本期带来的,就是他自己的研究成果: 视图名称统一替换及视图子规程自动添加 先给大家看一段视频&…

通信入门系列——线性空间理论知识

微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等 本节目录 一、线性空间 1、欧几里…

Docker本地部署Rss订阅工具并实现公网远程访问

文章目录 1. Docker 安装2. Docker 部署Rsshub3. 本地访问Rsshub4. Linux安装Cpolar5. 配置公网地址6. 远程访问Rsshub7. 固定Cpolar公网地址8. 固定地址访问 Rsshub是一个开源、简单易用、易于扩展的RSS生成器,它可以为各种内容生成RSS订阅源。 Rsshub借助于开源社…

Android Studio创建项目时gradle下载慢

先停止当前Sync,找到gradle-wrapper.properties文件,将distributionUrl修改为腾讯镜像源: distributionUrlhttps\://mirrors.cloud.tencent.com/gradle/gradle-6.5-bin.zip

Java 学习和实践笔记(16):类的理解以及初始值

类,英文名叫class。基本上对应的就是语言里的名词。 比如,房子、人、树、花、汽车等等,这些名词,这些可以定义成类。 以房子为例,作为一个房子,它一定有相应的属性,比如房顶、墙、门、窗等等&…

ElasticSearch DSL查询、排序 、分页的原理及语法

1. DSL查询分类和基本语法 ElasticSearch提供了基于Json的DSL来定义查询,常见的查询类型包括: • 查询所有:查询出所有数据,一般测试用,一般不是查出所有,一次性查询20条。例如 match_all • 全文检索(ful…

『智能遥控新境界』:远程控制APP,高效生活的秘诀!

在这个科技日新月异的时代,我们的生活被各种手机软件所包围。几乎每个人都有一个甚至多个手机,你是否也有遇到过需要远程操作自己某一台手机的场景呢?今天,我要向大家推荐一款神奇的手机远程操作神器,让你可以随时随地…