Zhong__MinIO基本安装和使用

时间:2024.05.14

环境:

        腾讯云服务器 操作系统版本:CentOS Stream release 9

        MinIO版本: RELEASE.2024-05-10T01-41-38Z

目的:安装MinIO 配置Buckets和Access Keys 简单演示上传、查看和下载

说明:

作者:Zhong

简介

MinIO是一款开源的高性能的分布式存储 安装简单 使用和管理维护方便

网站:MinIO | S3 & Kubernetes Native Object Storage for AIMinIO's High Performance Object Storage is Open Source, Amazon S3 compatible, Kubernetes Native and is designed for cloud native workloads like AI.icon-default.png?t=N7T8https://min.io/

github: GitHub - minio/minio: The Object Store for AI Data InfrastructureThe Object Store for AI Data Infrastructure. Contribute to minio/minio development by creating an account on GitHub.icon-default.png?t=N7T8https://github.com/minio/minio

下载和安装

Binary下载

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

修改为可执行文件

chmod +x minio

添加到path 方便在全局直接使用minio服务

sudo mv minio /usr/local/bin/

启动MinIO  指定用户名和密码 指定数据盘 --console指定控制端口 --address指定api端口

 其中 用户名、密码和端口号都是可选项 如不指定会使用默认的设置 在启动服务后会将基本信息如api端口号、控制端口号输出到屏幕 如使用默认设置启动服务:./minio server /mnt/data 那么API和WebUI默认的用户名和密码则为minioadmin/minioadmin(版本不同可能有所不同) 在屏幕可以看到相关信息的展示

MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=Zhong2008 minio server /mnt/data --console-address ":20001" --address ":20000"

配置

服务启动后 在浏览器打开Web管理页面 url为 your ip:20001 使用指定的用户名和密码登录系统

创建Bucket

在Buckets菜单创建Bucket 每个Bucket是相互独立的空间 默认访问策略为Private 根据需求修改策略(如上传为Private 下载为Public)

在Buckets找到创建的Bucket 点进来找到Anonymous 然后 Add Access Rule 填写Prefix(根据需求填写路径参数 支持正则表达式 这儿为* 表示这个Bucket所有文件不需要认证即可访问) Access选择readonly

创建Access Key

在Access Key菜单创建访问Key 记住Access Key和Secret Key 在客户端使用时需要 其它信息按需填写

客户端连接

配置了Access Key 就可以通过客户端程序连接使用MinIO上传、查看、下载文件了 如golang、python、java等等 一般都会有相应的插件、驱动程序

上传和下载

我们平时使用MinIO 大多都是在开发时使用程序连接到MinIO来上传、下载文件 如golang、RUST、Python等语言开发 这儿简单演示下载web管理页面上传、查看、下载文件  点Upload按钮选择本地文件上传 选择文件是时右侧会显示下载、共享、预览和文件的基本信息等数据 也可以通过 your ip:20000/oa-blog/wushi.jpg 来访问查看文件 格式为:ip:端口号/Bucket名称/文件名称全称

使用supervisor管理

新建用于supervisor管理的MinIO配置文件如 minio.ini 文件 写入如下的配置即可

[program:minio]
command=minio server /mnt/data --console-address ":20001" --address ":20000"
environment=MINIO_ROOT_USER=admin,MINIO_ROOT_PASSWORD=Zhong2008
user=root
autostart = true
autorestart = true
startsecs = 5
startretries=3
stopasgroup=true
stopsignal=TERM
stopwaitsecs=5
numprocs=1

redirect_stderr=true
stderr_logfile=/usr/local/release/minio.err.log
stdout_logfile=/usr/local/release/minio.out.log
stdout_logfile_maxbytes=10MB
stdout_logfile_backups=10
stdout_capture_maxbytes=10MB

开机启动

作为系统服务管理 参照链接:Deploy MinIO: Single-Node Single-Drive — MinIO Object Storage for Linuxicon-default.png?t=N7T8https://min.io/docs/minio/linux/operations/install-deploy-manage/deploy-minio-single-node-single-drive.html

备份/恢复数据

MinIO提供了不同的方式备份数据  下面介绍一种本地备份数据的方式

备份数据

下载配置MinIO客户端程序

wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc

给MinIO设置别名 格式:./mc alias set 别名 http://ip:port username password

./mc alias set minio888 http://127.0.0.1:20000 admin Zhong2008

查看server数据

[root@VM-4-6-centos ~]# ./mc ls minio888
[2024-05-13 15:37:33 CST]     0B oa-blog/
[root@VM-4-6-centos ~]# ./mc ls minio888 --recursive
[2024-06-04 09:31:56 CST]  93KiB STANDARD oa-blog/123.png
[2024-06-03 17:06:39 CST]  30KiB STANDARD oa-blog/wushi.jpg
[root@VM-4-6-centos ~]# ./mc ls minio888/oa-blog
[2024-06-04 09:31:56 CST]  93KiB STANDARD 123.png
[2024-06-03 17:06:39 CST]  30KiB STANDARD wushi.jpg

复制数据到本地指定的路径 格式: ./mc cp minio别名/桶名称 本地路径  --recursive  可根据需求指定要复制的MinIO[桶/文件]  下面为复制oa-blog桶数据到本地当前路径下的backup目录

./mc cp minio888/oa-blog ./backup --recursive

复制完成后 backup目录的结构和数据与server一一对应

恢复数据

注意备份文件和MinIO的路径 如果在别的服务器上操作 也需要设置别名 以下操作为上传本地目录backup/oa-blog下的所有文件到server的oa-blog桶 路径根据需求指定

./mc cp ./backup/oa-blog/* minio888/oa-blog --recursive

Prometheus是一个开源的时间序列数据库和监控系统,它用于收集、存储和查询各种度量数据。MinIO是一个开源的对象存储服务器,广泛用于构建成本效益高的云存储解决方案。为了监控MinIO服务的性能和健康状况,你可以使用`minio_exporter`这个工具。 `minio_exporter`是一个由社区开发的Go语言实现的Prometheus exporter,它可以将MinIO的各种指标暴露出来,如存储桶数量、对象大小、网络流量等。要使用它来监控MinIO,你需要按照以下步骤操作: 1. **安装** minio_exporter:在支持的平台上(如Linux),通过包管理器如apt-get、yum或通过Docker直接拉取镜像安装。 ```bash # 使用apt-get安装(Ubuntu) sudo apt-get update && sudo apt-get install prometheus-minio-exporter # 或者通过Docker docker pull prom/prometheus-minio-exporter ``` 2. **配置Prometheus**:确保Prometheus服务器配置文件中添加了对`minio_exporter`的Scrape和通知规则。例如,在`prometheus.yml`中: ```yaml - job_name: 'minio' static_configs: - targets: ['minio-exporter:9091'] scrape_interval: 5s ``` 3. **启动服务**:启动Prometheus和已安装的`minio_exporter`实例。 4. **验证连接**:访问Prometheus UI(默认http://localhost:9090)并检查是否有来自`minio` job的数据。 通过这种方式,你可以实时地看到MinIO的运行状态和关键性能指标,并可以将其整合到Prometheus的警报管理和可视化体系中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我变了_我没变

随意 。。。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值