部署文件不切片的Minio-Server
MinIO 是一个高性能的对象存储,原生支持 Kubernetes 部署的解决方案。 MinIO也提供了一个 Amazon Web Services S3 兼容 API 并支持所有核心 S3 功能。
文件不切片的MinIO
部署Minio1
2
3
4
5
6
7
8
9mkdir -p /data1/release /data/minio /data2/minio-data
cd /data1/release
wget -c 'https://dl.min.io/server/minio/release/linux-amd64/archive/minio.RELEASE.2021-02-14T04-01-33Z'
wget -c "https://dl.min.io/client/mc/release/linux-amd64/mc"
mv minio.RELEASE.2021-02-14T04-01-33Z /data/minio/minio
mv mc /data/minio/
cd /data/minio
chmod +x minio mc
授权1
2
3
4groupadd -r minio-user
useradd -M -r -g minio-user minio-user
chown -R minio-user:minio-user /data/minio /data2/minio-data
chmod u+rxw /data2/minio-data
minio配置文件1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20$ cd /data/minio
$ cat minio.env
# Root user for the server.
MINIO_ROOT_USER="minioroot"
# Root secret for the server.
MINIO_ROOT_PASSWORD="password"
# Standard storage class
MINIO_STORAGE_CLASS_STANDARD="4"
# Reduced redundancy storage class(RSS)
MINIO_STORAGE_CLASS_RRS="2"
# Following environment variables are used in systemd file.
# Volume to be used for MinIO server.
#MINIO_VOLUMES="http://minio-test1/data4/minio" #集群版本使用这个
MINIO_VOLUMES="/data4/minio-data" #单节点使用这个
# Use if you want to run MinIO on a custom port.
MINIO_OPTS="--address 10.73.9.3:9199"
minio-server启动配置文件1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33$ cat /etc/systemd/system/minio-server.service
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/data/minio/minio
[Service]
WorkingDirectory=/data/minio/
User=minio-user
Group=minio-user
EnvironmentFile=/data/minio/minio.env
ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi"
ExecStart=/data/minio/minio server $MINIO_OPTS $MINIO_VOLUMES
# Let systemd restart this service always
Restart=always
# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=1048576
# Specifies the maximum number of threads this process can create
TasksMax=infinity
# Disable timeout logic and wait until process is stopped
TimeoutStopSec=infinity
SendSIGKILL=no
[Install]
WantedBy=multi-user.target
启动minio-server1
2
3$ systemctl daemon-reload
$ systemctl start minio-server
$ systemctl status minio-server -l
配置haproxy1
2
3
4
5
6
7
8
9
10
11
12frontend http-sgim-minio-data
bind *:9800
option forwardfor except 127.0.0.1
option http-server-close
option httplog
option dontlognull
default_backend sgim-minio-data
maxconn 5000000
backend sgim-minio-data
balance leastconn
server minio-test1 10.73.9.3:9199 maxconn 1000000
设置MinIO Client(mc)1
2
3
4
5
6
7
8cd /data/minio
./mc ls #初始化mc
./mc alias set minioTest http://10.73.9.3:9800 minioroot password --api s3v4
Added `minioTest` successfully.
./mc mb minioTest/test #创建minio bucket
./mc cp file minioTest/test #上传文件到minio
./mc ls minioTest/test #查看minio/test文件列表
验证文件是否被切片
登陆Minio Server的服务器1
2
3
4
5
6cd /data4/minio-data
tree test/
test/
└── telegraf-1.22.4-1.x86_64.rpm
0 directories, 1 file
访问minio-Server Web
http://ip:9800/minio/login
账号密码为,在minio.env配置文件里设置的MINIO_ROOT_USER和MINIO_ROOT_PASSWORD的值
MinIO权限管理
MinIO Console → Access → Create Policy → Write Policy
意思是,只能控制test bucket1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:ListAllMyBuckets",
"s3:ListBucket",
"s3:PutObject",
"s3:DeleteObject",
"s3:GetBucketLocation"
],
"Resource": [
"arn:aws:s3:::test/*"
]
}
]
}
Minio旧版本Binary下载地址:https://dl.min.io/server/minio/release/linux-amd64/archive/
官网:http://www.minio.org.cn/download.shtml#/linux
本作品采用知识共享署名 2.5 中国大陆许可协议进行许可,欢迎转载,但转载请注明来自Jack Wang Blog,并保持转载后文章内容的完整。本人保留所有版权相关权利。
本文出自”Jack Wang Blog”:http://www.yfshare.vip/2022/11/07/%E9%83%A8%E7%BD%B2%E6%96%87%E4%BB%B6%E4%B8%8D%E5%88%87%E7%89%87%E7%9A%84Minio-Server/