阿里云服务器CentOS7安装MinIO

1. 概述

MinIO是一个开源的分布式对象存储服务器,支持S3协议并且可以在多个节点上实现数据的高可用和容错,采用Go语言开发,拥有轻量级、高性能、易部署等特点,并且可以自由选择底层存储介质。
MinIO主要特点:
高性能:MinIO基于GO语言编写,具有高速、轻量级、高并发等性能特点,还支持多线程和缓存等机制进行优化,可以快速地处理大规模数据
可扩展性:MinIO采用分布式存储模式,支持水平扩展,通过增加阶段数量来扩展存储容量和性能,支持自动数据迁移和负载均衡。
安全性:MinIO提供了多种安全策略,如访问控制列表(ACL)、服务端加密(SSE)、传输层安全性(TLS)等,可以保障数据安全和隐私。
兼容性:MinIO兼容AWS S3 API,还支持其他云服务提供商的API,比如GCP、Azure等,可以通过简单的配置实现互操作性。
简单易用:MinIO的部署和管理非常简单,只需要运行一个二进制即可启动服务,同时提供了Web界面和命令行工具等方便的管理工具。

更多详情可以参阅MinIO官网

2. MinIO下载

进入MinIO官网,点击右上角Download
MinIO官网
进入下载界面
download
也可以参考Docs完整文档
docs
选择适合的服务器,本文基于CentOS7进行演示,这里选择Linux,其他方式安装可以参阅官方文档
在服务器指定目录下使用命令进行下载安装文件即可

wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio-20240803043323.0.0-1.x86_64.rpm -O minio.rpm

下载安装包

3. MinIO安装

使用命令执行安装

rpm -ivh minio.rpm

安装
以上步骤就已经完成了MinIO的安装,直接进行启动命令就可以了,为了方便后续MinIO的维护,可以集成Linux的Systemd

4. 集成Systemd

4.1. Systemd概述

Systemd是一个广泛的应用于Linux系统的系统初始化和服务管理器,其可以管理系统中的各种服务和进程,包括启动、停止和重启服务,还可以监测服务的运行状态,并在服务异常退出时,自动拉起服务,以保证服务的稳定性。

4.2. 编写MinIO服务配置文件

Systemd所管理的服务需要由一个配置文件进行描述,这些配置文件均位于/etc/systemd/system/或/usr/lib/systemd/system/目录下,执行以下命令创建并打开minio.service文件

vim /etc/systemd/system/minio.service

在文件中写入以下内容

[Unit]
Description=MinIO
Documentation=https://min.io/docs/minio/linux/index.html
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

# 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

EnvironmentFile:该文件中可配置MinIO服务所需的各项参数
ExecStart:该参数用于配置MinIO服务的启动命令,其中$MINIO_OPTS、$MINIO_VOLUMES,均引用于EnvironmentFile中的变量
MINIO_OPTS:用于配置MinIO服务的启动选项,可省略不配置
MINIO_VOLUMES:用于配置MinIO服务的数据存储路径
Restart:表示自动重启

4.3. 编写EnvironmentFile文件

执行以下命令创建并打开/etc/default/minio文件

vim /etc/default/minio

内容如下:

MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=xxxxx
MINIO_VOLUMES="/mnt/data"
MINIO_OPTS="--console-address :9090"

MINIO_ROOT_USERMINIO_ROOT_PASSWORD:为用于访问MinIO的用户名和密码
MINIO_VOLUMES:用于指定数据存储路径,需确保指定的路径是存在的,可执行以下命令创建该路径mkdir /mnt/data
MINIO_OPTS中的console-address用于指定管理页面的地址

5. 启动MinIO

执行以下命令启动MinIO,在启动前,先重载配置

systemctl daemon-reload
systemctl start minio

执行以下命令查看MinIO是否启动成功

systemctl status minio

启动MinIO

6. 验证

