当前位置: 首页 > news >正文

Linux中快速部署Minio(基础TLS配置)

Linux快速部署Minio用于服务对接(基础&TLS配置)

  • 部署 MinIO 服务
    • 下载&安装 MinIO 服务器
      • RPM(RHEL)
      • DEB(Debian/Ubuntu)
      • 离线二进制安装
    • 创建 systemd 服务文件
  • 配置 MinIO 服务
    • 创建单机存储目录
    • 创建用户和组
    • 创建环境变量(暨配置)文件
    • 管理 TLS
  • 启动 MinIO 服务
    • 启动 MinIO 服务
    • 配置开机自启动
  • 连接到 MinIO 服务
    • Web访问
    • API访问
  • 相关链接

本文目标是部署基础可用的Minio服务,场景在于时间并不充足的情况下,需要快速部署一套Minio服务用于开发或者服务器初始化的情况,所以配置或不满足高可用、高安全等,以效率为主,后续使用过程中可以通过进阶配置完善

  • 文章最后也会附加官方文档链接,用于大家进阶配置,学习细节内容

部署 MinIO 服务

下载&安装 MinIO 服务器

使用以下选项之一,为在英特尔或 AMD 64 位处理器上运行 Linux 的机器下载 MinIO 服务器安装文件。

RPM(RHEL)

# RPM(RHEL)
wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio-20241029160148.0.0-1.x86_64.rpm -O minio.rpm
sudo dnf install minio.rpm

DEB(Debian/Ubuntu)

# DEB(Debian/Ubuntu)
wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio_20241029160148.0.0_amd64.deb -O minio.deb
sudo dpkg -i minio.deb

离线二进制安装

下载最新的稳定 MinIO 二进制文件并将其安装到系统 $PATH

wget https://dl.min.io/server/minio/release/linux-arm64/minio
chmod +x minio
MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=password ./minio server /mnt/data --console-address ":9001"

创建 systemd 服务文件

使用.deb或.rpm包安装,将会自动创建以下 systemd 服务文件安装到 /usr/lib/systemd/system/minio.service

如果二进制安装或该位置没有请手动创建以下内容

[Unit]
Description=MinIO
Documentation=https://min-io.cn/docs/minio/linux/index.html
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/bin/minio[Service]
WorkingDirectory=/usr/localUser=minio-user
Group=minio-user
ProtectProc=invisibleEnvironmentFile=-/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# MinIO RELEASE.2023-05-04T21-44-30Z adds support for Type=notify (https://www.freedesktop.org/software/systemd/man/systemd.service.html#Type=)
# This may improve systemctl setups where other services use `After=minio.server`
# Uncomment the line to enable the functionality
# Type=notify# Let systemd restart this service always
Restart=always# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65536# 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# Built for ${project.name}-${project.version} (${project.name})

配置 MinIO 服务

创建单机存储目录

# 自己按需创建
mkdir /data/minio-data

后续注意替换“/data/minio-data”为自己的数据目录

创建用户和组

sudo groupadd -r minio-user
sudo useradd -M -r -g minio-user minio-user# 分配数据目录权限
sudo chown minio-user:minio-user /data/minio-data

注意替换“/data/minio-data”为自己的数据目录

创建环境变量(暨配置)文件

/etc/default/minio 处创建一个环境变量文件。MinIO 服务器容器可以使用此文件作为所有 环境变量 的来源,自己可以根据链接中说明增减配置

如以下示例初始文件

# MINIO_ROOT_USER and MINIO_ROOT_PASSWORD sets the root account for the MinIO server.
# This user has unrestricted permissions to perform S3 and administrative API operations on any resource in the deployment.
# Omit to use the default values 'minioadmin:minioadmin'.
# MinIO recommends setting non-default values as a best practice, regardless of environmentMINIO_ROOT_USER=myminioadmin
MINIO_ROOT_PASSWORD=minio-secret-key-change-me# MINIO_VOLUMES sets the storage volume or path to use for the MinIO server.MINIO_VOLUMES="/data/minio-data"# MINIO_OPTS sets any additional commandline options to pass to the MinIO server.
# For example, `--console-address :9001` sets the MinIO Console listen port
MINIO_OPTS="--console-address :9001 --address :9000"

