MinIO搭建部署

embedded/2025/3/28 3:54:25/

1、命令行安装
访问monio官网下载应用程序

# wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio-20250228095516.0.0-1.x86_64.rpm -O minio.rpm
# sudo dnf install minio.rpm
# mkdir ~/minio
# minio server ~/minio --console-address :9001

2、docker安装部署

docker run -p 9000:9000 -p 9001:9001 --name minio \-v /mnt/data:/data \-e "MINIO_ROOT_USER=minioadmin" \-e "MINIO_ROOT_PASSWORD=minioadmin" \minio/minio server /data --console-address ":9001"

3、docker安装集群
1)准备多台服务器
每台服务器上都需要有一个数据目录,确保各节点之间网络互通。
2)启动分布式集群
假设有四台服务器(节点 1 至节点 4),可以使用 Docker 方式部署如下:

在每台服务器上执行类似命令,假设 IP 分别为 node1, node2, node3, node4:

每台节点启动时都需要指定所有节点的路径,确保数据同步与冗余。部署后,可以通过管理控制台查看集群状态。

docker run -p 9000:9000 -p 9001:9001 --name minio \-v /mnt/data:/data \-e "MINIO_ROOT_USER=minioadmin" \-e "MINIO_ROOT_PASSWORD=minioadmin" \minio/minio server http://node1/data http://node2/data http://node3/data http://node4/data --console-address ":9001"

4、Kubernetes 部署

对于大规模集群环境,推荐使用 Kubernetes 部署 MinIO。你可以参考官方提供的 MinIO Operator 或使用 Helm Chart 来自动化部署。简单步骤如下:

1)安装 MinIO Operator 或 Helm Chart

Operator 方式:按照项目文档安装 Operator,然后定义 MinIO 集群 CRD。
Helm 方式:

helm repo add minio https://charts.min.io/
helm install minio minio/minio --set accessKey=minioadmin --set secretKey=minioadmin

2)配置持久化存储与网络
根据 Kubernetes 集群实际情况配置存储卷和服务暴露方式(ClusterIP、NodePort 或 LoadBalancer)。

  • 单节点部署:适合测试环境,使用二进制或 Docker 部署,简单快速。
  • 分布式部署:适用于生产环境,需要多台服务器互联,保证高可用性与数据冗余。
  • Kubernetes 部署:适用于大规模环境,通过 Operator 或 Helm 自动化管理集群。
  • 根据你的需求和环境选择合适的部署方式,并确保配置好数据持久化、网络互通以及安全访问。
    5、登录web管理控制台
    http://localhost:9001/browser
    登录账号密码是我们启动的时候配置的
    -e "MINIO_ROOT_USER=minioadmin"
    -e "MINIO_ROOT_PASSWORD=minioadmin"
    在这里插入图片描述
    创建存储桶
    在这里插入图片描述
四个选项说明
  • MinIO uses buckets to organize objects. A bucket is similar to a folder or directory in a filesystem, where each bucket can hold an arbitrary number of objects.
  • Versioning allows to keep multiple versions of the same object under the same key.
  • Object Locking prevents objects from being deleted. Required to support retention and legal hold. Can only be enabled at bucket creation.
  • Quota limits the amount of data in the bucket.
  • Retention imposes rules to prevent object deletion for a period of time. Versioning must be enabled in order to set bucket retention policies.
四个选项说明中文意思
  • MinIO 使用存储桶来组织对象。存储桶类似于文件系统中的文件夹或目录,每个存储桶可以容纳任意数量的对象。
  • 版本控制允许使用同一个密钥保存同一对象的多个版本。
  • 对象锁定可防止对象被删除。需要支持保留和合法保留。只能在创建存储桶时启用。
  • 配额限制存储桶中的数据量。
  • 保留会施加规则以防止在一段时间内删除对象。必须启用版本控制才能设置存储桶保留策略。

http://www.ppmy.cn/embedded/176587.html

相关文章

MySQL原理:逻辑架构

目的:了解 SQL执行流程 以及 MySQL 内部架构,每个零件具体负责做什么 理解整体架构分别有什么模块每个模块具体做什么 目录 1 服务器处理客户端请求 1.1 MySQL 服务器端逻辑架构说明 2 Connectors 3 第一层:连接层 3.1 数据库连接池(Conn…

基于深度学习的自动驾驶目标检测系统

作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参与学生毕业答辩指导,…

webpack等构建工具如何支持移除未使用的代码

Webpack 等构建工具通过 Tree Shaking(摇树优化)和 Dead Code Elimination(无用代码消除)技术来移除未使用的代码。以下是具体实现原理、配置方法及最佳实践: 一、Tree Shaking 的原理 Tree Shaking 是一种基于 ES Mo…

基于python+django的旅游信息网站-旅游景点门票管理系统源码+运行步骤

该系统是基于pythondjango开发的旅游景点门票管理系统。是给师弟做的课程作业。大家学习过程中,遇到问题可以在github咨询作者。学习过程问题可以留言哦 演示地址 前台地址: http://travel.gitapp.cn 后台地址: http://travel.gitapp.cn/ad…

K8S学习之基础四十一:Prometheus基于Pushgateway采集数据

Prometheus基于Pushgateway采集数据 ​ 拉取pushgageway镜像,启动容器 docker pull pushgateway docker run -d --name pushgateway -p 9091:9091 prom/pushgateway​ 浏览器查看9091端口 ​ 修改prometheus-alertmanager-cfg.yaml文件,在k8s-master…

【从零实现Json-Rpc框架】- 入门准备篇

📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…

Netty源码—3.Reactor线程模型三

大纲 5.NioEventLoop的执行总体框架 6.Reactor线程执行一次事件轮询 7.Reactor线程处理产生IO事件的Channel 8.Reactor线程处理任务队列之添加任务 9.Reactor线程处理任务队列之执行任务 10.NioEventLoop总结 5.NioEventLoop的执行总体框架 (1)Reactor线程所做的三件事情…

【UEC++】AI行为树及其相关蓝图部分在C++中的实现

前言 在UE开发中,AI逻辑的书写是一个极其重要的部分。在本人于UE的学习过程中,认为AI的逻辑主要由以下几个基本的部分构成:AIController、作为AI的Character、BehaviorTree、Blackboard、Tasks、Service以及装饰器。本文也将主要就这几个部分…