目录创建

mkdir -p /opt/minio/run && mkdir -p /etc/minio && mkdir -p /indata/disk_0/minio/data
  • run:启动脚本及二进制文件目录
  • /etc/minio:配置文件目录
  • data:数据存储目录

下载 minio

wget https://dl.min.io/server/minio/release/linux-amd64/minio -P /opt/minio/run/

配置启动文件

vi /opt/minio/run/run.sh
#!/bin/bash
export MINIO_ROOT_USER=Minio
export MINIO_ROOT_PASSWORD=Test1234!
/opt/minio/run/minio server --config-dir /etc/minio --address ":9000" --console-address ":9001" \
http://192.168.1.1/indata/disk_0/minio/data \
http://192.168.1.2/indata/disk_0/minio/data \
http://192.168.1.3/indata/disk_0/minio/data
  • MINIO_ROOT_USER : 用户名,长度最小是5个字符 (对应弃用配置: MINIO_ACCESS_KEY)
  • MINIO_ROOT_PASSWORD : 密码,密码不能设置过于简单,不然minio会启动失败,长度最小是8个字符 (对应弃用配置: MINIO_SECRET_KEY)
  • –config-dir :指定集群配置文件目录
  • 这里的用户名和密码既可以作为页面的登录用户密码,也可以作为连接 s3a 文件的密钥
  • –address “:9000” : 后端 API 服务监听的网络地址,: 表示监听所有可用的网络接口(即服务器上的所有 IP 地址);9000 是默认的 API 端口号
  • –console-address “:9001” : 该参数指定 MinIO 内置管理控制台(Web UI)监听的网络地址;同样使用 : 表示监听所有网络接口;9001 是默认的控制台端口号

如果使用弃用的 MINIO_ACCESS_KEY 和 MINIO_SECRET_KEY 则会有告警:

INFO: WARNING: MINIO_ACCESS_KEY and MINIO_SECRET_KEY are deprecated. Please use MINIO_ROOT_USER and MINIO_ROOT_PASSWORD

如果服务器配置了代理(如 clash代理),则可能会导致启动失败,需要在 run.sh 中添加(启动命令前):

unset http_proxy
unset https_proxy

这样就可以在启动 minio 时不走代理地址了~

配置为系统服务

vi /usr/lib/systemd/system/minio.service

[Unit]
Description=Minio service
Documentation=https://docs.minio.io/[Service]
WorkingDirectory=/indata/disk_0/minio/data
ExecStart=/opt/minio/run/run.shRestart=on-failure
RestartSec=5[Install]
WantedBy=multi-user.target

注意:这里的路径要和前面的配置一致

启动集群

systemctl daemon-reload
systemctl enable minio && systemctl restart minio
systemctl status minio

每个节点均返回如下结果则代表成功

可以通过查看端口进程进一步确认

这种方式返回的启动日志可能不是很全,可以直接运行脚本查看更完整的日志

可以看到第一个启动的节点会一直等待其他节点连接成功。

Web UI

浏览器输入集群任意节点地址+9001 (输入9000会自动跳转到9001)端口,即可访问minio:
http://192.168.1.1:9001/
http://192.168.1.2:9001/
http://192.168.1.3:9001/

登录

创建Bucket

上传文件


创建密钥


保存密钥

"accessKey":"uBoubbhrhXhfw8iQhfMc"
"secretKey":"S6N7xkZme3wGHgd3Y6kKSpqKnYAQRkPfyPWR7Lo7"

Nginx 代理

  • 负载均衡:将客户端请求平均分配到各个 MinIO 节点
  • 统一入口:客户端只需知道 Nginx 服务器地址,无需关心后端具体节点

安装 Nginx 并启动

yum install -y nginx
systemctl enable nginx && systemctl restart nginx && systemctl status nginx

配置代理

