0
点赞
收藏
分享

微信扫一扫

minIO 高性能对象存储 安装部署


MinIO 高性能对象存储 安装部署

  • 官方支持
    ​​​官方GitHub​​​​官网​​

MinIO 是一种高性能对象存储解决方案,它提供了与 Amazon Web Services S3 兼容的 API,并支持所有核心 S3 功能。

MinIO 旨在部署在任何地方——公共或私有云、裸机基础设施、编排环境和边缘基础设施。

MinIO 是根据 GNU Affero 通用公共许可证 v3.0 发布的高性能对象存储。它与 Amazon S3 云存储服务 API 兼容。使用 MinIO 为机器学习、分析和应用程序数据工作负载构建高性能基础架构。

linux上部署

此过程将独立的MinIO 服务器部署到 Linux 上,用于早期开发和评估 MinIO 对象存储及其与 S3 兼容的 API 层。

有关部署到生产环境的说明,请参阅​​部署 MinIO:多节点多驱动器​​。

先决条件

  • 对本地用户文件夹的读取、写入和执行权限(例如​​~/minio​​)。
  • 将二进制文件安装到系统的权限​​PATH​​​(例如访问​​/usr/local/bin​​)。
  • 熟悉 Linux 终端或 shell(Bash、ZSH 等)。
  • 64 位 Linux 操作系统(例如 RHEL 8、Ubuntu LTS 版本)。
  1. 安装 MinIO 服务器
    以下选项卡提供了使用 RPM、DEB 或二进制将 MinIO 安装到 64 位 Linux 操作系统上的示例。RPM 和 DEB 包会自动将 MinIO 安装到必要的系统路径,并创建 ​​systemd​​用于自动运行 MinIO 的服务文件。MinIO 强烈建议使用 RPM 或 DEB 安装路径。
    rpm (RHEL)
    使用以下命令下载最新的稳定版 MinIO RPM 并进行安装:

wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio-20221207005637.0.0.x86_64.rpm -O minio.rpm
sudo dnf install minio.rpm #8.0以上版本

sudo yum install minio.rpm #8.0以下版本

DEB (Debian/Ubuntu)

使用以下命令下载最新的稳定版 MinIO DEB 并进行安装:

wget https://dl.min.io/server/minio/release/linux-amd64/archive/minio_20221207005637.0.0_amd64.deb -O minio.deb
sudo dpkg -i minio.deb

二进制

wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
sudo mv minio /usr/local/bin/

  1. 启动 MinIO 服务器
    从系统终端或 shell 运行以下命令以使用该​​~/minio​​文件夹启动本地 MinIO 实例。您可以将此路径替换为本地计算机上的另一个文件夹路径:

mkdir ~/minio
minio server ~/minio --console-address :9090

该​​mkdir​​命令在指定路径中显式创建文件夹。

该命令启动 MinIO 服务器。路径参数 标识服务器在其中运行的文件夹。

该进程将其输出打印到系统控制台,类似于以下内容:

API: http://192.0.2.10:9000  http://127.0.0.1:9000
RootUser: minioadmin
RootPass: minioadmin

Console: http://192.0.2.10:9090 http://127.0.0.1:9090
RootUser: minioadmin
RootPass: minioadmin

Command-line: https://min.io/docs/minio/linux/reference/minio-mc.html
$ mc alias set myminio http://192.0.2.10:9000 minioadmin minioadmin

Documentation: https://min.io/docs/minio/linux/index.html

WARNING: Detected default credentials 'minioadmin:minioadmin', we recommend that you change these values with 'MINIO_ROOT_USER' and 'MINIO_ROOT_PASSWORD' environment variables.

  1. 将浏览器连接到 MinIO 服务器
    在网络浏览器中打开http://127.0.0.1:9000以访问MinIO 控制台。您也可以输入作为服务器命令输出的一部分指定的任何网络地址。例如,示例输出中的console: http://192.0.2.10:9090 http://127.0.0.1:9090指示用于连接到 Console 的两个可能地址。
    当该端口​​9000​​用于连接到 API 时,MinIO 会自动将浏览器访问重定向到 MinIO 控制台。
    使用输出中显示的​​RootUser​​和用户凭据登录到控制台。​​RootPass​​这些默认为.​​minioadmin | minioadmin​

您可以使用 MinIO 控制台执行一般管理任务,例如身份和访问管理、指标和日志监控或服务器配置。每个 MinIO 服务器都包含自己的嵌入式 MinIO 控制台。

