百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

私有化OSS工具,MinIO的部署与安装,打造独家照片库

myzbx 2025-03-03 19:25 28 浏览

OSS 即对象存储服务,是随着云计算技术的发展而兴起的一种数据存储方式。在互联网时代,数据量呈爆炸式增长,传统的存储方式面临着诸多挑战,OSS 应运而生。

其背景在于企业和个人对数据存储的需求不断扩大,同时对存储的可靠性、扩展性和成本效益有了更高的要求。传统的存储架构难以满足大规模、高并发的数据访问需求,而云计算的出现为解决这些问题提供了新的思路。

OSS 的用途广泛。首先,它为网站和应用提供了可靠的静态资源存储,如图片、视频、文件等,减轻了服务器的负载,提高了访问速度和稳定性。其次,OSS 可用于数据备份和恢复,保障数据的安全性和可用性。再者,它在大数据分析和处理中发挥着重要作用,能够存储海量的数据,并支持快速的数据检索和处理。

  • 阿里云对象存储(OSS)1)包年包月计费模式:500GB预留空间优惠价格为118元一年。2)按量付费计费模式:标准型OSS存储按量付费价格为0.09元/GB/月。99元可购买100GB存储空间。
  • 腾讯云对象存储(COS):按量付费价格为0.06元/GB/月,包年包月价格为0.05元/GB/月。
  • 华为云对象存储(OBS):按量付费价格为0.06元/GB/月,包年包月价格为0.04元/GB/月。
  • Amazon S3:按量付费价格为0.023美元/GB/月,包年包月价格根据不同区域有所不同,例如在US East (N. Virginia)区域为0.04美元/GB/月。

但在云计算领域,云 OSS(对象存储服务)虽然带来了诸多便利,但也并非完美无缺:

  • 数据隐私和安全问题是云 OSS 的一大弊端。由于数据存储在云端,存在被黑客攻击或数据泄露的风险。尽管云厂商采取了各种安全措施,但仍无法完全消除这种可能性。
  • 依赖网络连接可能导致访问延迟。在网络不稳定或带宽有限的情况下,获取或上传数据的速度会受到影响,这对于对实时性要求较高的业务来说可能是致命的。
  • 云 OSS 的成本控制可能具有挑战性。虽然初期看起来成本较低,但随着数据量的增长和使用频率的增加,费用可能会超出预期。而且,不同云厂商的收费模式复杂多样,用户在选择时如果没有充分了解,可能会陷入成本陷阱。
  • 云 OSS 还可能面临数据迁移的困难。当用户想要更换云服务提供商时,将大量数据迁移到新的平台可能会面临技术难题和时间成本。
  • 云厂商的服务质量和稳定性也存在一定的不确定性。如果云厂商出现服务故障或维护不当,可能会影响用户对数据的正常访问和使用。

本文将手把手教大家实现私有化SSO部署。

1 获取MinIO安装包

下载地址如下:
https://dl.min.io/server/minio/release/linux-amd64/archive/

浏览下载最新的mino安装包,比如
minio-20240826153307.0.0-1.x86_64.rpm

本地下载后上传服务器,/data/release/minio

2.RPM安装

rpm -ivh minio-20240826153307.0.0-1.x86_64.rpm

3.测试服务:

minio server ./
MinlO Oblect Storage Server
Copyright: 2015-2024 MinIo, Inc.
License: GNU AGPLv3 - https://www.gnu.org/licenses/agpl-3.0.html
Version:RELEASE,2024-08-26T15-33-072(go1.22.6 linux/amd64)
API: http://127.0.0.1:9000 
RootUser: minioadmin
RootPass: minioadmin
WebUI: http://127.0.0.1:40292
RootUser: minloadmin
RootPass:minioadmin

4 集成Systemd

systemctl status minio

5.修改配置文件

vim /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]
#Type=notify
#Type=notify意味着该服务将通过发送一个信号给systemd来通知,其启动状态。,不是所有的服务都支持Type=notify。要使用这个类型,服务本身必须被设计为能够发送这些状态更新消息。默认未注释.
Type=simple
WorkingDirectory=/usr/local
#User=minio-user
#Group=minio-user
#自带的用户名即使系统添加了minio-user,minio系统启动不成功,只能使用root启动成功.默认未注释,此处需要注释
ProtectProc=invisible
EnvironmentFile=-/etc/default/minio
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
# Let systemd restart this service always
Restart=always
# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=1048576
# 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
SendSIGKILL=no
[Install]
WantedBy=multi-user.target

保存退出后

刷新systemctl daemon-reload

执行以下命令启动MinIO

systemctl start minio

执行以下命令查询运行状态

systemctl status minio

执行以下命令停止MinIO

systemctl stop minio

设置MinIO开机自启

systemctl enable minio

编写EnvironmentFile文件

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

vim /etc/default/minio

内容如下,具体可参考官方文档。

