阅读量:48
Ubuntu中MinIO安装配置详解
一、安装前准备
- 系统要求:Ubuntu 18.04及以上版本(推荐22.04 LTS);
- 权限要求:需root权限或使用
sudo命令; - 网络要求:服务器可访问互联网(用于下载软件包及MinIO资源)。
二、MinIO安装方式(任选其一)
1. 通过APT包管理器安装(推荐,简单便捷)
# 更新系统包列表
sudo apt update && sudo apt upgrade -y
# 导入MinIO官方GPG密钥(确保软件包来源可信)
wget -qO - https://dl.min.io/server/minio/release/linux-amd64/minio-release.gpg | sudo apt-key add -
# 添加MinIO APT仓库(适配Ubuntu版本,如bionic=18.04、focal=20.04)
sudo add-apt-repository "deb https://dl.min.io/server/minio/release/ubuntu $(lsb_release -cs) main"
# 再次更新包列表以包含MinIO仓库
sudo apt update
# 安装MinIO服务器
sudo apt install -y minio
2. 手动下载二进制文件安装(灵活,适合自定义路径)
# 下载MinIO二进制文件(Linux amd64架构,替换为最新版本链接)
wget https://dl.min.io/server/minio/release/linux-amd64/minio
# 赋予执行权限
chmod +x minio
# 移动至系统PATH路径(方便全局调用)
sudo mv minio /usr/local/bin/
# 创建数据存储目录(用于存放对象数据)
sudo mkdir -p /data/minio
3. 使用Snap包安装(容器化,易于管理)
# 安装Snap(若未安装)
sudo apt install -y snapd
# 启用Snap商店
sudo snap refresh
# 通过Snap安装MinIO(--classic模式授予系统访问权限)
sudo snap install minio --classic
三、配置MinIO服务
1. 基础配置(命令行参数)
启动MinIO时通过命令行参数指定数据目录、监听端口及控制台地址:
# 启动MinIO服务(数据目录:/data/minio;HTTP监听:9000;控制台:9099)
sudo minio server /data/minio --console-address ":9099"
- 参数说明:
/data/minio:数据持久化目录(需提前创建并赋予权限sudo chown -R $USER:$USER /data/minio);--console-address ":9099":控制台Web界面端口(默认9000,可修改为其他端口)。
2. 自定义配置文件(持久化设置)
通过配置文件实现参数持久化,避免每次启动都输入命令行参数:
# 编辑系统级环境配置文件(设置访问密钥、数据目录等)
sudo nano /etc/default/minio
写入以下内容(按需修改):
MINIO_VOLUMES="/data/minio" # 数据存储目录
MINIO_OPTS="--address :9000 --console-address :9099" # 监听端口
MINIO_ACCESS_KEY="your-access-key" # 自定义访问密钥(强密码)
MINIO_SECRET_KEY="your-secret-key" # 自定义秘密密钥(强密码)
MINIO_REGION="cn-north-1" # 区域标识(可选)
# 创建Systemd服务文件(管理MinIO服务生命周期)
sudo nano /etc/systemd/system/minio.service
写入以下内容:
[Unit]
Description=MinIO Server
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio
[Service]
WorkingDirectory=/usr/local
ProtectProc=invisible
EnvironmentFile=/etc/default/minio
ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi"
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
Restart=always
LimitNOFILE=1048576
TasksMax=infinity
DisableTimeout=true
[Install]
WantedBy=multi-user.target
3. 启动与自启配置
# 重新加载Systemd配置(使服务文件生效)
sudo systemctl daemon-reload
# 启动MinIO服务
sudo systemctl start minio
# 设置开机自启(避免服务器重启后服务停止)
sudo systemctl enable minio
# 检查服务状态(确认运行正常)
sudo systemctl status minio
- 状态说明:若显示
active (running)则表示服务已成功启动。
四、访问与使用MinIO
1. 访问控制台
打开浏览器,输入以下地址访问MinIO Web管理界面:
http://:9099
- 默认账号:
minioadmin(若未修改配置文件中的MINIO_ACCESS_KEY); - 默认密码:
minioadmin(若未修改配置文件中的MINIO_SECRET_KEY)。
2. 常用操作(通过控制台或命令行)
- 创建存储桶:在控制台左侧导航栏点击「Buckets」→「Create Bucket」,输入存储桶名称(如
my-bucket)并设置权限; - 上传对象:进入存储桶,点击「Upload」按钮,选择本地文件上传;
- 使用命令行工具:安装MinIO Client(
mc)实现高效管理:# 下载并安装mc wget https://dl.min.io/client/mc/release/linux-amd64/mc chmod +x mc sudo mv mc /usr/local/bin/ # 配置mc别名(关联MinIO服务器) mc alias set myminio http://:9000 your-access-key your-secret-key # 列出存储桶 mc ls myminio/
五、安全配置(生产环境必做)
1. 修改默认访问密钥
避免使用默认的minioadmin账号,通过命令行修改:
# 删除默认用户(可选)
minio admin user remove minioadmin minioadmin
# 添加新用户(替换为强密码)
minio admin user add myuser mypassword123
# 授予用户所有存储桶权限
minio admin policy set myminio user=myuser readwrite
2. 配置HTTPS加密
通过SSL证书实现数据传输加密(需提前获取证书文件,如minio.crt和minio.key):
# 生成自签名证书(仅测试用,生产环境需使用CA颁发的证书)
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ~/minio.key -out ~/minio.crt
# 启动MinIO时启用HTTPS
sudo minio server /data/minio --console-address ":9099" --certs-dir ~/certs
- 证书目录:将
minio.crt和minio.key存放在~/certs目录下(需提前创建)。
3. 配置防火墙
允许MinIO端口通过防火墙(以ufw为例):
# 允许HTTP(9000)和控制台(9099)端口
sudo ufw allow 9000/tcp
sudo ufw allow 9099/tcp
# 启用防火墙(若未启用)
sudo ufw enable
# 检查防火墙状态
sudo ufw status
六、常见问题排查
- 服务无法启动:检查数据目录权限(
sudo chown -R $USER:$USER /data/minio)或查看日志(journalctl -u minio -f); - 无法访问控制台:确认防火墙是否放行端口,或检查
MINIO_CONSOLE_ADDRESS配置是否正确; - 证书错误:确保SSL证书路径正确,且证书未过期。
通过以上步骤,您已完成MinIO在Ubuntu上的安装与配置,可根据实际需求扩展集群(多节点部署)或集成CDN、对象存储网关等功能。