文档

MinIO Server

MinIO Server

minio server 命令启动 MinIO 服务器进程

minio server /mnt/disk{1...4}

有关在裸机环境中部署 minio server 的示例,请参阅 安装和管理

有关在 Kubernetes 环境中部署 minio server 的示例,请参阅 部署 MinIO 租户

语法

启动 minio 服务器进程。

该命令具有以下语法

minio server [FLAGS] HOSTNAME/DIRECTORIES [HOSTNAME/DIRECTORIES..]

该命令接受以下参数

HOSTNAME

minio server 进程的主机名。

对于独立部署,此字段是可选的。您可以只使用 DIRECTORIES 参数启动独立的 server 进程。

对于分布式部署,请指定部署中每个 minio server 的主机名。这组 minio server 进程代表一个 服务器池

HOSTNAME 支持 MinIO 扩展表示法 {x...y} 来表示一系列连续的主机名。MinIO 需要连续的主机名来识别集合中的每个 minio server 进程。

例如,https://minio{1...4}.example.net 扩展为

  • https://minio1.example.net

  • https://minio2.example.net

  • https://minio3.example.net

  • https://minio4.example.net

您必须在服务器池中的每个主机上使用相同的 HOSTNAMEDIRECTORIES 组合来运行 minio server 命令。

每个额外的 HOSTNAME/DIRECTORIES 对表示一个额外的服务器集,用于 MinIO 部署的水平扩展。有关服务器池的更多信息,请参阅服务器池

DIRECTORIES
必需

minio server 进程用作存储后端的目录或驱动器。

DIRECTORIES 支持 MinIO 扩展表示法 {x...y} 来表示一系列连续的文件夹或驱动器。例如,/mnt/disk{1...4} 扩展为

  • /mnt/disk1

  • /mnt/disk2

  • /mnt/disk3

  • /mnt/disk4

DIRECTORIES 路径在首次启动 minio 进程时必须为空。

minio server 进程需要至少 4 个驱动器或目录才能启用纠删码

重要

MinIO 推荐使用本地连接的驱动器,其中 DIRECTORIES 路径指向主机上的每个驱动器。MinIO 不推荐使用网络附加存储,因为网络延迟会降低这些驱动器与本地连接存储相比的性能。

对于开发或评估,您可以在单个物理卷上指定多个逻辑目录或分区,以在部署上启用纠删码。

对于生产环境,MinIO 不推荐在单个物理磁盘上使用多个逻辑目录或分区。虽然 MinIO 支持这些配置,但潜在的成本节省是以降低可靠性为代价的。

--address
可选

minio 服务器进程绑定到特定的网络地址和端口号。将地址和端口指定为 ADDRESS:PORT,其中 ADDRESS 是 IP 地址或主机名,PORT 是主机系统上一个有效且开放的端口。MinIO 支持 IPv4 和 IPv6 寻址,前提是指定的地址是可路由和可解析的。

要更改主机上配置的所有 IP 地址或主机名的端口号,只需指定 :PORT,其中 PORT 是主机上一个有效且开放的端口。

版本 RELEASE.2023-01-02T09-40-09Z 中的更改: 您可以配置您的主机文件,让 MinIO 仅在特定 IP 上侦听。例如,如果机器的 /etc/hosts 文件包含以下内容

127.0.1.1       minioip
127.0.1.2       minioip

类似下面的命令将在两个配置的 IP 地址上侦听端口 9000 上的 API 调用。

minio server --address "minioip:9000" ~/miniodirectory

如果省略,minio 会绑定到主机上所有已配置的 IPv4 地址、IPv6 地址和主机名的 9000 端口。

--console-address
可选

为嵌入式 MinIO Console 指定一个静态端口。

省略此项可让 MinIO 在服务器启动时生成一个动态端口。MinIO 服务器会将端口输出到系统日志中。

--ftp
可选

启用并配置一个文件传输协议 (FTP) 或基于 SSL/TLS 的文件传输协议 (FTPS) 服务器。多次使用此标志以键值对的形式指定地址端口、被动端口范围或 TLS 证书和密钥。

有效键

  • address,它接受一个用于服务器的端口,通常是 8021

  • (可选) passive-port-range,它限制了服务器可用于传输数据的潜在端口范围,例如当严格的防火墙规则限制了 FTP 服务器可以请求连接的端口时

  • (可选) tls-private-key,它接受用户用于通过 TLS 访问 MinIO 部署的私钥路径

    tls-public-cert 一起使用。

  • (可选) tls-public-cert,它接受用于通过 TLS 访问 MinIO 部署的证书路径

    tls-private-key 一起使用。