MINIO_OPTS="--console-address :9001"
MINIO_VOLUMES="/var/minio/release/data"
MINIO_ROOT_USER="minioadmin"
MINIO_ROOT_PASSWORD="minioadmin"

以上目录要存在,不存在则先mkdir

相关推荐

vue 基础-组件中事件的触发和监听

前言《vue基础》系列是再次回炉vue记的笔记,除了官网那部分知识点外,还会加入自己的一些理解。(里面会有部分和官网相同的文案,有经验的同学择感兴趣的阅读)vue中单纯的事件调用,你一定不陌生...

JMH基准测试和JMH-Visual-chart可视化

原文地址:https://github.com/Sayi/sayi.github.com/issues/68如何度量一段代码的性能,换种实现方式会有更佳的性能表现吗?你或许想知道fastjson是否正...

一文轻松看懂丰田汽车的电路图(丰田车电路图识读技巧)

丰田汽车电路图符号、含义丰田汽车电路图识读说明电路图中字母是注释标号,其各部分的含义如下:注释标号A:表示系统标题,在电路图上方用横线划分,区域内用文字和系统符号表示下方电路系统的名称。注释标号B:表...

杭州高级中学发文言文版校庆公告引热议——全文932字,74处注释

阅读提示校方回应:我们期待以这种‘复古’的方式引起公众注意,也算是为树立起大众的文化自信、唤起大众对传统文化的关注作出一点贡献。5月14日,杭州高级中学官方微信发布了一篇文言文版的校庆公告。几个小...

Python 和 JS 有什么相似?(python和js哪个快)

Python是一门运用很广泛的语言,自动化脚本、爬虫,甚至在深度学习领域也都有Python的身影。作为一名前端开发者,也了解ES6中的很多特性借鉴自Python(比如默认参数、解构赋值、...

阿里卖家 Flutter for Web 工程实践

作者:马坤乐(坤吾)Flutter自2015年初次亮相以来,经过了多年的发展已经相当成熟,在阿里、美团、拼多多等互联网公司都有广泛的应用。在ICBU阿里卖家上90+%的新业务使用Flu...

诗经275思文押韵、注释、古音、今韵

诗经275-1思文押韵(备注:□=非韵、■=i韵、●=o/u韵、◆=ng韵、=i/o二象性)「」1.思文后稷,克配彼天。立我烝民,莫菲尔极。贻我来牟,帝命率育。无此疆尔界,陈常于时夏。□□□■,...

SolidWorks中常用命令快捷键(solidworks有哪些快捷键)

1.A:中心线2.B:镜向3.C:画圆4.D:智能标柱尺寸5.E:删除6.F:草图倒圆角7.G:画直线8.H:从装配制作工程9.I:等距实体10.J:从装配制作装配11.K:多边形12.L:延伸13....

第一章、TS语言简介(tsl语言)

TypeScript(简称TS)是微软公司开发的一种基于JavaScript(简称JS)语言的编程语言。它的目的并不是创造一种全新语言,而是增强JavaScript的功能,使其更适合多人合...

为什么要用JMH?何时应该用?(日本jmh地面分析图网站)

if快还是switch快?HashMap的初始化size要不要指定,指定之后性能可以提高多少?各种序列化方法哪个耗时更短?无论出自何种原因需要进行性能评估,量化指标总是必要的。在大部分场合...

雅虎“YSlow - 23 条规则”详尽阐释

以下乃是雅虎“YSlow-23条规则”的详尽阐释,旨在优化网页之性能以及用户之体验,乃是结合技术之原理与实践之方法梳理而成:1.减少HTTP请求次数说明:每一次HTTP请求皆会增添延迟...

JavaScript 运算符(js ~运算符)

JavaScript运算符JS变量JS算数JavaScript运算符实例向变量赋值,并把它们相加:varx=7;//向x赋值5vary=8;//向y赋值2...

在Notebook中使用Sublime Text 快捷键

编程派微信号:codingpy前几天,我在公众号上发布了两篇译文,对JupyterNotebook做了一些基础性的介绍。虽然说比较基础,而且第二篇阅读量并不高,但是我认为对于其他对于Noteb...

晨光静好时!2 道 JS 与 TS 面试题解析,开启惬意学习日

当第一缕晨光温柔地唤醒窗台的绿植,泡上一杯清香四溢的茉莉花茶,坐在洒满阳光的角落。此刻,放下对面试的焦虑,让我们像聊生活趣事般,轻松拆解两道JavaScript和TypeScript的高频面试...

2024年CSPJ题目解析,语法基本功>算法!

前言:每次有家长来找我们咨询报课,说孩子学了一年了,竞赛成绩不理想,问怎么才能强化,提升,我们经过一番询问,发现这类孩子普遍都是在算法上已经花了非常多的时间了,但是语法根本不过关。对这种孩子我们普遍建...