vi /etc/nginx/conf.d/minio.conf
upstream minio_web{server 192.168.1.1:9001;server 192.168.1.2:9001;server 192.168.1.3:9001;
} server {listen       80;listen       [::]:80;server_name  _;location / {proxy_pass http://minio_web;proxy_set_header Host $http_host;client_max_body_size 1000m;}
}
  • 仅需代理 Web UI 端口即可
  • 简化访问:使用 80 端口(默认 HTTP 端口)访问 API 服务,无需指定端口
  • 也可以根据实际情况代理为其他端口

重启 Nginx

systemctl restart nginx        

测试代理访问地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/92450.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/92450.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/92450.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot + ShardingSphere 实现分库分表 + 读写分离实战

🚀 Spring Boot ShardingSphere 实现分库分表 读写分离(涵盖99%真实场景) 🏷️ 标签:ShardingSphere、分库分表、读写分离、MySQL 主从、Spring Boot 实战 分库分表 vs 读写分离 vs 主从配置与数据库高可用架构区别 …

将普通用户添加到 Docker 用户组

这样可以避免每次使用 Docker 命令时都需要 sudo。以下是具体步骤:1. 创建 Docker 用户组(如果尚未存在) 默认情况下,安装 Docker 时会自动创建 docker 用户组。可以通过以下命令检查: groupadd docker(如果…

Scrapy(一):轻松爬取图片网站内容​

目录 一、CrawlSpider 简介​ 二、实战案例:图片网站爬取​ 三、代码解析:核心组件详解​ 类定义: 2.核心属性:​ 3.爬取规则(Rules):​ 4.数据提取方法(parse_item)…

使用 systemd 的原生功能来实现 Redis 的自动监控和重启,而不是依赖额外的脚本最佳实践方案

使用 systemd 的原生功能来实现 Redis 的自动监控和重启,而不是依赖额外的脚本最佳实践方案方案 1:配置 systemd 服务文件(推荐)1. 检查/创建 Redis 的 systemd 服务文件2. 配置关键参数(覆盖配置示例)3. 重…

Eclipse 代码模板

Eclipse 代码模板 引言 Eclipse 作为一款功能强大的集成开发环境(IDE),深受广大开发者的喜爱。在编程过程中,使用代码模板可以大大提高开发效率,减少重复劳动。本文将详细介绍 Eclipse 代码模板的配置、使用方法以及一…

输电线路防外破声光预警装置 | 防山火/防钓鱼/防施工安全警示系统

在输电网络的安全保障中,外力破坏是一个不容忽视的问题,各类隐患可能对电力系统造成严重影响。TLKS-PMG-WP 输电线路声光防外破警示装置在应对这类挑战时,有着独特的技术表现,下面从功能和技术参数两方面进行详细介绍。核心功能解…

STM32——STM32CubeMX

总:STM32——学习总纲 一、简介 注意,非逻辑代码。 可兼容不同系列的STM32Cube固件包。 STM32Cube前置知识链接: STM32——HAL库 不可过多依赖,此工具只针对STM32芯片,类似英飞凌芯片无法配置。主要用于参考。 二、安…

Java NIO 核心原理与秋招高频面试题解析

一、NIO 概述Java NIO(New I/O 或 Non-blocking I/O)是 Java 1.4 引入的一套全新 I/O API,位于 java.nio 包下。NIO 提供了与传统 BIO(Blocking I/O)完全不同的 I/O 处理方式,通过非阻塞模式、缓冲区&#…

vue3+element-plus,el-popover实现筛选弹窗的方法

实现一个筛选框,点击筛选按钮出现弹窗,弹窗内有选择框/输入框/单选框等等,底部有重置/确定两个按钮。需求:点击筛选外部其他位置可以关闭弹窗,关闭弹窗后已编辑的数据不保存,点击确定按钮关闭弹窗&#xff…

python每日一题 贪心算法练习

在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。给定两个整数数组 gas 和 cost &…

Python + Pika RabbitMQ集群压测完整方案

一、最近搭建了个rabbitmq集群 三个磁盘节点,上生产环境之前想做个压测,测试下稳定性,参考Deepseek做了如下测试方案二、核心代码实现: 配置文件 (config.py) import os RABBITMQ_NODES [amqp://admin:123456192.168.0.175:8101,…

【第7话:相机模型3】自动驾驶IPM图像投影拼接技术详解及代码示例

IPM图像投影拼接技术详解 IPM(逆透视映射)图像投影拼接技术是一种在计算机视觉中广泛应用的图像处理方法,主要用于将多个透视视图的图像转换为鸟瞰视图并拼接成一个无缝的大场景图像。该技术特别适用于自动驾驶、机器人导航和监控系统等领域&…

【测试工程思考】测试自动化基础能力建设

1 回顾 传统软件研发体系下定义的软件测试是从用户视角设计的。测试是试图穷尽用户行为的工程,从测试用例(use case)的英文定义就可见一般。测试的逻辑资产就是用自然语言去描述用户的操作行为或路径。 但随着软件工程向分布式架构和敏捷交付…

进阶向:AI聊天机器人(NLP+DeepSeek API)

什么是AI聊天机器人? AI聊天机器人是一种通过自然语言处理(NLP)技术模拟人类对话的智能程序系统。其核心是建立在机器学习算法和大型语言模型基础上的对话引擎,能够理解用户的自然语言输入,分析语境和意图,并生成符合上下文的相关回复。 这类机器人系统通常包含以下几个…

一个C#的段子

猜猜按钮的结果是啥。 public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } public static bool flag true; privat…

使用 gptqmodel 量化 Qwen3-Coder-30B-A3B-Instruct

代码部分 : quantize_qwen3_coder_30b_a3b_instruct_gptq.py import os########## 环境变量设置 ########## # 当前可用的 CUDA 编号 os.environ["CUDA_VISIBLE_DEVICES"] "1" # GPU 显存资源片段优化 os.environ["PYTORCH_CUDA_ALLOC_CONF"] …

基于python、django的疫苗接种管理系统

基于python、django的疫苗接种管理系统

Go语言实战案例:使用sync.Map构建线程安全map

在并发编程中,共享资源的访问是一个绕不开的问题。Go 中的 map 在并发读写时是不安全的,直接使用可能导致程序 panic。因此,在多协程同时访问 Map 的场景下,必须采取有效的同步措施。本篇将通过一个实战案例,介绍 Go 的…

关于vue2中对接海康摄像头以及直播流rtsp或rtmp,后台ffmpeg转码后通过ws实现

最近项目中需要对接摄像头监控,海康摄像头为rtsp流格式有一个软件VLC media player,可以在线进行rtsp或者rtmp流播放,可用来测试流地址是否可用功能实现思路为后台通过fmpeg把rtsp流进行转码,然后通过ws方式进行一帧一帧推送。&am…

Docker容器强制删除及文件系统修复完整指南

Docker容器强制删除及文件系统修复完整指南 故障现象与原因分析 ​故障表现​: ERROR: for c9ca40be974d_OpIsosMD_OB unable to remove filesystem unlinkat /data/docker/storage/containers/c9ca40be974d...: structure needs cleaning​根本原因​:…