MinIO分布式文件系统介绍

1、不同存储方式的对比:

2、 分布式文件系统对比

 

3、MinIO的特点

MinIO特点

  • 数据保护:Minio使用Minio Erasure Code(纠删码)来防止硬件故障。即便损坏一半以上的driver,但是仍然可以从中恢复。

  • 高性能:作为高性能对象存储,在标准硬件条件下它能达到55GB/s的读、35GB/s的写速率

  • 可扩容:不同MinIO集群可以组成联邦,并形成一个全局的命名空间,并跨越多个数据中心

  • SDK支持:基于Minio轻量的特点,它得到类似Java、Python或Go等语言的sdk支持

  • 有操作页面:面向用户友好的简单操作界面,非常方便的管理Bucket及里面的文件资源

  • 功能简单:这一设计原则让MinIO不容易出错、更快启动

  • 丰富的API:支持文件资源的分享连接及分享链接的过期策略、存储桶操作、文件列表访问及文件上传下载的基本功能等。

  • 文件变化主动通知:存储桶(Bucket)如果发生改变,比如上传对象和删除对象,可以使用存储桶事件通知机制进行监控,并通过以下方式发布出去:AMQP、MQTT、Elasticsearch、Redis、NATS、MySQL、Kafka、Webhooks等。

4、基本概念

bucket——类比于文件系统的目录

Object——类比文件系统的文件

Keys——类比文件名

5、创建MinIO代码如下

docker run -p 9000:9000 --name minio -d --restart=always -e "MINIO_ACCESS_KEY=minio" -e "MINIO_SECRET_KEY=minio123" -v /home/data:/data -v /home/config:/root/.minio minio/minio server /data

虚拟机终端效果如图:

其中命令:

docker load -i minio.tar

作用为加载上传上去的minio.tar文件

6、验证是否已经创建好MinIO分布式文件系统

在浏览器中访问http://192.168.76.132:9000/其中服务器地址192.168.76.132,minio端口号9000;

能够打开以上minio登入界面,即说明成功。

7、在idea中上传主机中已有的list.html文件到MinIO代码如下

public class MinIOTest {


