【MinIO 安装与使用】(新版本-随系统启动)
之前的历史版本安装
【MinIO 安装与使用】_minio license-CSDN博客
新版本:
MinIO下载 | 中国镜像下载加速站
下载并安装
服务加入启动项:
1、添加环境变量
vi /etc/profile
# minio
export MINIO_ROOT_USER= 用户名
export MINIO_ROOT_PASSWORD=密码
export MINIO_VOLUMES=数据存储路径
2、修改服务配置
rpm 文件安装后,自动生成,然后进行修改调整
修改点:
# 调整启动执行命令
ExecStart=/bin/bash -lc '/usr/local/bin/minio server $MINIO_VOLUMES'
# 编辑service 文件
# vi /usr/lib/systemd/system/minio.service
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio
[Service]
# Environment="MINIO_OPTS=--console-address ':9002' --address ':9000'"
Type=notify
WorkingDirectory=/usr/local
User=root
Group=root
# ProtectProc=invisible
# EnvironmentFile=-/etc/default/minio
# ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
ExecStart=/bin/bash -lc '/usr/local/bin/minio server $MINIO_VOLUMES'
# Let systemd restart this service always
Restart=always
# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65536
# Turn-off memory accounting by systemd, which is buggy.
# MemoryAccounting=no
# Specifies the maximum number of threads this process can create
# TasksMax=infinity
# Disable timeout logic and wait until process is stopped
# TimeoutSec=infinity
RestartSec=10s
# SendSIGKILL=no
[Install]
WantedBy=multi-user.target
# 通知 systemd 重新加载它的配置文件
systemctl daemon-reload
# 这使得 minio 服务会在多用户运行级别(通常是默认的启动目标)启动时被自动启动
systemctl enable minio.service
# 这条命令立即启动 minio 服务。如果你的服务单元文件正确无误并且所有依赖项都已就绪,那么该服务将开始运行。
systemctl start minio.service
# 这条命令显示 minio 服务的状态。它会告诉你服务是否正在运行,以及一些有关服务当前活动的信息,如启动时间和进程ID等。如果服务没有正常运行,你也可以在这里看到失败的原因。
sudo systemctl status minio.service
控制台访问地址:
systemctl status minio.service
这样,系统重启就可以随系统启动
Buckets读写权限问题:
priavte : 读写都需要认证
public: 读写都不需要认证
custom: 自定义认证策略
下面的策略:描述 GetObject 这个活动是免认证的,
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::my-bucket/*"
]
}
]
}
自定义认证策略
除了标准的 IAM 策略之外,MinIO 还支持通过自定义认证机制来保护访问。这通常涉及到实现自己的认证逻辑,然后使用该逻辑来生成有效的请求签名,或者通过配置 MinIO 服务器来接受外部系统的认证令牌。
要实现自定义认证策略,你可能需要做以下几步:
- 定义认证逻辑: 实现一个服务或逻辑来验证用户的凭证,并根据验证结果发放特定的令牌或签名。
- 配置 MinIO: 使用
minio server
命令行工具或通过 MinIO 的 API 配置服务器以接受你的认证机制。 - 客户端集成: 客户端在与 MinIO 交互时必须提供正确的认证信息,这可能是通过 HTTP 头部中的令牌或其他身份验证凭据。