MinIO对象存储

news2024/11/16 12:06:06

MinIO 是一个高性能的分布式对象存储系统。 它是软件定义的,在行业标准硬件上运行,并且 100% 开源,主要许可证是 GNU AGPL v3。

MinIO 的不同之处在于它从一开始就被设计为私有/混合云对象存储的标准。 因为 MinIO 是专门为对象而构建的,所以单层架构可以毫不妥协地实现所有必要的功能。 结果是一个同时具有高性能、可扩展性和轻量级的云原生对象服务器。

虽然 MinIO 在二级存储、灾难恢复和归档等传统对象存储用例方面表现出色,但它在克服与机器学习、分析和云原生应用程序工作负载相关的挑战方面独树一帜。 

 

一、Architecture 

MinIO 被设计为云原生,可以作为由外部编排服务(如 Kubernetes)管理的轻量级容器运行。 整个服务器是一个大约 40MB 的静态二进制文件,并且在使用 CPU 和内存资源方面非常高效 - 即使在高负载下也是如此。 结果是您可以在共享硬件上共同托管大量租户。 

 MinIO 在带有本地连接驱动器 (JBOD/JBOF) 的商用服务器上运行。 集群中的所有服务器都具有相同的能力(完全对称架构)。 没有名称节点或元数据服务器。

MinIO 将数据和元数据作为对象一起写入,从而消除了对元数据数据库的需求。 此外,MinIO 执行所有功能(擦除代码、位腐烂检查、加密)作为内联、严格一致的操作。 结果是 MinIO 非常有弹性。

每个 MinIO 集群都是分布式 MinIO 服务器的集合,每个节点有一个进程。 MinIO作为单进程运行在用户空间,使用轻量级协程实现高并发。 驱动器被分组为擦除集(默认情况下每组 16 个驱动器),并且使用确定性哈希算法将对象放置在这些集中。

MinIO 专为大规模、多数据中心的云存储服务而设计。 每个租户运行他们自己的 MinIO 集群,与其他租户完全隔离,使他们能够保护他们免受升级、更新和安全事件的任何中断。 每个租户通过跨地域联合集群独立扩展。

 

二、MinIO 集群之间的数据同步 

MinIO提供了数据复制和同步功能,使得可以在多个MinIO集群之间进行数据同步。这种功能使得可以实现跨地理位置的数据备份、容灾和故障恢复。

以下是MinIO集群之间数据同步的一些特点和功能:

1. 同步方式:MinIO支持多种数据同步方式,包括主从复制、多主集群复制和网关同步等。这些同步方式可以根据具体需求来配置,以实现数据在集群之间的自动同步。

2. 安全性:MinIO提供加密功能,可以对数据进行加密,确保数据在传输和存储过程中的安全性。

3. 容灾备份:通过配置数据同步,可以将数据从一个集群复制到另一个集群,实现数据的容灾备份。当一个集群发生故障时,可以快速切换到备用集群,确保数据的高可用性。

4. 网关同步:MinIO网关可以将数据同步到其他云存储服务,如Amazon S3或Google Cloud Storage。这样可以实现数据在不同云存储服务之间的同步和迁移。

总的来说,MinIO提供了灵活和可靠的数据同步功能,可以满足不同场景下集群之间数据的备份、同步和容灾需求。通过配置适当的同步方式和策略,可以实现数据在不同MinIO集群之间的高效同步和复制。

三、MinIO网关 

MinIO网关是MinIO对象存储服务的一个组件,它允许将MinIO接口暴露为标准的Amazon S3或Google Cloud Storage(GCS)接口。简而言之,MinIO网关是一个代理层,它使MinIO可以兼容和支持Amazon S3和GCS的API,从而能够与现有的S3或GCS客户端应用程序无缝集成。

MinIO网关的工作方式如下:

1. API兼容性:MinIO网关实现了Amazon S3和GCS的API,并在其上提供相应的接口。这样,使用S3或GCS API的应用程序可以无需修改代码直接与MinIO网关进行交互。

