OpenObserve云原生可观测平台本地Docker部署与远程访问实战教程

本文主要是介绍OpenObserve云原生可观测平台本地Docker部署与远程访问实战教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 前言
    • 1. 安装Docker
    • 2. Docker镜像源添加方法
    • 3. 创建并启动OpenObserve容器
    • 4. 本地访问测试
    • 5. 公网访问本地部署的OpenObserve
      • 5.1 内网穿透工具安装
      • 5.2 创建公网地址
    • 6. 配置固定公网地址

前言

本文主要介绍如何在Linux系统使用Docker快速本地化部署OpenObserve云原生可观测平台,并结合cpolar内网穿透工具轻松实现远程访问本地搭建的平台界面管理和可视化各种可观察数据。

OpenObserve是一个基于 Rust 的云原生可观察性平台,可以处理 PB 级的数据,是一款用于日志、指标、分析和追踪,真实用户监控(RUM)的可观测工具,与需要理解和调整大量设置的Elasticsearch相比,它简单明了,易于操作。而且日志存储成本降低约 140 倍,几分钟就能快速部署并运行观察。

除此之外,OpenObserve有着全面的数据支持,如日志、指标、跟踪数据,并完全兼容 OpenTelemetry。具备高级查询功能,支持 SQL 和 PromQL 查询,提供丰富的数据可视化选项。还自带用户界面,无需单独安装,可以无缝替代Elasticsearch。

目前已经获得了11+K的star,支持多平台本地化部署,接下来就详细演示一下如何在ubuntu使用docker快速部署。

Home

1. 安装Docker

本教程操作环境为Linux Ubuntu系统,在开始之前,我们需要先安装Docker

在终端中执行下方命令安装docker:

sudo curl -fsSL https://github.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun

如果上边命令中访问不了Github,可以使用Gitee的链接安装:

sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun

然后启动Docker即可

sudo systemctl start docker

2. Docker镜像源添加方法

如因网络问题拉取不到镜像,

可尝试在终端执行 sudo nano /etc/docker/daemon.json

输入:

{
"registry-mirrors": [
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn"
]
}

保存退出

然后执行:

sudo systemctl restart docker

3. 创建并启动OpenObserve容器

执行下方命令:

sudo docker run -d \--name openobserve \-v $PWD/data:/data \-p 5080:5080 \-e ZO_ROOT_USER_EMAIL="root@example.com" \-e ZO_ROOT_USER_PASSWORD="Complexpass#123" \public.ecr.aws/zinclabs/openobserve:latest

1725437266404

4. 本地访问测试

启动OpenObserve容器后,打开浏览器输入ubuntu主机IP加端口号5080即可访问其Web UI 界面。

7c358bb0cbf12d20fde1757e4062134

输入启动容器时,设置的登录邮箱(root@example.com)和密码(Complexpass#123)即可登录:

image-20240904161245205

在采集页面,可以使用多种遥测数据的采集方式添加数据:

1725438196962

日志

Logs

可视化和仪表板

Dashboard

Dashboard

前端监控

性能分析

Performance

会话重放

Session replay

警报

Alerts

5. 公网访问本地部署的OpenObserve

不过我们目前只能在本地访问刚刚使用docker部署的OpenObserve平台,如果出门在外,想要随时远程访问在本地内网主机server上部署的O2查看数据,应该怎么办呢?

我们可以使用cpolar内网穿透工具来实现公网环境下的远程访问需求。

5.1 内网穿透工具安装

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

curl https://get.cpolar.sh | sudo sh

image-20240801132238671

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

image-20240801133735424

5.2 创建公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:OpenObserve 注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:5080
  • 域名类型:随机域名
  • 地区:选择China VIP

1725438550809

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在异地使用其他电脑或手机平板,使用任意一个地址打开浏览器中访问即可。

1725438697933

如下图所示,成功实现在异地使用公网地址远程访问本地部署的 OpenObserve平台Web UI 界面 !

image-20240904163350281

小结

为了方便演示,我们在上边的操作过程中使用了cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期远程访问本地搭建的OpenObserve或者其他本地部署的服务的需求,但又不想每天重新配置公网地址,还能获得更高的带宽和更多的功能,那我推荐大家为本地部署的服务配置一个固定的二级子域名。

6. 配置固定公网地址

登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择China VIP,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称,这里我填写的是myoo1,大家也可以自定义喜欢的名称。

1725439136256

保留成功后复制保留成功的二级子域名的名称:myoo1,返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道OpenObserve,点击右侧的编辑:

1725439221797

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

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

点击更新(注意,点击一次更新即可,不需要重复提交)

1725439275429

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

1725439345495

最后,我们使用任意一个固定公网地址在浏览器访问,可以看到访问成功,这样一个固定且永久不变的二级子域名公网地址就设置好了,随时随地都可以远程访问本地部署的 openobserve 平台来观测数据了。

1725439510447

以上就是如何在Linux Ubuntu系统使用Docker本地化部署openobserve,并结合cpolar内网穿透工具配置公网地址,实现随时随地远程访问本地搭建服务的全部流程,感谢您的观看。如果你有公开一个本地网站、远程开发调试、远程控制各种系统桌面等需求,不妨下载体验一下cpolar!

这篇关于OpenObserve云原生可观测平台本地Docker部署与远程访问实战教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1140643

相关文章

Python并行处理实战之如何使用ProcessPoolExecutor加速计算

《Python并行处理实战之如何使用ProcessPoolExecutor加速计算》Python提供了多种并行处理的方式,其中concurrent.futures模块的ProcessPoolExecu... 目录简介完整代码示例代码解释1. 导入必要的模块2. 定义处理函数3. 主函数4. 生成数字列表5.

Java使用HttpClient实现图片下载与本地保存功能

《Java使用HttpClient实现图片下载与本地保存功能》在当今数字化时代,网络资源的获取与处理已成为软件开发中的常见需求,其中,图片作为网络上最常见的资源之一,其下载与保存功能在许多应用场景中都... 目录引言一、Apache HttpClient简介二、技术栈与环境准备三、实现图片下载与保存功能1.

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.

Linux使用scp进行远程目录文件复制的详细步骤和示例

《Linux使用scp进行远程目录文件复制的详细步骤和示例》在Linux系统中,scp(安全复制协议)是一个使用SSH(安全外壳协议)进行文件和目录安全传输的命令,它允许在远程主机之间复制文件和目录,... 目录1. 什么是scp?2. 语法3. 示例示例 1: 复制本地目录到远程主机示例 2: 复制远程主

IDEA如何实现远程断点调试jar包

《IDEA如何实现远程断点调试jar包》:本文主要介绍IDEA如何实现远程断点调试jar包的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录问题步骤总结问题以jar包的形式运行Spring Boot项目时报错,但是在IDEA开发环境javascript下编译

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

Python使用Code2flow将代码转化为流程图的操作教程

《Python使用Code2flow将代码转化为流程图的操作教程》Code2flow是一款开源工具,能够将代码自动转换为流程图,该工具对于代码审查、调试和理解大型代码库非常有用,在这篇博客中,我们将深... 目录引言1nVflRA、为什么选择 Code2flow?2、安装 Code2flow3、基本功能演示