在浏览器地址栏输入http://ip:9090,进入MinIO登录界面
MinIO登录界面
填入前面配置文件填写的用户名和密码登录MinIO
MinIO首页
至此,关于MinIO的安装和配置就完成了。

### 在阿里云服务器上部署 MinIO 存储服务的指南 在阿里云服务器上部署 MinIO 存储服务是一个相对简单的过程,以下是详细的配置教程。 #### 1. 环境准备 确保阿里云服务器的操作系统为 CentOS 7 或更高版本,并且已安装必要的依赖项。可以通过以下命令更新系统并安装基础工具: ```bash sudo yum update -y sudo yum install -y wget curl ``` #### 2. 下载和安装 MinIO 从官方下载最新的 MinIO 二进制文件,并赋予执行权限: ```bash wget https://dl.min.io/server/minio/release/linux-amd64/minio chmod +x minio sudo mv minio /usr/local/bin/ ``` 此步骤确保 MinIO 的二进制文件被正确安装到系统的路径中[^1]。 #### 3. 创建存储目录 为 MinIO 创建一个用于存储数据的目录,并设置适当的权限: ```bash mkdir -p /mnt/data chmod 700 /mnt/data chown $USER:$USER /mnt/data ``` #### 4. 启动 MinIO 服务 使用以下命令启动 MinIO 服务,指定访问密钥、秘密密钥以及存储路径: ```bash export MINIO_ROOT_USER=minioadmin export MINIO_ROOT_PASSWORD=minio123 /usr/local/bin/minio server /mnt/data ``` 上述命令中的 `minioadmin` 和 `minio123` 分别是访问密钥和秘密密钥,可以根据需要自行修改[^2]。 #### 5. 配置系统服务(可选) 为了方便管理,可以将 MinIO 配置为系统服务。创建一个新的服务文件 `/etc/systemd/system/minio.service`,内容如下: ```ini [Unit] Description=MinIO Documentation=https://docs.min.io Wants=network-online.target After=network-online.target [Service] WorkingDirectory=/mnt/data EnvironmentFile=-/etc/default/minio User=minio Group=minio Type=simple ExecStart=/usr/local/bin/minio server /mnt/data --console-address ":9001" Restart=on-failure RestartSec=5 TimeoutStopSec=30 SendSIGKILL=no [Install] WantedBy=multi-user.target ``` 保存后,重新加载 systemd 并启动服务: ```bash sudo systemctl daemon-reload sudo systemctl enable minio sudo systemctl start minio ``` #### 6. 配置防火墙 确保服务器的防火墙允许 MinIO 的默认端口(9000 和 9001)通过: ```bash sudo firewall-cmd --zone=public --add-port=9000/tcp --permanent sudo firewall-cmd --zone=public --add-port=9001/tcp --permanent sudo firewall-cmd --reload ``` #### 7. 配置 MinIO 客户端(mc) 安装 MinIO 客户端以方便管理 MinIO 服务: ```bash wget https://dl.min.io/client/mc/release/linux-amd64/mc chmod +x mc sudo mv mc /usr/local/bin/ ``` 使用以下命令连接到 MinIO 实例: ```bash mc alias set myminio http://<阿里云服务器IP>:9000 minioadmin minio123 ``` #### 8. 验证部署 通过浏览器访问 `http://<阿里云服务器IP>:9001`,使用之前设置的访问密钥和秘密密钥登录 MinIO 控制台,验证服务是否正常运行[^3]。 --- ### 注意事项 - 确保阿里云的安全组规则允许外部访问 MinIO 的端口。 - 如果需要更高的安全性,可以启用 TLS 加密,具体配置参考 MinIO 官方文档[^2]。 --- ### 示例代码 以下是一个简单的 Python 脚本,用于与 MinIO 进行交互: ```python from minio import Minio client = Minio( "阿里云服务器IP:9000", access_key="minioadmin", secret_key="minio123", secure=False ) # 创建存储桶 if not client.bucket_exists("test"): client.make_bucket("test") ``` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值