Minio存储应用部署案例

1. MinIO 的发展背景

随着云计算、人工智能和大数据技术的发展,数据存储面临越来越多的挑战。传统的文件系统和块存储已经无法应对海量的非结构化数据和多种数据格式带来的压力。对象存储作为一种新的存储方式,能够更好地应对这些挑战,尤其是对于视频、图片、备份数据等非结构化数据存储。MinIO 作为一款开源的对象存储系统,完全兼容 AWS S3 接口,具备高性能、可扩展性和轻量级的特点。MinIO 的目标是为企业和开发者提供一种简单、高效、安全的分布式存储解决方案。

2. MinIO 的使用场景:
  • 大数据存储:MinIO 适合存储和处理大量的非结构化数据,如日志、视频、图像等,尤其在需要高吞吐量和高性能的大数据场景中。
  • 数据备份和恢复:由于 MinIO 提供了高可用性和容错性,企业可以将其用于存储备份数据,确保即使在发生硬件故障时,数据仍能快速恢复。
  • 私有云存储:通过构建私有化的 MinIO 部署,企业可以在内部实现与 AWS S3 类似的对象存储服务,并且具有更高的控制力和安全性。
  • 机器学习和 AI:MinIO 的高性能存储能力非常适合用于处理和存储大规模的训练数据和模型。

案例 Minio存储应用

案例准备

1.规划节点

                                           表1-1 系统节点

IP地址

主机名

挂载路径

192.168.71.10

minio

/opt/data/minio

2.基础准备

登录物理OpenStack平台,使用CentOS7.9镜像创建一台云主机,云主机类型使用4VCPU/8GB内存/100GB硬盘。创建后的云主机作为本次案例的实验节点。

案例实施

1.修改主机名与目录准备

在OpenStack云平台上申请1台centos7.9系统的云主机,自行将主机名修改为minio,磁盘目录准备,命令如下:

[root@localhost ~]# hostnamectl set-hostname minio
[root@localhost ~]# su
[root@minio ~]# mkdir -p /opt/data/minio
2.启动minio服务

将提供的minio文件上传至minio节点的/root目录下,并赋予执行权限:

[root@minio ~]# ll
总用量 92168
-rw-------. 1 root root     1269 10月  8 16:33 anaconda-ks.cfg
-rw-r--r--. 1 root root 94375936 10月 11 13:38 minio

[root@minio ~]# chmod +x minio

[root@minio ~]# ll
总用量 92168
-rw-------. 1 root root     1269 10月  8 16:33 anaconda-ks.cfg
-rwxr-xr-x. 1 root root 94375936 10月 11 13:38 minio

赋予权限后,即可以启动服务:

[root@minio ~]# ./minio server /opt/data/minio/
WARNING: Detected Linux kernel version older than 4.0.0 release, there are some known potential performance problems with this kernel version. MinIO recommends a minimum of 4.x.x linux kernel version for best performance
API: http://192.168.71.10:9000  http://127.0.0.1:9000
RootUser: minioadmin
RootPass: minioadmin
Finished loading IAM sub-system (took 0.0s of 0.0s to load data).

Console: http://192.168.71.10:33889 http://127.0.0.1:33889
RootUser: minioadmin
RootPass: minioadmin

Command-line: https://docs.min.io/docs/minio-client-quickstart-guide
   $ mc alias set myminio http://192.168.71.10:9000 minioadmin minioadmin

Documentation: https://docs.min.io

WARNING: Console endpoint is listening on a dynamic port (33889), please use --console-address ":PORT" to choose a static port.

启动没有报错,此时可以通过浏览器访问minio的界面,访问http://192.168.71.10:9000,

使用默认的用户名:minioadmin和密码:minioadmin登录

用这种方式启动的minio服务,进程界面不能关闭,可以在启动是选在后台运行,或者将minio服务添加到系统服务中。

3.添加minio服务到系统

首先创建minio目录,将minio软件复制到/data/minio_data/目录

[root@minio ~]# mkdir -p /data/minio_data/

[root@minio ~]# cp minio /data/minio_data/

[root@minio ~]# ll /data/minio_data/
总用量 92164
-rwxr-xr-x. 1 root root 94375936 10月 11 13:48 minio

创建启动脚本run.sh,并给run.sh文件赋权,命令如下:

[root@minio ~]# cd /data/minio_data/

[root@minio minio_data]# cat run.sh 
#!/bin/bash
/data/minio_data/minio server /opt/data/minio

[root@minio minio_data]# chmod 777 run.sh

创建启动服务,创建minio.service启动脚本,命令如下:

[root@minio minio_data]# vi /usr/lib/systemd/system/minio.service

[Unit]
Description=Minio service
Documentation=https://docs.minio.io/

[Service]
#安装包路径
WorkingDirectory=/data/minio_data
#启动命令路径
ExecStart=/data/minio_data/run.sh

Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

编辑完之后,启动测试

[root@minio minio_data]# systemctl start minio 

[root@minio minio_data]# systemctl status minio
● minio.service - Minio service
   Loaded: loaded (/usr/lib/systemd/system/minio.service; enabled; vendor preset: disabled)
   Active: active (running) since 五 2024-10-11 13:56:38 CST; 3min 57s ago
     Docs: https://docs.minio.io/
 Main PID: 18096 (run.sh)
   CGroup: /system.slice/minio.service
           ├─18096 /bin/bash /data/minio_data/run.sh
           └─18097 /data/minio_data/minio server /opt/data/minio

10月 11 13:56:38 minio systemd[1]: Stopped Minio service.
10月 11 13:56:38 minio systemd[1]: Started Minio service.
10月 11 13:56:38 minio run.sh[18096]: WARNING: Detected Linux kernel version older tha...nce
10月 11 13:56:38 minio run.sh[18096]: API: http://192.168.71.10:9000  http://127.0.0.1:9000
10月 11 13:56:38 minio run.sh[18096]: Console: http://192.168.71.10:35713 http://127.0...713
10月 11 13:56:38 minio run.sh[18096]: Documentation: https://docs.min.io
10月 11 13:56:38 minio run.sh[18096]: WARNING: Console endpoint is listening on a dyna...rt.
10月 11 13:56:38 minio run.sh[18096]: Finished loading IAM sub-system (took 0.0s of 0....a).
10月 11 13:56:39 minio run.sh[18096]: You are running an older version of MinIO releas...ago
10月 11 13:56:39 minio run.sh[18096]: Update: Run `mc admin update`
Hint: Some lines were ellipsized, use -l to show in full.

可以通过状态发现,启动成功,查看界面,如下图所示:

通过用户名:minioadmin和密码:minioadmin登录,并进行创建桶test,上传一张图片到test桶中,可以通过minio存储中的Preview查看上传的图片内容,如下图所示:

至此,单节点的minio存储部署完毕。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值