官方文档地址:http://docs.minio.org.cn/docs/

MinIO 是在 GNU Affero 通用公共许可证 v3.0 下发布的高性能对象存储。 它是与 Amazon S3 云存储服务兼容的 API。 使用 MinIO 为机器学习、分析和应用程序数据工作负载构建高性能基础架构。 对于 Kubernetes 环境,请使用 MinIO Kubernetes Operator(https://github.com/minio/operator/blob/master/README.md)。

独立的 MinIO 服务器最适合早期开发和评估。 某些功能,例如版本控制、对象锁定和存储桶复制 需要使用擦除编码分布式部署 MinIO。

对于扩展的开发和生产,请在启用擦除编码的情况下部署 MinIO - 特别是, 每个 MinIO 服务器最少 4 个驱动器。

容器安装

运行以下命令以使用临时数据卷将 MinIO 的最新稳定映像作为容器运行:

podman run -p 9000:9000 -p 9001:9001 minio/minio server /data --console-address ":9001"

MinIO 部署开始使用默认的 root 凭据 minioadmin:minioadmin。您可以使用 MinIO 控制台测试部署,这是一个嵌入式 内置于 MinIO 服务器的对象浏览器。将主机上运行的 Web 浏览器指向 http://127.0.0.1:9000 并使用 根凭据。您可以使用浏览器来创建桶、上传对象以及浏览 MinIO 服务器的内容。

注意:要在持久存储上部署 MinIO,您必须使用 podman -v 选项将本地持久目录从主机操作系统映射到容器。例如,-v /mnt/data:/data 将位于 /mnt/data 的主机操作系统驱动器映射到容器上的 /data。

二进制下载

使用以下命令在运行 64 位 Intel/AMD 架构的 Linux 主机上运行独立的 MinIO 服务器。将/data 替换为您希望 MinIO 存储数据的驱动器或目录的路径。

下载地址:https://dl.min.io/

wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
./minio server /data

将/data 替换为您希望 MinIO 存储数据的驱动器或目录的路径。

允许防火墙的端口访问

默认情况下,MinIO 使用端口 9000 来侦听传入连接。如果您的平台默认阻止该端口,您可能需要启用对该端口的访问。

对于启用了 firewall-cmd (CentOS) 的主机,您可以使用 firewall-cmd 命令来允许特定端口的流量。 使用以下命令允许访问端口 9000

firewall-cmd --get-active-zones

此命令获取活动区域。 现在,将端口规则应用于上面返回的相关区域。 例如,如果区域是public,请使用

firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --reload

对于启用了 iptables 的主机(RHEL、CentOS 等),您可以使用 iptables 命令来启用进入特定端口的所有流量。 使用以下命令允许 访问 9000 端口

iptables -A INPUT -p tcp --dport 9000 -j ACCEPT
service iptables restart # 下面的命令启用所有传入端口的流量,范围从 9000 到 9010。
iptables -A INPUT -p tcp --dport 9000:9010 -j ACCEPT
service iptables restart

预先存在的数据

当部署在单个驱动器上时,MinIO 服务器允许客户端访问数据目录中的任何预先存在的数据。例如,如果 MinIO 是用命令 minio server /mnt/data 启动的,/mnt/data 目录中的任何预先存在的数据都可以被客户端访问。

上述语句也适用于所有网关后端。

使用 MinIO 控制台进行测试

MinIO Server 带有一个基于 Web 的嵌入式对象浏览器。将您的 Web 浏览器指向 http://127.0.0.1:9000 以确保您的服务器已成功启动。

注意:默认情况下,MinIO 在随机端口上运行控制台,如果您希望选择特定端口,请使用 --console-address 来选择特定接口和端口。

升级 MinIO

MinIO 服务器支持滚动升级,即您可以在分布式集群中一次更新一个 MinIO 实例。 这允许在不停机的情况下进行升级。 升级可以通过用最新版本替换二进制文件并以滚动方式重新启动所有服务器来手动完成。 但是,我们建议所有用户从客户端使用 mc admin update。 这将同时更新集群中的所有节点并重新启动它们,如来自 MinIO 客户端 (mc) 的以下命令所示:

mc admin update <minio alias, e.g., myminio>

MinIO 升级期间要记住的重要事项

  • mc admin update 仅在运行 MinIO 的用户对二进制文件所在的父目录具有写访问权限时才有效,例如,如果当前二进制文件位于 /usr/local/bin/minio,则需要写入访问/usr/local/bin。
  • mc admin update 同时更新和重启所有服务器,应用程序会在升级后重试并继续各自的操作。
  • mc admin update 在 kubernetes/container 环境中被禁用,容器环境提供自己的机制来推出更新。
  • 在联合设置的情况下,mc admin update 应该单独针对每个集群运行。在所有集群成功更新之前,避免将 mc 更新为任何新版本。
  • 如果使用 kes 作为 MinIO 的 KMS,只需替换二进制文件并重新启动 kes 有关 kes 的更多信息可以在 here 中找到
  • 如果将 Vault 作为 KMS 与 MinIO 一起使用,请确保您已遵循此处概述的 Vault 升级过程:https://www.vaultproject.io/docs/upgrading/index.html
  • 如果将 etcd 与 MinIO 用于联合,请确保您已遵循此处概述的 etcd 升级过程:https://github.com/etcd-io/etcd/blob/master/Documentation/upgrades/upgrading-etcd.md

MinIO 快速入门指南的更多相关文章

  1. AngularJS快速入门指南20:快速参考

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  2. AngularJS快速入门指南19:示例代码

    本文给出的大部分示例都可以直接运行,通过点击运行按钮来查看结果,同时支持在线编辑代码. <div ng-app=""> <p>Name: <input ...

  3. AngularJS快速入门指南18:Application

    是时候创建一个真正的AngularJS单页面应用程序了(SPA). 一个AngularJS应用程序示例 你已经了解了足够多的内容来创建第一个AngularJS应用程序: My Note Save Cl ...

  4. AngularJS快速入门指南17:Includes

    使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML import ...

  5. AngularJS快速入门指南16:Bootstrap

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  6. AngularJS快速入门指南15:API

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  7. AngularJS快速入门指南14:数据验证

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  8. AngularJS快速入门指南13:表单

    一个AngularJS表单是一组输入型控件的集合. HTML控件 HTML输入型标签标包括: input标签 select标签 button标签 textarea标签 HTML表单 HTML表单将各种 ...

  9. AngularJS快速入门指南12:模块

    AngularJS模块定义了一个application. 模块是一个application中不同部分的容器. application中的所有控制器都应该属于一个模块. 带有一个控制器的模块 下面这个a ...

随机推荐

  1. javascript基本属性访问对象的属性和方法

    var myName = "Shelley"; //字符串基本类型 alert(myName.length);  //隐式创建String对象,数值与myName相同,并执行len ...

  2. final关键字用于修饰局部变量和修饰成员变量

    修饰变量 1. 局部变量--基本类型 基本类型的局部变量,被fifinal修饰后,只能赋值一次,不能再更改.代码如下: public class FinalDemo1 { public static ...

  3. 循环结构-for循环和while循环

    循环语句1--for for循环语句格式: for(初始化表达式①; 布尔表达式②; 步进表达式④){ 循环体③ } 执行流程 执行顺序:①②③④>②③④>②③④-②不满足为止. ①负责完 ...

  4. idea 内置tomcat jersey 上传文件报403错误

    Request processing failed; nested exception is com.sun.jersey.api.client.UniformInterfaceException: ...

  5. APISpace 绕口令API接口 免费好用

    绕口令又称急口令.吃口令.拗口令等.是一种民间传统的语言游戏 ,由于它是将若干双声.叠韵词或发音相同.相近的语.词有意集中在一起,组成简单.有趣的语韵,要求快速念出,所以读起来使人感到节奏感强,妙趣横 ...

  6. MyBatis-通用Mapper-tk.mybatis的使用

    MyBatis-通用Mapper[更新中] tk.mybatis的使用 前言 使用MyBatis开发,如果是普通是同MyBatis进行开发,那么就需要在xml文件中编写大量的SQL.当数据库表结构发生 ...

  7. PHP进阶玩法

    1. 删除不必要的模块. PHP随带内置的PHP模块.它们对许多任务来说很有用,但是不是每个项目都需要它们.只要输入下面这个命令,就可以查看可用的PHP模块: # php - m  一旦你查看了列表, ...

  8. Jmix- 业务系统高效开发的新方式

    企业在数字化转型的过程中,都面临将现有的业务流程进行"软件化"的过程.然而,在我们的印象中,通常会觉得针对业务系统的软件开发不是特别高效.这背后有很多原因,从开发角度看,有一个主要 ...

  9. Vue mixin(混入) && 插件

    1 # mixin(混入) 2 # 功能:可以把多个组件公用的配置提取成一个混入对象 3 # 使用方法: 4 # 第一步:{data(){return {...}}, methods:{...},.. ...

  10. PROFIBUS,PROFINET,Ethernet三者的区别

    PROFIBUS,PROFINET,Ethernet三者的区别 简单一点说,PROFINET=PROFIbus+etherNET,把Profibus的主从结构移植到以太网上,所以profinet会有C ...