minIO 高性能对象存储 安装部署_linux

  1. (可选) 安装 MinIO 客户端
    MinIO 客户端允许您从命令行使用您的 MinIO 服务器。
    下载​​mc​​客户端并将其安装到系统上的某个位置,​​PATH​​例如 ​​/usr/local/bin​​. 您也可以从下载位置运行二进制文件。

wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/mc

用于创建与本地部署关联的新别名。您可以针对此别名运行命令:​​mc alias set​​​​mc​​

mc alias set local http://127.0.0.1:9000 minioadmin minioadmin
mc admin info local

有四个参数:​​mc alias set​​

  • 别名的名称
  • MinIO 服务器的主机名或 IP 地址和端口
  • MinIO用户的访问密钥
  • MinIO用户的密钥

Docker上部署

mkdir -p ~/minio/data

docker run \
-p 9000:9000 \
-p 9090:9090 \
--name minio \
-v ~/minio/data:/data \
-e "MINIO_ROOT_USER=ROOTNAME" \
-e "MINIO_ROOT_PASSWORD=CHANGEME123" \
quay.io/minio/minio server /data --console-address ":9090"

上面的例子是这样工作的:

  • ​mkdir``~/minio/data​​在您的主目录中创建一个新的本地目录。
  • ​docker run​​启动 MinIO 容器。
  • ​-p​​将本地端口绑定到容器端口。
  • ​-name​​为容器创建一个名称。
  • ​-v​​​将文件路径设置为容器要使用的持久卷位置。当 MinIO 将数据写入时​​/data​​​,该数据镜像到本地路径​​~/minio/data​​​,允许它在容器重新启动之间持续存在。您可以替换​​~/minio/data​​为用户具有读取、写入和删除访问权限的另一个本地文件位置。
  • ​-e​​​分别设置环境变量​​MINIO_ROOT_USER​​​和​​MINIO_ROOT_PASSWORD​​。这些设置根用户凭据。更改示例值以用于您的容器。

windows上部署

  1. 安装 MinIO 服务器
    从以下 URL 下载 MinIO 可执行文件:

https://dl.min.io/server/minio/release/windows-amd64/minio.exe

下一步包括运行可执行文件的说明。您不能从资源管理器或通过双击该文件来运行可执行文件。相反,您调用可执行文件来启动服务器。

  1. 推出​​minio server​​​ 在 PowerShell 或命令提示符中,导航到可执行文件的位置或将文件的路径添加​​minio.exe​​​到系统中​​$PATH​​​。
    使用此命令在文件夹中启动本地 MinIO 实例​​​C:\minio​​​。您可以替换​​C:\minio​​为本地计算机上的另一个驱动器或文件夹路径。

.\minio.exe server C:\minio --console-address :9090

该进程将其输出打印到系统控制台,类似于以下内容:

API: http://192.0.2.10:9000  http://127.0.0.1:9000
RootUser: minioadmin
RootPass: minioadmin

Console: http://192.0.2.10:9090 http://127.0.0.1:9090
RootUser: minioadmin
RootPass: minioadmin

Command-line: https://min.io/docs/minio/linux/reference/minio-mc.html
$ mc alias set myminio http://192.0.2.10:9000 minioadmin minioadmin

Documentation: https://min.io/docs/minio/linux/index.html

WARNING: Detected default credentials 'minioadmin:minioadmin', we recommend that you change these values with 'MINIO_ROOT_USER' and 'MINIO_ROOT_PASSWORD' environment variables.

该进程与当前的 PowerShell 或命令提示符窗口相关联。关闭窗口会停止服务器并结束进程。

  1. 将浏览器连接到 MinIO 服务器
    通过转到浏览器(例如 Microsoft Edge)并转到或命令输出中指定的控制台地址之一来访问MinIO 控制台例如,示例输出中的console: http://192.0.2.10:9090 http://127.0.0.1:9090指示用于连接到 Console 的两个可能地址。​​http://127.0.0.1:9000​​​​minio server​​​当端口​​9000​​​用于连接到 API 时,MinIO 会自动将浏览器访问重定向到 MinIO 控制台。
    使用输出中显示的​​​RootUser​​​和用户凭据登录到控制台。​​RootPass​​​这些默认为.​​minioadmin | minioadmin​

您可以使用 MinIO 控制台执行一般管理任务,例如身份和访问管理、指标和日志监控或服务器配置。每个 MinIO 服务器都包含自己的嵌入式 MinIO 控制台。

