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实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

Elasticsearch 在 Java 中的使用教程

《Elasticsearch在Java中的使用教程》Elasticsearch是一个分布式搜索和分析引擎,基于ApacheLucene构建,能够实现实时数据的存储、搜索、和分析,它广泛应用于全文... 目录1. Elasticsearch 简介2. 环境准备2.1 安装 Elasticsearch2.2 J

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Pandas使用SQLite3实战

《Pandas使用SQLite3实战》本文主要介绍了Pandas使用SQLite3实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1 环境准备2 从 SQLite3VlfrWQzgt 读取数据到 DataFrame基础用法:读

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre