中文文档

单节点单硬盘部署MinIO

这个步骤中介绍了如何在一个单节点单驱动(SNSD)的配置中部署MinIO,用于早期的开发和评估。 SNSD 部署不会提供任何超出底层存储卷实现的额外可靠性或可用性(RAID,LVM,ZFS等)。 SNSD 部署使用零奇偶校验的纠删码后端,这提供的可靠性或可用性与底层存储卷实现的一致,没有额外的可靠性或可用性。 这些部署最适合用于本地测试和评估,或者用于没有可用性或性能要求的小规模数据工作负载。

重要

RELEASE.2022-10-29T06-21-33Z 完全删除了 已弃用的文件和网关系统 后端. 如果MinIO在启动时检测到存在的文件系统后端文件,它会返回一个错误。

要从FS后端部署进行迁移,使用 mc mirror or mc cp 命令将数据复制到新的MinIO SNSD 部署中. 同时,您还需要在 SNSD 部署上重新创建必要的用户、组、策略和存储桶配置

预先存在的数据

MinIO的启动行为取决于指定的存储卷或路径的内容。 服务器会检查MinIO内部的后端数据以及现有文件夹和文件的结构。 以下表格列出了可能的存储卷状态和MinIO的行为:

存储容量状态

行为

不包含 任何文件、文件夹或MinIO后端数据的空目录

MinIO以 SNSD 模式启动并创建零冗余后端

存在 SNSD 零冗余对象和MinIO后端数据

MinIO以 SNSD 模式恢复

存在文件系统文件夹、文件,但没有MinIO后端数据

MinIO返回错误并且不启动

存在文件系统文件夹、文件和传统的“FS模式”后端数据

MinIO返回错误并且不启动

在 RELEASE.2022-10-29T06-21-33Z 版本发生变更.

先决条件

存储要求

以下要求概述了MinIO硬件建议的 Storage 部分:

使用本地存储

直接连接存储(DAS)在性能和一致性方面显著优于网络存储( NAS, SAN, NFS)。 MinIO 强烈建议使用闪存存储(NVMe、SSD)作为主要或 “热” 数据。

对驱动器使用 XFS 格式化

MinIO 强烈建议为存储格式化 XFS 文件系统的驱动器。 MinIO 在其内部测试和验证套件中使用 XFS,这增加了对所有规模下的性能和行为表现的额外信心。

持久化驱动器挂载和映射跨重启

为了确保在节点重启后驱动器到挂载点的映射一致,请使用 /etc/fstab 文件。

在非Linux操作系统中,应使用等效的驱动器挂载管理工具。

Exclusive access to drives

MinIO 要求 专有 对提供给对象存储的驱动器或卷的访问。 其他任何进程、软件、脚本或人员都不得直接对提供给MinIO的驱动器或卷执行 任何 操作,也不得对MinIO放置在其上的对象或文件执行操作。

除非由MinIO工程部门指导,否则不要使用脚本或工具直接修改、删除或移动提供给MinIO的驱动器上的任何数据片段、校验片段或元数据文件,包括从一个驱动器或节点移动到另一个驱动器或节点。 这些操作很可能会导致广泛的数据损坏和丢失,超出了MinIO的修复能力。

内存要求

在 RELEASE.2024-01-28T22-35-53Z 版本发生变更: MinIO 在启动时预分配 2GiB 的系统内存。

MinIO 建议每个主机 最小 32GiB 的内存。 请参阅 Memory 以获取有关 MinIO 中内存分配的更多指导。

布署单节点单磁盘的MinIO服务

以下流程部署了由单个MinIO服务器和单个驱动器或存储卷组成的MinIO。

网络文件系统卷打破一致性保证

MinIO强制实施 写入后读取写入后列举 的一致性模型, 需要本地驱动器文件系统。

如果底层存储卷是NFS或类似的网络附加存储卷, MinIO无法提供一致性保证。

1) 下载MinIO服务器文件

从以下URL下载MinIO可执行文件:

https://dl.minio.org.cn/server/minio/release/windows-amd64/minio.exe

下一步是运行可执行文件的指令。 无法通过资源管理器或双击文件来运行可执行文件。 相反,你需要调用可执行文件来启动服务器。

2) 为 MinIO 准备数据路径

确保数据路径为空,且不包含任何现有文件,包括隐藏或Windows系统文件。

如果指定了一个不为MinIO专用的驱动器,考虑创建一个专用于存储MinIO数据的专用文件夹,例如 D:/Minio

3) 启动 MinIO 服务器

打开命令提示符或PowerShell,并执行以下命令来在该会话中启动MinIO SNSD 部署:

minio.exe server D:/minio --console-address ":9001"

输出应类似于以下内容:

Status:         1 Online, 0 Offline.
API: http://192.168.2.100:9000  http://127.0.0.1:9000
Console: http://192.168.2.100:9001 http://127.0.0.1:9001

Command-line: https://minio.org.cn/docs/minio/linux/reference/minio-mc.html
   $ mc alias set myminio http://10.0.2.100:9000 minioadmin minioadmin

Documentation: https://minio.org.cn/docs/minio/linux/index.html

API 列出了客户端可以访问MinIO S3 API的网络接口和端口。 Console 列出了网络接口和端口,客户端可以通过这些接口和端口访问MinIO网页端的控制台。

4) 连接到 MinIO 服务器

您可以通过在首选的浏览器中输入MinIO服务器 Console控制台 中的任何主机名或IP地址来访问MinIO控制台,例如http://localhost:9001。

登录MinIO的用户名和密码配置参数为 MINIO_ROOT_USERMINIO_ROOT_PASSWORD 这些配置可以在在容器指定的环境文件中进行修改。

MinIO控制台 displaying Buckets view in a fresh installation

您可以使用MinIO控制台进行一般管理任务,如身份和访问管理、指标和日志监控或服务器配置。每个MinIO服务器都包含其自己的嵌入式MinIO控制台。 如果您的本地主机防火墙允许外部访问控制台端口,则同一网络上的其他主机可以使用您的本地主机的IP地址或主机名访问控制台。

你可以使用终端或Shell访问MinIO部署,请参考以下文档 MinIO客户端 (mc) 。 请查看关于 MinIO客户端安装快速入门 的安装的说明 mc

使用下面的命令 alias 可创建一个新的mc连接,连接对应于的MinIO部署的S3服务器。

请指定来自MinIO 服务器的 API 对应的主机名或IP地址,例如: http://localhost:9000

mc alias set myminio http://localhost:9000 myminioadmin minio-secret-key-change-me
  • myminio 替换为所需的别名。

  • myminioadmin 替换为容器指定的环境文件中的 MINIO_ROOT_USER 值。

  • minio-secret-key-change-me 替换为容器指定的环境文件中的 MINIO_ROOT_PASSWORD 值。

您可以使用任何 mc 命令与容器进行交互。 如果您的本地主机防火墙允许外部访问MinIO S3 API端口,同一网络上的其他主机可以使用您本地主机的IP或主机名访问MinIO部署。

Join Slack 商业支持购买咨询