注意替换MINIO_ROOT_USER、MINIO_ROOT_PASSWORD为自己的Root账号密码
注意替换“/data/minio-data”为自己的数据目录
console-address为web页面端口
address为API端口

管理 TLS

默认情况下,MinIO 服务器在以下目录中搜索每个节点的 TLS 密钥和证书 ${HOME}/.minio/certs
其中 ${HOME} 是运行 MinIO 服务器进程的用户的主目录。如果${HOME}/.minio/certs 目录不存在,则可能需要手动创建

默认${HOME}/.minio/certs 目录是存在localminio-*.example.net域名支持的

如果需要自己生成特定域名的,使用certgen工具在这里下载

然后按命令执行创建个人域名TLS支持domain.net换成自己域名

certgen -host "domain.net"

将生成的 public.crt 和 private.key 放入 ${HOME}/.minio/certs

这个目录可以放多个域名,同时支持多个域名的https,只需要建立子目录,子目录名就是自己要设置的域名,放入certgen生成的两个证书文件即可,如下
请添加图片描述

启动 MinIO 服务

启动 MinIO 服务

sudo systemctl start minio.service

使用以下命令确认服务已上线并正常运行

sudo systemctl status minio.service
journalctl -f -u minio.service

配置开机自启动

sudo systemctl enable minio.service

连接到 MinIO 服务

Web访问

浏览器输入https://domain:9001 这是配置的Web端口domain换成自己域名
使用MINIO_ROOT_USER、MINIO_ROOT_PASSWORD的值登录

API访问

工具访问、CLI(mc)访问
有关安装 mc 的说明,请参见 MinIO 客户端安装快速入门

创建一个与 MinIO 部署相对应的新 alias 链接指定的 MinIO Server API 主机名或 IP 地址,如:https://domain:9000 这是配置的API端口domain换成自己域名

mc alias set myminio https://domain:9000 myminioadmin minio-secret-key-change-me

使用MINIO_ROOT_USER、MINIO_ROOT_PASSWORD的值登录

相关链接

安装和部署 MinIO
管理现有的 MinIO 部署
Minio配置&环境变量
Minio TLS
certgen工具

http://www.dtcms.com/a/486947.html

相关文章:

  • 大型小说网站开发语言望野博物馆
  • 做早餐烧菜有什么网站零基础搭建网站
  • SAP PCE生产订单组件不能更改物料编码和工厂
  • Aosp14系统壁纸的启动和加载流程
  • 电压源和电流源学习理解
  • 刘洋洋《魔法派对Magic Party》童话重启,温柔守护每颗童心
  • 东莞长安网站设计搞网站开发的程序员属于哪一类
  • 运维领域核心概念的专有名词解释-详解
  • 【AIGC】语音识别ASR:火山引擎大模型技术实践
  • 如何在AutoCAD中加载大型影像文件?
  • 爬虫调试技巧:如何用浏览器开发者工具找接口?
  • Linux 页缓存(Page Cache)与回写(Writeback)机制详解
  • 【NI测试方案】基于ARM+FPGA的整车仿真与电池标定
  • JavaScript将url转为blob和file,三种方法
  • 电商营销型网站建设中国菲律宾关系现状
  • 英文网站建设 飞沐wordpress公众号文章分类
  • 怎么做qq靓号网站岳阳网站设计公司
  • Unity 通过Texture生成的Sprite存在边缘黑线问题 Image黑边问题
  • 计算机方向如何才能更好的找到工作?(成长心得)
  • 大连市城市建设投资集团网站网站怎么做文件上传
  • 织梦网站转跳手机站盐城网盐城网站建设站建设
  • Spring AOP 中@annotation的两种写法详解
  • Linux设备模型
  • Linux fg命令使用教程
  • 微博爬虫流程解析——session的使用
  • 企业网站建设的核心是专业手机建站公司
  • Vllm Semantic-router MoM 架构
  • LLMs-from-scratch :KV 缓存
  • dshot协议数据帧格式
  • 华清远见25072班QT学习day1