对于启用了 TLS 的 MinIO 部署,省略 tls-private-keytls-public-key 会让 MinIO 使用 MinIO 部署的默认 TLS 密钥。有关更多信息,请参阅网络加密 (TLS)。只有当需要指定与 MinIO 默认不同的 TLS 证书和密钥集时(例如,使用不同的域),才需要指定证书和私钥。

例如:

minio server http://server{1...4}/disk{1...4} \
--ftp="address=:8021"                         \
--ftp="passive-port-range=30000-40000"        \
--ftp="tls-private-key=path/to/private.key"   \
--ftp="tls-public-cert=path/to/public.crt"    \
...
--sftp
可选

启用并配置 SSH 文件传输协议 (SFTP) 服务器。多次使用以指定每个所需的键值对。

下表列出了有效的键。

描述

有效值

address

用于连接 SFTP 的端口。

任何有效的端口号,通常是 8022

ssh-private-key

用户私钥文件的路径。

从当前位置到要使用的密钥文件的绝对路径或相对路径。

trusted-user-ca-key

指定一个包含受信任的证书颁发机构公钥的文件,该机构用于签署用户证书以进行身份验证。该文件必须包含用户主体列表,并且该列表必须包括可以使用该密钥进行身份验证的用户。

从当前位置到用户受信任的证书颁发机构公钥文件的绝对路径或相对路径。

pub-key-algos

支持的公钥算法的逗号分隔列表。

ssh-ed25519
sk-ssh-ed25519@openssh.com
sk-ecdsa-sha2-nistp256@openssh.com
ecdsa-sha2-nistp256
ecdsa-sha2-nistp384
ecdsa-sha2-nistp521
rsa-sha2-256
rsa-sha2-512
ssh-rsa
ssh-dss

kex-algos

按优先级顺序排列的密钥交换算法的逗号分隔列表。

curve25519-sha256
curve25519-sha256@libssh.org
ecdh-sha2-nistp256
ecdh-sha2-nistp384
ecdh-sha2-nistp521
diffie-hellman-group14-sha256
diffie-hellman-group16-sha512
diffie-hellman-group14-sha1
diffie-hellman-group1-sha1

cipher-algos

支持的加密算法的逗号分隔列表。

aes128-ctr
aes192-ctr
aes256-ctr
aes128-gcm@openssh.com
aes256-gcm@openssh.com
chacha20-poly1305@openssh.com
arcfour256
arcfour128
arcfour
aes128-cbc
3des-cbc

mac-algos

按偏好顺序排列的 MAC 算法的逗号分隔列表。基于 RFC 4253 第 6.4 节,但不包括已弃用的 hmac-md5 变体。

hmac-sha2-256-etm@openssh.com
hmac-sha2-512-etm@openssh.com
hmac-sha2-256
hmac-sha2-512
hmac-sha1
hmac-sha1-96

disable-password-auth

禁用密码身份验证。

true

例如:

minio server http://server{1...4}/disk{1...4}                                 \
--sftp="address=:8022" --sftp="ssh-private-key=/home/miniouser/.ssh/id_rsa"   \
--sftp="kex-algos=diffie-hellman-group14-sha256,curve25519-sha256@libssh.org" \
...
--certs-dir, -S
可选

指定包含 minio 进程用于配置 TLS/SSL 连接的证书的文件夹路径。

指定文件夹的内容必须遵循默认路径结构。例如,--certs-dir /etc/minio 的路径内容应类似于以下内容

/etc/minio
  private.key
  public.crt
  domain.tld/
    private.key
    public.crt
  CAs/
    full-chain-ca.crt

省略此项以使用默认目录路径

  • Linux/macOS: ${HOME}/.minio/certs

  • Windows: %%USERPROFILE%%\.minio\certs

有关 TLS/SSL 连接的更多信息,请参阅网络加密 (TLS)

重要

MinIO Server RELEASE.2023-12-09T18-17-51Z 移除了已弃用的 --config-dir | -C 参数。使用此标志的部署可能会在未启用 TLS 的情况下启动。请将这些参数替换为 --certs-dir | -S 并重新启动以重新启用 TLS。

--quiet
可选

禁用启动信息。

--anonymous
可选

从日志中隐藏敏感信息。

--json
可选

JSON 格式输出服务器日志和启动信息。

注意

您可以通过在 MINIO_OPTS 环境变量中设置上述任何 minio 参数来定义它们。此变量的值是一个包含您希望在启动 MinIO 服务器时设置的上述任何参数及其值的字符串。

设置

您可以通过定义额外的配置值环境变量来对 MinIO 服务器进程进行其他自定义。

许多配置值和环境变量定义相同的值。如果您同时设置了配置值和匹配的环境变量,MinIO 将使用环境变量中的值。

English 中文