- 云原生
- 后端
- 运维
【免费下载链接】Terminus
Open-Source Personal Cloud OS for Always-On Agents
MinIO 是 Olares 内置的核心对象存储中间件,既为分布式部署下的 JuiceFS 文件系统提供统一存储后端,也为各类应用提供 S3 兼容的对象存储能力。本文基于 查看 MinIO 数据 的官方指南,完整讲解在 Olares 应用市场中安装 MinIO 服务与控制台(Dashboard)、从控制面板获取连接信息,以及通过 MinIO 控制台可视化管理存储桶与对象文件的全部步骤,并结合仓库源码揭示连接信息背后的底层实现。
MinIO 在 Olares 中的角色定位
在动手安装之前,先明确 MinIO 在 Olares 体系中的位置。根据 基础设施说明,MinIO 是一个分布式存储后端,它既可以在 Olares 中以集群方式被搭建,也可以挂载已有的外部 MinIO 实例。当 Olares 以分布式服务部署在多台机器上时,MinIO 会作为 JuiceFS 的数据存储后端,为整个 Olares 文件系统提供统一视图。
从 存储模块实现 可以看到这一联动关系:安装 JuiceFS 时,系统会通过getManagedMinIOAccessFlags读取受管 MinIO 的密码,并拼出如下连接参数:
--storage minio --bucket http://<节点IP>:9000/olares --access-key minioadmin --secret-key <密码>也就是说,MinIO 的 S3 服务端口为 9000,以minioadmin为根用户,数据桶挂在olares路径下。这正是"中间件"一词的由来:在 中间件类型定义 中,MinIO 与 PostgreSQL、Redis、MongoDB 等并列,注册为TypeMinio MiddlewareType = "minio"的中间件类型,供应用统一申请使用。
安装 MinIO 服务
在使用对象存储之前,需要先通过应用市场安装 MinIO 服务本体。
- 从启动台打开应用市场,搜索
MinIO。 - 点击获取,然后点击安装,并等待安装完成。
安装完成后,MinIO 服务及其连接信息将显示在控制面板的中间件列表中,后续获取连接信息环节会用到。
补充说明:应用市场中安装的是面向用户的应用级 MinIO 中间件实例;而 Olares 系统自身通过 CLI 安装的 MinIO 以 systemd 服务方式运行,二者在架构上是同一套 MinIO 技术栈,均可通过 S3 API 与 Web 控制台使用。
安装 MinIO 控制台
MinIO 控制台(应用市场中搜索名为MinIO Dashboard)是管理 MinIO 的图形化 Web 界面。它依赖 MinIO 服务本身,只有在 MinIO 服务就绪后才能安装,二者存在明确的先后依赖关系。
- 在 Olares 应用市场中搜索
MinIO Dashboard。 - 点击获取,然后点击安装,并等待安装完成。
获取连接信息
在建立连接之前,需要从控制面板获取 MinIO 的连接信息(用户与密码),这套凭证既用于登录 MinIO 控制台,也用于应用侧通过 S3 API 访问对象存储。
- 从启动台打开控制面板。
- 在左侧导航栏中找到中间件,并选择Minio。
- 记录信息面板中的以下信息:
- 用户:用于在 MinIO 控制台建立连接;
- 密码:用于在 MinIO 控制台建立连接。
{width=60% style="margin-left:0"}
连接信息背后的实现细节
控制面板展示的用户与密码并非凭空生成,其底层配置由 Olares 安装器在部署 MinIO 时写入。结合 存储常量定义 与 MinIO 环境模板,可以还原出完整的实现链路:
- 根用户固定为
minioadmin:常量MinioRootUser = "minioadmin"定义了 MinIO 根账号; - 密码由安装器生成并持久化:安装流程中的
GetOrSetMinIOPassword任务会在首次安装时生成 16 位随机密码;若已存在配置文件/etc/default/minio,则从其中的MINIO_ROOT_PASSWORD=读取已有密码,保证重启不丢失(见 安装任务编排); - 配置落盘位置:上述用户与密码最终写入环境文件
/etc/default/minio,同时 systemd 服务单元/etc/systemd/system/minio.service通过EnvironmentFile=-/etc/default/minio加载该配置; - 监听端口:环境模板中
MINIO_OPTS="--console-address <节点IP>:9090 --address <节点IP>:9000"表明9000 端口提供 S3 API,9090 端口提供 Web 控制台。
MinIO 控制台可视化管理
MinIO 控制台提供图形化界面,用于创建存储桶、浏览文件和管理访问权限,全程无需编写任何命令。
- 从启动台打开MinIO 控制台。
- 在登录界面,输入从控制面板获取的用户和密码。
登录成功后,即可进入管理界面,直接查看并管理存储桶与对象文件。常用的可视化操作包括:
- 创建存储桶(Bucket):点击顶部菜单进入存储桶页面,新建业务所需的桶并设置访问策略;
- 浏览与管理对象:进入具体存储桶,可上传、下载、删除文件,并查看对象的元数据;
- 管理访问权限:在 Access Keys / 身份管理区域创建具备指定权限的访问密钥,供第三方 S3 客户端或应用接入。
应用如何消费 MinIO 中间件
对于希望使用 MinIO 存储能力的应用,Olares 通过 MiddlewareRequest 资源模板 统一供给连接信息。模板中middleware: minio的请求包含如下关键字段:
apiVersion: apr.bytetrade.io/v1alpha1 kind: MiddlewareRequest metadata: name: {{ .AppName }}-minio namespace: {{ .Namespace }} spec: middleware: minio minio: allowNamespaceBuckets: {{ .Middleware.AllowNamespaceBuckets }} buckets: - name: {{ $v.Name }} password: valueFrom: secretKeyRef: name: {{ .AppName }}-{{ .Namespace }}-minio-password key: "password" user: {{ .Middleware.Username }}可见应用申请 MinIO 中间件时,系统会按应用名与命名空间自动创建独立的存储桶和密码 Secret,并默认从{{ .AppName }}-{{ .Namespace }}-minio-password中读取密码,实现"一应用一凭证"的隔离供给。对应地,在 应用信息聚合接口 中,values["minio"] = map[string]interface{}{"buckets": map[string]interface{}{}}会把已申请的存储桶信息注入到应用的 Helm 渲染值中,应用内部即可通过标准的 S3 客户端使用。
安装与运行状态自查
结合 安装任务编排 中的任务链,若安装后服务异常,可按下述顺序排查:
- 服务状态:
CheckMinioState任务通过systemctl --no-pager -n 0 status minio检查服务健康状态,可在 Olares 宿主机终端执行该命令确认 MinIO 服务是否 active; - 数据目录:MinIO 数据目录为
/olares/data/minio/vol1(常量MinioDataDir),安装器会为数据目录创建minio系统用户与用户组并授权(chown minio:minio),若权限异常可重点检查该目录; - 配置一致性:确认
/etc/default/minio中MINIO_ROOT_USER、MINIO_ROOT_PASSWORD、MINIO_VOLUMES、MINIO_OPTS四项均已正确设置,其中MINIO_VOLUMES缺失时 systemd 单元会通过ExecStartPre直接报错退出; - 安装顺序:MinIO 控制台依赖 MinIO 服务就绪,务必先安装 MinIO 服务、确认其在控制面板中间件列表中出现后,再安装 MinIO Dashboard。
小结
至此,你已掌握在 Olares 中安装 MinIO 服务与 MinIO Dashboard 控制台的完整流程,能够从控制面板获取用户与密码,并通过 Web 控制台完成存储桶创建、文件浏览与访问权限管理。更进一步,通过阅读 存储模块、环境配置模板 与 中间件请求模板 等源码,你可以理解这套对象存储能力从系统安装、凭证生成、端口暴露到应用隔离供给的完整实现链路,为后续自建应用接入 S3 对象存储提供参考。
- 云原生
- 后端
- 运维
【免费下载链接】Terminus
Open-Source Personal Cloud OS for Always-On Agents
相关推荐
Olares 对象存储管理实战:安装 MinIO 服务并通过 MinIO 控制台查看与管理数据
Olares 对象存储管理实战:安装 MinIO 服务并通过 MinIO 控制台查看与管理数据 在 Olares 中,MinIO 是系统内置的 S3 兼容对象存
云原生后端运维MinIO对象存储Web管理控制台:简化云存储管理的完整指南
MinIO对象存储Web管理控制台是一个专为MinIO分布式对象存储系统设计的可视化界面,它将复杂的S3 API操作转化为直观的点击式操作。通过这个强大的管理平
后端前端存储MinIO 控制台:一站式对象存储管理平台
MinIO 控制台:一站式对象存储管理平台 项目介绍 MinIO Console 是一个开源的 Web 应用程序,用于可视化管理和监控 MinIO 对象存储服务
后端前端存储
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考