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 版本)。
-
安装 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/
-
启动 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.
-
将浏览器连接到 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 客户端
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上部署
-
安装 MinIO 服务器
从以下 URL 下载 MinIO 可执行文件:
https://dl.min.io/server/minio/release/windows-amd64/minio.exe
下一步包括运行可执行文件的说明。您不能从资源管理器或通过双击该文件来运行可执行文件。相反,您调用可执行文件来启动服务器。
-
推出
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 或命令提示符窗口相关联。关闭窗口会停止服务器并结束进程。
-
将浏览器连接到 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 客户端
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 环境
程序
-
下载 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 概述
- 一个新的命名空间
-
应用 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
-
临时访问 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 超出了本文档的范围。
-
将浏览器连接到 MinIO 服务器
通过在本地机器上打开浏览器并导航到 来访问MinIO 控制台
http://127.0.0.1:9090
。使用凭据登录到控制台。这些是默认的root用户凭据。
minioadmin | minioadmin
您可以使用 MinIO 控制台执行一般管理任务,例如身份和访问管理、指标和日志监控或服务器配置。每个 MinIO 服务器都包含自己的嵌入式 MinIO 控制台。
-
(可选)连接 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用户的密钥
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/156038.html