    /**
     * 把list.html文件上传到minio中,并且可以在浏览器中访问。
     * @param args
     */
    public static void main(String[] args) {

        FileInputStream fileInputStream = null;
        try {

            fileInputStream =  new FileInputStream("D:\\develop\\list.html");;

            //1.创建minio链接客户端
            MinioClient minioClient = MinioClient.builder().credentials("minio", "minio123").endpoint("http://192.168.76.132:9000").build();
            //2.上传
            PutObjectArgs putObjectArgs = PutObjectArgs.builder()
                    .object("list.html")//文件名
                    .contentType("text/html")//文件类型
                    .bucket("leadnews")//桶名词  与minio创建的名词一致
                    .stream(fileInputStream, fileInputStream.available(), -1) //文件流
                    .build();
            minioClient.putObject(putObjectArgs);

            System.out.println("http://192.168.76.132:9000/leadnews/list.html");

        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

运行结束之后即可在minio客户端看到上传上去的文件:

 

8、将封装minio为start:Day2-20-MinIO-封装为starter使用_哔哩哔哩_bilibili

封装 MinIO 为一个启动脚本(例如命名为start)的主要目的是简化 MinIO 的启动过程,并提供一个统一的入口点来管理 MinIO 服务。这样做的好处包括:

  1. 简化启动过程:通过封装为脚本,用户可以使用一个简单的命令来启动 MinIO,而无需记住复杂的启动命令和参数。

  2. 统一管理:将 MinIO 启动封装为一个脚本,可以更方便地进行统一管理和维护。用户可以通过相同的方式启动、停止和重启 MinIO 服务,使管理更加简洁高效。

  3. 参数化配置:启动脚本可以允许用户通过参数来配置 MinIO 启动时的参数,例如端口号、存储路径、访问密钥等,使用户能够根据需求进行灵活配置。

  4. 易于部署和分享:封装为启动脚本后,可以轻松地将 MinIO 部署到其他环境中,而不必担心复杂的配置和依赖。同时,也方便与他人分享和交流,使得部署和使用更加便捷。

总之,将 MinIO 封装为一个启动脚本能够提高用户的使用体验,简化管理和部署过程,使得 MinIO 的使用更加方便和高效。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PID算法学习

PID算法介绍 在过程控制中,按偏差的比例(P)、积分(I)和微分(D)进行控制的PID控制器(亦称PID调节器)是应用最为广泛的一种自动控制器。它具有原理简单,易于实…

冯唐成事心法笔记 —— 知世

系列文章目录 冯唐成事心法笔记 —— 知己 冯唐成事心法笔记 —— 知人 冯唐成事心法笔记 —— 知世 冯唐成事心法笔记 —— 知智慧 文章目录 系列文章目录PART 3 知世 成事者的自我修养怎样做一个讨人喜欢的人第一,诚心第二,虚心 如何正确看待别人的评…

MQTTX工具获取及使用

工具获取地址:百度网盘 请输入提取码 新建连接 订阅主题

Redis分布式锁手动实现

Redis分布式锁手动实现 java中锁机制 在 Java 中,锁是用来同步并发访问共享资源的机制。它确保了在一个时间点,只有一个线程可以执行某个代码块或方法,从而防止了数据的不一致和竞态条件。Java 提供了多种锁机制,包括内置锁&…

全国各地级市财政收入支出明细统计数据2003-2022年

01、数据简介 全国各地级市财政统计主要是按地级市财政支出和财政收入两项统计,反映地区财政资金形成、分配以及使用情况的统计,​是由地区各地级市统计局统计公布,是加强财政资金管理使用的依据,研究国民收入分配和再分配的重要…

山东省2024年首版次测试报告具体的要求是什么?

山东省首版次测试报告的具体要求可能会根据每年的政策调整、行业变化以及申报的具体产品而有所不同。但一般而言,山东省首版次测试报告需要满足以下一些基本要求和标准: 1.完整性:测试报告应涵盖所有关键的测试环节,包括但不限于测…

张小泉签约实在智能,用实在Agent打造自动化高

在不少老杭州人的童年记忆里,妈妈裁剪衣服、料理食材、修剪各种物品,用的都是张小泉刀剪。 近日,实在智能与“刀剪第一股”张小泉(股票代码:301055.SZ)正式达成合作,实在Agent数字员工助力张小…

AM解调 FPGA(寻找复刻电赛电赛D题的)

设计平台 Quartus II10.3mif产生工具modelsimSE (仿真用) DDS(直接数字式频率合成器) 从前面的内容可知,我们需要产生一个载波,并且在仿真时,我们还需要一个较低频率的正弦波信号来充当我们的…

划重点:用这个技巧,抖音粉丝涨不停!

在这个信息爆炸的时代,如何在抖音上脱颖而出,吸引大量粉丝,成为了每一个创作者心中的痛。你是否曾经在发布作品后焦急等待评论,期待着每一次互动?如果你有这样的困扰,那么这篇文章将为你打开一扇新的大门&a…

【Claude 3 Opus】Claude 3 Opus 模型正式上线抢先体验

文章目录 1. Claude 3 Opus介绍2. Claude 3 Opus 支持的应用场景3. 申请Claude 3 Opus访问4. Claude 3 Opus初体验5. 『云上探索实验室』Bedrock 体验又更新啦6. 参考链接 1. Claude 3 Opus介绍 近期,亚马逊云宣布 Anthropic 的 Claude 3 Opus 模型已在 Amazon Bed…

大数据分析与应用实验(黑龙江大学)

实验一 Hadoop伪分布式实验环境搭建与WordCount程序 一、实验目的 1、学习搭建Hadoop伪分布式实验环境 2、在伪分布式实验环境下运行WordCount程序 二、实验内容 1、搭建Hadoop伪分布式实验环境,并安装Eclipse。 2、在Eclipse环境下,编写并执行Wor…

【JVM】从i++到JVM栈帧

【JVM】从i到JVM栈帧 本篇博客将用两个代码例子,简单认识一下JVM与栈帧结构以及其作用 从i与i说起 先不急着看i和i,我们来看看JVM虚拟机(请看VCR.JPG) 我们初学JAVA的时候一定都听到过JAVA“跨平台”的特性,也就是…

西瓜书学习——线性判别分析

文章目录 定义LDA的具体步骤1. 计算类内散布矩阵(Within-Class Scatter Matrix)2. 计算类间散布矩阵(Between-Class Scatter Matrix)3. 求解最佳投影向量4. 数据投影5. 分类 定义 线性判别分析(Linear Discriminant A…

安装svn网络有问题怎么办?

🏆本文收录于「Bug调优」专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&…

【C++进阶之路】C++11(下) —— 线程库

序言 本篇文章主要是填之前C11留下的坑以及了解与熟悉线程库,有读者感兴趣之前的内容的话可见「C进阶之路」专栏中标题为「C11」的内容,废话不多说,先来概括一下本文的内容,首先我们会从历史的角度分别谈及Linux以及Windows下的线…

JetBrains GoLand v2024.1 激活版 (Go语言集成开发IDE)

前言 JetBrains GoLand是一款专门为Go语言开发人员构建的跨平台的集成开发环境。动态错误检测和修复建议、快速安全重构、智能代码完成、无效代码检测和文档提示可以帮助新手和有经验的Go开发人员高效地创建可靠的代码。GoLand还支持JavaScript,TypeScript&#xf…

AIX7环境上一次艰难的Oracle打补丁经历

系统环境 AIX :7200-05-03-2148 Oracle:11.2.0.4 PSU: 11.2.0.4.201020(31718723) perl:5.28 问题一:AUTO patch #/u01/app/11.2.0/grid/OPatch/opatch auto /tmp/31718723 错误信息如下:匹配mos 2516761.1…

K8s: 公有镜像中心和私有镜像中心的搭建

公有镜像中心的搭建和使用 1 )在 官方docker镜像中心推送 在 hub.docker.com 上注册账号 (国内一般访问不了,原因不多说) 找到 Create Repository 按钮就行仓库的创建 这样就在官方创建了一个仓库,比如地址为: xx/y-y xx 是我的账户名y-y 是…

MATLAB - 机器人动力学 - 质心(Center of Mass)

系列文章目录 前言 一、用法 com centerOfMass(robot) com centerOfMass(robot,configuration) [com,comJac] centerOfMass(robot,configuration) 二、说明 com centerOfMass(robot) 计算机器人模型在原点构型处相对于基础坐标系的质心位置。com centerOfMass(robot,conf…

TCP关闭连接时的一些思考

TCP协议是TCP/IP栈中最复杂的协议,它最大的优点是传输的可靠性,这通过面向连接、按序传输、超时重传、流量控制等机制保证其传输的可靠性。但这并不是我们今天要讨论的重点! TCP通信的过程分别是三个阶段:建立连接、传输数据、关…