2. 路由转发:当接收到来自S3或GCS API的请求时,MinIO网关将这些请求转发到MinIO服务器,并将响应返回给客户端。MinIO服务器处理存储和检索对象的请求。

3. 对象存储:MinIO网关并不直接存储对象,而是将数据传递给后端的MinIO服务器,MinIO服务器负责实际的对象存储。

MinIO网关对于那些已经使用Amazon S3或GCS API的应用程序来说非常有用。通过使用MinIO网关,这些应用程序可以无缝地迁移到MinIO对象存储服务,而无需对现有代码进行任何修改。同时,MinIO网关还允许将数据同步到Amazon S3或GCS,使得数据在不同云存储服务之间可以灵活迁移和同步。

需要注意的是,MinIO网关并不是MinIO的全部,它只是MinIO的一个组件,用于提供与S3或GCS API的兼容性。MinIO网关依赖于MinIO服务器来实际处理对象存储和数据管理的操作。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/799417.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

day14 | 100.二叉树的最大深度 111.二叉树的最小深度 222.完全二叉树的节点个数

文章目录 一、二叉树的最大深度二、二叉树的最小深度三、完全二叉树的节点数 一、二叉树的最大深度 100.二叉树的最大深度 因为题给出的高度和深度是一样的,所以求得结果都能过。 class Solution { public:int getHeight(TreeNode *node){if (node nullptr)retu…

Qt 第三讲 手动拖动ui界面组件,事件处理机制,实现简单闹钟

手动拖动ui界面组件,实现闹钟 源文件 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);ui->btn_end->setEnabled(false);speecher new QTex…

Linux基础内容(29)—— 额外锁

Linux基础内容(28)—— POSIX信号量与循环队列_哈里沃克的博客-CSDN博客https://blog.csdn.net/m0_63488627/article/details/131844590?spm1001.2014.3001.5501 目录 1.其他常见的各种锁 自旋锁 库语言的实现 2.读者写者问题 1.读者写者线程 2.…

SpringMVC启动时非常缓慢,显示一直在部署中,网页也无法访问,,,Artifact is being deployed, please wait...

写了一个基本的SpringMVC程序进行测试,结果启动时一直显示在等待部署完毕,,, but这个地方一直显示转圈圈。。 后来通过url访问时网页一直转圈圈。。也就是等待响应。。 看了一会儿,也不知道哪儿错了,&…

什么是多运行时架构?

服务化演进中的问题 自从数年前微服务的概念被提出,到现在基本成了技术架构的标配。微服务的场景下衍生出了对分布式能力的大量需求:各服务之间需要相互协作和通信,以及共享状态等等,因此就有了各种中间件来为业务服务提供这种分…

紫光FPGA试用--软件篇

目录 一 软件安装启动 二 如何打开IP核?查看/修改现有IP核参数? 三 如何定义引脚? 四 如何下载code进入FPGA? 1. 下载到FPGA芯片内: 2.下载到外部FLASH中 五 如何进入在线调试模式,调试步骤 操作步骤&#xff…

微分流形之魂

找到一个非常棒的教程:本科生自学微分流形有哪些资料推荐? - 知乎 应该是目前微积分的终极答案了(非数学系) 首先,这个函数具有线性结构。所以他是属于V*的。 之前我倒没想过这个问题,以为所有的泛函都是V…

4个公式8个案例学会与AI GPT对话

一、什么是Prompt? (1)Prompt的概念 我们在使用GPT的时候,给GPT发送的消息就是Prompt. 例如,当我们问ChatGPT"WPS是什么软件?"时: 其中,"WPS是什么软件?"这句话就是Prompt. chatgpt体验:http://www.chat136.com chatgpt学习&#xff1a…

【OJ比赛日历】快周末了,不来一场比赛吗? #07.29-08.04 #13场

CompHub[1] 实时聚合多平台的数据类(Kaggle、天池…)和OJ类(Leetcode、牛客…)比赛。本账号会推送最新的比赛消息,欢迎关注! 以下信息仅供参考,以比赛官网为准 目录 2023-07-29(周六) #8场比赛2023-07-30…

一文带你迅速入门SprIngMVC,看这一篇就足够了!

0. 什么是SpringMVC 要知道什么是SpringMVC,我们首先得知道什么 MVC,MVC是软件工程中的一种架构模式,分为 Model、View、Control。它把软件系统分为模型、视图和控制器三个基本部分。 Model:模型,应用程序负责数据逻…

SVN - 记录一下无法提交代码 提示:被锁定(locked)

今天遇到一个问题,svn 在提交代码的时候出现了svn is already locked,导致代码无法提交(commit)和更新(update) 主要报错如下: 解决方法: 然后点击 Clean up 选中一下选项&#xff…

人工智能巨头碰撞——埃隆·马斯克推出xAI挑战OpenAI的统治地位

目录 前言XAI 的推出什么是XAI?它将聚焦于什么? 一:“反AI斗士”马斯克进军AI,你怎么看?二:回顾上半年的“百模大战”,中国的AI产业怎么样了?三:AI大模型这把火&#xff…

算法通过村第二关-链表白银笔记

文章目录 再战链表|反转链表剑指 Offer II 024. 反转链表熟练掌握这两种解法建立头节点的解决思路不采用建立头节点的方法采用循环/递归的方式解决 总结 再战链表|反转链表 提示:多拿些酒来,因为生命只有乌有。 剑指 Offer II 024. 反转链表 如果不使用…

9个可用于图片转文本的最佳免费 OCR 软件

光学字符识别 (OCR) 软件可帮助将不可编辑的文档格式(例如 PDF、图像或纸质文档)转换为可编辑和可搜索的机器可读格式。 OCR 应用程序通常用于从 PDF 和图像中捕获文本,并将文本转换为可编辑格式,例如 Word、Excel 或纯文本文件。…

SpringBoot复习:(3)应用打包成jar包,清单文件里的主类是我们用@SpringBootApplication注解标记的类吗?

不是. MANIFEST.MF类似如下: Manifest-Version: 1.0 Spring-Boot-Classpath-Index: BOOT-INF/classpath.idx Spring-Boot-Layers-Index: BOOT-INF/layers.idx Start-Class: com.example.demo.DemoApplication Spring-Boot-Classes: BOOT-INF/classes/ Spring-Boot-…

DevOps-GitHub/GitLab

DevOps-GitHub/GitLab GitHub是一个开源代码托管平台。基于web的Git仓库,提供共有仓库和私有仓库(私有仓库收费)。 GitLab可以创建免费私有仓库。 GitHub 为了快速操作,这里对创建仓库以及注册不做说明。 首先再GitHub上创建一…

不用手动编程!ChatGPT帮你轻松实现单片机按键输入功能

从今年年初,OpenAI发布的ChatGPT已摧古拉朽之势席卷全球,短短两个月注册用户数就超过1亿人,是全世界增长速度最快的应用。很多人都说今年是AI元年,其实也是有一定道理的,之前的AI门槛相对较高,很多人没有机…

python使用CGI编程,网页写个标题

需要有个 Linux虚拟机,安装 apache, 本次使用 deepin v23,参考: sudo apt install apache2 #安装 apache2 systemctl start apache2 # 启动 apache2 sudo a2enmod cgi # 启用CGI模块 sudo mkdir /usr/lib/cgi-bin #创…

APT32组织针对我国关基单位攻击活动分析

事件背景 2022年5月,绿盟科技伏影实验室与运营能力中心梅花K战队共同于国家某关基单位发现异常外联IP,通过攻击活动中捕获的攻击流量分析,确认此次攻击活动是由境外APT组织APT32所发起。 绿盟科技伏影实验室与运营能力中心梅花K战队利用主机…

2 种方式查找极狐GitLab 容器镜像 Tag,几分钟快速构建私有化部署实例

目录 通过 Helm 命令查找 第1步:添加 Helm Chart 第2步:更新 Helm Chart 第3步:Helm search 查找过往 tag 通过 Omnibus package 来查 极狐GitLab 是一个一体化 DevOps 平台,其灵活的私有化部署方式(源代码安装、…