Silo 服务端(minio)
Silo 服务端
minio server 命令用于启动 Silo 服务端进程。可执行文件与子命令名称 minio server 属于兼容契约:
有关在裸金属环境中部署 minio server 的示例,请参阅 安装与管理。
有关在 Kubernetes 环境中部署 minio server 的示例,请参阅 部署 Silo Tenant。
语法
启动 minio server 进程。
该命令语法如下:
该命令接受以下参数:
HOSTNAME
mc-cmd
minio server 进程的主机名。
对于单机部署,此字段为 可选。 仅使用 DIRECTORIES 参数即可启动一个单机 server 进程。
对于分布式部署,请指定部署中每个 minio server 的主机名。 这一组 minio server 进程共同表示一个 服务器池。
HOSTNAME 支持扩展记法 {x...y},用于表示按顺序排列的一组主机名。Silo 要求 使用连续主机名,以识别该集合中的每个 minio server 进程。
例如,https://minio{1...4}.example.net 会扩展为:
https://minio1.example.nethttps://minio2.example.nethttps://minio3.example.nethttps://minio4.example.net
你必须在 服务器池 中每台主机上,使用 相同 的 HOSTNAME 和 DIRECTORIES 组合来运行 minio server 命令。
每增加一个 HOSTNAME/DIRECTORIES 对,就表示增加一个 Server Set,用于 Silo 部署的水平扩展。有关服务器池的更多信息,请参阅 服务器池。
DIRECTORIES
mc-cmd
Required
minio server 进程用作存储后端的目录或驱动器。
DIRECTORIES 支持扩展记法 {x...y},用于表示按顺序排列的一组文件夹或驱动器。例如,/mnt/disk{1...4} 会扩展为:
/mnt/disk1/mnt/disk2/mnt/disk3/mnt/disk4
首次启动 minio 进程时,DIRECTORIES 路径 必须 为空。
minio server 进程至少需要 4 个驱动器或目录才能启用 erasure coding。
重要
Silo 建议使用本地直连驱动器,即 DIRECTORIES 路径指向主机上的各个驱动器。除非已验证完整技术栈,应避免把网络附加存储用作主对象数据存储,因为其网络延迟和故障语义与本地直连存储不同。
在开发或评估场景中,你可以在单个物理卷上指定多个逻辑目录或分区,以便在部署中启用纠删码。
对于生产环境,不要 把同一物理磁盘上的多个逻辑目录或分区当作独立故障域。表面上的驱动器数量不能提供物理磁盘冗余。
--address
mc-cmd
Optional
将 minio server 进程绑定到特定网络地址和端口号。 将地址和端口指定为 ADDRESS:PORT,其中 ADDRESS 是 IP 地址或主机名,PORT 是主机系统上有效且开放的端口。 MinIO 同时支持 IPv4 和 IPv6 寻址,前提是指定地址可路由且可解析。
若要为主机上配置的所有 IP 地址或主机名修改端口号,仅指定 :PORT 即可,其中 PORT 是主机上有效且开放的端口。
变更: RELEASE.2023-01-02T09-40-09Z
你可以通过配置 hosts 文件,让 MinIO 仅监听特定 IP。 例如,如果机器的 /etc/hosts 文件包含以下内容:
类似下面的命令会在两个已配置 IP 地址的 9000 端口上监听 API 调用。
若省略该参数,minio 会绑定到主机上所有已配置 IPv4 地址、IPv6 地址和主机名的 9000 端口。
--console-address
mc-cmd
Optional
为内置 MinIO Console 指定静态端口。
省略时,MinIO 会在 server 启动时生成动态端口。 MinIO server 会将该端口输出到系统日志。
--ftp
mc-cmd
Optional
启用并配置 File Transfer Protocol(FTP)或 File Transfer Protocol over SSL/TLS(FTPS)服务器。 多次使用该 flag 可按键值对指定地址端口、被动端口范围或 TLS 证书与密钥。
有效键如下:
-
address,用于指定服务器使用的单个端口,通常为8021 -
(Optional)
passive-port-range,用于限制服务器可用于传输数据的端口范围,例如防火墙规则较严格、限制 FTP 服务器可为连接请求端口时 -
(Optional)
tls-private-key,用于指定用户私钥路径,以便通过 TLS 访问 MinIO 部署与
tls-public-cert配合使用。 -
(Optional)
tls-public-cert,用于指定证书路径,以便通过 TLS 访问 MinIO 部署与
tls-private-key配合使用。
对于已启用 TLS 的 MinIO 部署,省略 tls-private-key 和 tls-public-key,可让 MinIO 使用部署默认 TLS 密钥。 更多信息请参阅 网络加密(TLS)。 仅当你要使用与 MinIO 默认值不同的一组 TLS 证书和密钥时,才需要指定证书与私钥(例如使用不同域名)。
例如:
--sftp
mc-cmd
Optional
启用并配置 SSH File Transfer Protocol(SFTP)服务器。 可多次使用以指定所需的每个键值对。
下表列出有效键。
键 |
说明 |
有效值 |
|---|---|---|
|
用于连接到 SFTP 的端口。 |
任意有效端口号,通常为 |
|
用户私钥文件路径。 |
用于密钥文件的绝对路径,或相对于当前位置的相对路径。 |
|
指定一个文件,其中包含受信任证书颁发机构的公钥,该机构可对用于身份验证的用户证书签名。 文件必须包含 user principals list,且列表必须包含可使用该密钥进行身份验证的用户。 |
用户受信任证书颁发机构公钥文件的绝对路径,或相对于当前位置的相对路径。 |
|
以逗号分隔的公钥算法列表。 |
|
|
按优先级顺序排列的、以逗号分隔的密钥交换算法列表。 |
|
|
以逗号分隔的支持的加密算法列表 |
|
|
按优先级顺序排列的、以逗号分隔的 MAC 算法列表。
基于 RFC 4253 section 6.4,但 |
|
|
禁用密码认证。 |
|
例如:
--certs-dir, -S
mc-cmd
Optional
指定包含证书的文件夹路径,minio 进程使用该路径中的证书配置 TLS/SSL 连接。
指定文件夹的内容必须符合 default path structure。 例如,--certs-dir /etc/minio 的路径内容应类似如下:
省略时使用默认目录路径:
- Linux/macOS:
${HOME}/.minio/certs - Windows:
%%USERPROFILE%%\.minio\certs.
有关 TLS/SSL 连接的更多信息,请参阅 网络加密(TLS)。
重要
MinIO Server RELEASE.2023-12-09T18-17-51Z 移除了已弃用参数 --config-dir | -C。 使用该 flag 的部署可能会在未启用 TLS 的情况下启动。 请将这些参数替换为 --certs-dir | -S 并重启,以重新启用 TLS。
--quiet
mc-cmd
Optional
禁用启动信息输出。
--anonymous
mc-cmd
Optional
在日志中隐藏敏感信息。
--json
mc-cmd
Optional
以 JSON 格式输出 server 日志和启动信息。
说明
你可以通过在 MINIO_OPTS 环境变量中设置上述任意 minio 参数来定义它们。 该变量的值是一个字符串,包含你希望在启动 MinIO Server 时设置的上述参数及其对应取值。
设置
你可以通过定义额外的 Configuration Values 或 Environment Variables,对 MinIO 服务端进程执行其他自定义配置。
许多配置值和环境变量定义的是同一个值。 如果同时设置配置值及其对应环境变量,MinIO 使用环境变量中的值。