启动minio
./minio server /data01/aidacp/apps/minio/data --config-dir /data01/aidacp/apps/minio/conf --address 127.0.0.1:19090 --console-address 127.0.0.1:19091 &WARNING: Detected Linux kernel version older than 4.0.0 release, there are some known potential performance problems with this kernel version. MinIO recommends a minimum of 4.x.x linux kernel version for best performanceMinIO Object Storage ServerCopyright: 2015-2023 MinIO, Inc.License: GNU AGPLv3 <https://www.gnu.org/licenses/agpl-3.0.html>Version: RELEASE.2023-12-07T04-16-00Z (go1.21.5 linux/amd64)Status: 1 Online, 0 Offline. S3-API: http://127.0.0.1:19090 Console: http://127.0.0.1:19091 Documentation: https://min.io/docs/minio/linux/index.htmlWarning: The standard parity is set to 0. This can lead to data loss.
因为是只有一个minio节点,最后warning可以忽略
登陆minio控制台
在控制台上创建桶 buckets
bucket的命名规则
●存储桶名称的长度必须介于3 (最小)到63 (最大)个字符之间。
●存储桶名称只能由小写字母、数字、点(.) 和连字符(-) 组成。
●存储桶名称不得包含两个相邻的句点,或与连字符相邻的句点。
●存储桶名称的格式不得为IP地址(例如192.168.5.4)。
●存储桶名称不得以前缀 xn 开头--.
●存储桶名称不得以后缀 -s3alias 结尾。此后缀保留用于接入点别名。
●存储桶名称在分区中必须是唯一的。
创建用户
编写权限
可以编写自己权限控制文件,也可以用minio自带的权限文件,从文件名可以看出,有只读,只写,可读可写等。
查看readwrite
实现了对所有篮子的读写
参数含义
{ "Version": "2012-10-17", #这个日期就这样吧,虽然比较老 "Statement": [ { "Effect": "Allow", "Action": [ // 权限列表"s3:ListAllMyBuckets", // 查看所有的桶权限"s3:ListBucket", // 查看桶内对象权限"s3:GetBucketLocation", // 定位bucket权限"s3:GetObject", // 下载权限"s3:PutObject", // 上传权限"s3:DeleteObject" // 删除权限 ], "Resource": [ "arn:aws:s3:::onebucket/*" // arn:aws:s3不用动,后面用*表示所有桶,用onebucket/*表示只针对这个桶 ] } ]}
如下示例,实现读写test, 读test2目录但无下载权限
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:DeleteObject", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::test/*" ] }, { "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::test2/*" ] } ]}
赋权
权限文件编辑好后,返回到user页面
点击要赋权的用户,进入到用户详情,选择要赋权的名称,
最后状态是要enabled的。确保状态是生效的,不然不起作用。
新用户登陆minio
从上面的policies文件中看出,给用户是所有的读写权限,页面展示,上传下载也正常。
minio命令行方式创建buckets
创建bucket
run/mc mb data/buckettmp
Bucket created successfully `data/buckettmp`.
确认下是否创建成功
run/mc ls data
[2024-08-20 11:47:56 CST] 126B .minio.sys/
[2024-08-20 14:20:34 CST] 10B buckettmp/
[2024-08-20 11:48:58 CST] 28B modo/
设置别名
minio_data_A:机器A别名
http://127.0.0.A:9000:机器A ip地址
minio:机器A用户账号
123456:机器A用户密码
./mc alias set minio_data_A http://127.0.0.A:9000 minio 123456
查看已设置的别名
./mc alias listgcs URL : https://storage.googleapis.com AccessKey : YOUR-ACCESS-KEY-HERE SecretKey : YOUR-SECRET-KEY-HERE API : S3v2 Path : dnslocal URL : http://localhost:9000 AccessKey : SecretKey : API : Path : autoplay URL : https://play.min.io AccessKey : Q3AM3UQ867SPQQA43P2F SecretKey : zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG API : S3v4 Path : autos3 URL : https://s3.amazonaws.com AccessKey : YOUR-ACCESS-KEY-HERE SecretKey : YOUR-SECRET-KEY-HERE API : S3v4 Path : dns
单点启动
cat start.sh
#!/bin/bash
export MINIO_ROOT_USER=modo
export MINIO_ROOT_PASSWORD=Modo@123
nohup ./minio server /data01/aidacp/apps/minio/data --config-dir /data01/aidacp/apps/minio/conf --address "127.0.0.1:19090" --console-address "127.0.0.1:19091" > ../logs/minio.log &