MinIO服务器命令介绍
MinIO服务器命令介绍
minio server
命令用于启动 MinIO 服务器进程:
minio server /mnt/disk{1...4}
有关在裸机环境中部署 minio server
的示例,请参见 安装和部署MinIO。
有关在 Kubernetes 环境中部署 minio server
的示例,请参见 Deploying a MinIO Tenant。
语法
启动 minio
服务器进程。
该命令具有以下语法:
minio server [FLAGS] HOSTNAME/DIRECTORIES [HOSTNAME/DIRECTORIES..]
该命令接受以下参数:
- HOSTNAME
minio server
进程的主机名。对于独立部署,此字段是 可选的。 您可以仅使用
DIRECTORIES
参数启动一个独立的server
进程。对于分布式部署,请指定部署中每个
minio server
的主机名。 一组minio server
进程代表一个单一的 :ref:`Server Pool <minio-intro-server-pool>`(服务器池)。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
您必须在服务器池中的每个主机上使用 相同 的
minio server
命令组合,包括HOSTNAME
和DIRECTORIES
参数。每个额外的
HOSTNAME/DIRECTORIES
对表示为了MinIO部署的水平扩展目的而添加的一个额外的服务器集。 有关服务器池的更多信息,请参见 服务器池。
- DIRECTORIES
- Required
minio server
进程用作存储后端使用的目录或驱动器。DIRECTORIES
支持 MinIO 扩展表示法{x...y}
,用来表示一系列连续的文件夹或驱动器。 例如,/mnt/disk{1...4}
扩展为:/mnt/disk1
/mnt/disk2
/mnt/disk3
/mnt/disk4
当第一次启动
minio
进程时,DIRECTORIES
路径 必须 是空的。minio server
进程需要 至少 4 个驱动器或目录来实现 纠删码(Erasure Coding)。重要
MinIO建议使用本地连接的驱动器,其中:mc-cmd:`~minio server DIRECTORIES`路径指向主机上的每个驱动器。 MinIO 不建议 使用网络附加存储,因为网络延迟会降低这些驱动器与本地附加存储相比的性能。
在开发或评估过程中,您可以在单个物理卷上指定多个逻辑目录或分区,以在部署中启用纠删码。
对于生产环境,MinIO 不建议 在单个物理磁盘上使用多个逻辑目录或分区。 尽管MinIO支持这些配置,但潜在的节省成本是以降低可靠性为代价的。
- --address
- Optional
将
minio <minio server>`服务器进程绑定到特定的网络地址和端口号。 指定地址和端口号为 ``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 <minio 服务器>`会绑定到主机上所有已配置的 IPv4 地址、IPv6 地址和主机名上的端口 ``9000`
。
- --ftp
- Optional
启用并配置一个文件传输协议(
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-key
和tls-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
- Optional
启用并配置一个SSH文件传输协议(
SFTP
)服务器。 使用多次来指定每个所需的键值对。下表列出了有效的密钥。
Key
Description
Valid values
address
用于连接 SFTP 的端口。
任何有效的端口号,通常为
8022
。ssh-private-key
用户私钥文件的路径。
从当前位置到要使用的密钥文件的绝对路径或相对路径。
trusted-user-ca-key
指定一个文件,其中包含受信任的证书颁发机构的公钥,该证书颁发机构可签署用户证书进行身份验证。 文件必须包含一个 user principals list ,列表中必须包括可以使用密钥进行身份验证的用户。
从当前位置到用户信任的证书颁发机构公钥文件的绝对路径或相对路径。
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
- Optional
指定包含
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。
备注
您可以通过在 MINIO_OPTS
环境变量中设置上述 minio
参数来定义它们。
这个变量取一个字符串值,其中包含上述参数及其值,当你启动MinIO服务器时,你想要设置这些参数。
Settings
您可以通过定义额外的 配置值 或 环境变量 来自定义MinIO服务器进程。
许多配置值和环境变量定义了相同的值。 如果您设置了配置值和对应的环境变量,MinIO 将使用环境变量的值。