minIO 高性能对象存储 安装部署_linux_02

  1. (可选)安装 MinIO 客户端
    MinIO 客户端允许您从命令行使用您的 MinIO 卷。
    从以下链接下载适用于 Windows 的独立 MinIO 服务器:
    ​​​https://dl.min.io/client/mc/release/windows-amd64/mc.exe​​双击该文件以运行它。或者,在命令提示符或 PowerShell 中运行以下命令。

\path\to\mc.exe --help

用于快速验证并连接到 MinIO 部署。​​mc.exe alias set​

mc.exe alias set local http://127.0.0.1:9000 minioadmin minioadmin
mc.exe admin info local

有四个参数:​​mc.exe alias set​

  • 别名的名称
  • MinIO 服务器的主机名或 IP 地址和端口
  • MinIO用户的访问密钥
  • MinIO用户的密钥

Kubernetes上部署

先决条件

  • 现有的 Kubernetes 部署,其中至少一个工作节点具有本地连接的驱动器。
  • ​kubectl​​配置为在目标 Kubernetes 部署上创建和访问资源的本地安装。
  • 熟悉 Kubernetes 环境
  • 熟悉使用终端或 Shell 环境

程序

  1. 下载 MinIO 对象
    下载 MinIO Kubernetes 对象定义
    下载​​​minio-dev.yaml​​到你的主机:

curl https://raw.githubusercontent.com/minio/docs/master/source/extra/examples/minio-dev.yaml -O

该文件描述了两个 Kubernetes 资源:

  • 一个新的命名空间​​minio-dev​​,以及
  • 使用工作节点上的驱动器或卷来提供数据的 MinIO pod

选择minio 对象 yaml 概述以获得对象的更详细描述。

MinIO 对象 YAML 概述

  1. 应用 MinIO 对象定义
    以下命令应用​​​minio-dev.yaml​​配置并将对象部署到 Kubernetes:

kubectl apply -f minio-dev.yaml

命令输出应类似于以下内容:

namespace/minio-dev created
pod/minio created

您可以通过运行以下命令来验证 pod 的状态:​​kubectl get pods​

kubectl get pods -n minio-dev

输出应类似于以下内容:

NAME    READY   STATUS    RESTARTS   AGE
minio 1/1 Running 0 77s

您还可以使用以下命令来检索有关 pod 状态的详细信息:

kubectl describe pod/minio -n minio-dev

kubectl logs pod/minio -n minio-dev

  1. 临时访问 MinIO S3 API 和控制台
    使用命令临时将流量从 MinIO pod 转发到本地机器:​​​kubectl port-forward​

kubectl port-forward pod/minio 9000 9090

该命令在 shell 中处于活动状态时将 pod 端口​​9000​​​和转发到本地计算机上的匹配端口。​​9090​​​该命令仅在 shell 会话中处于活动状态时才起作用。终止会话会关闭本地计算机上的端口。​​kubectl port-forward​

笔记

此过程的以下步骤假设有一个活动命令。​​kubectl port-forward​

要配置对 pod 的长期访问,请在 Kubernetes 中配置​​Ingress​​或类似的网络控制组件,以路由进出 pod 的流量。配置 Ingress 超出了本文档的范围。

  1. 将浏览器连接到 MinIO 服务器
    通过在本地机器上打开浏览器并导航到 来访问MinIO 控制台​​​http://127.0.0.1:9090​​​。
    使用凭据登录到控制台。这些是默认的root用户凭据。​​​minioadmin | minioadmin​

您可以使用 MinIO 控制台执行一般管理任务,例如身份和访问管理、指标和日志监控或服务器配置。每个 MinIO 服务器都包含自己的嵌入式 MinIO 控制台。

minIO 高性能对象存储 安装部署_服务器_03

  1. (可选)连接 MinIO 客户端
    如果您的本地计算机已​​​安装​​​,请使用命令进行身份验证并连接到 MinIO 部署:​​mc​​​​mc alias set​

mc alias set k8s-minio-dev http://127.0.0.1:9000 minioadmin minioadmin
mc admin info k8s-minio-dev

  • 别名的名称
  • MinIO 服务器的主机名或 IP 地址和端口
  • MinIO用户的访问密钥
  • MinIO用户的密钥

mc alias set k8s-minio-dev http://127.0.0.1:9000 minioadmin minioadmin
mc admin info k8s-minio-dev

  • 别名的名称
  • MinIO 服务器的主机名或 IP 地址和端口
  • MinIO用户的访问密钥
  • MinIO用户的密钥


举报

相关推荐

0 条评论