Docker Swarm CA
描述 | 显示和旋转根 CA |
---|---|
用法 | docker swarm ca [OPTIONS] |
群此命令适用于 Swarm 编排器。
描述
查看或轮换当前群 CA 证书。
注意
这是一个集群管理命令,必须在 swarm 上执行 Manager 节点。要了解 Manager 和 worker,请参阅 文档。
选项
选择 | 违约 | 描述 |
---|---|---|
--ca-cert | 用于新集群的 PEM 格式根 CA 证书的路径 | |
--ca-key | 用于新集群的 PEM 格式根 CA 密钥的路径 | |
--cert-expiry | 2160h0m0s | 节点证书的有效期 (ns|us|ms|s|m|h) |
-d, --detach | 立即退出,而不是等待根旋转收敛 | |
--external-ca | 一个或多个证书签名终端节点的规范 | |
-q, --quiet | Suppress progress 输出 | |
--rotate | 轮换群 CA - 如果未提供证书或密钥,将生成新的证书或密钥 |
例子
运行不带任何选项的命令以查看当前根 CA 证书
以 PEM 格式。docker swarm ca
$ docker swarm ca
-----BEGIN CERTIFICATE-----
MIIBazCCARCgAwIBAgIUJPzo67QC7g8Ebg2ansjkZ8CbmaswCgYIKoZIzj0EAwIw
EzERMA8GA1UEAxMIc3dhcm0tY2EwHhcNMTcwNTAzMTcxMDAwWhcNMzcwNDI4MTcx
MDAwWjATMREwDwYDVQQDEwhzd2FybS1jYTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABKL6/C0sihYEb935wVPRA8MqzPLn3jzou0OJRXHsCLcVExigrMdgmLCC+Va4
+sJ+SLVO1eQbvLHH8uuDdF/QOU6jQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMB
Af8EBTADAQH/MB0GA1UdDgQWBBSfUy5bjUnBAx/B0GkOBKp91XvxzjAKBggqhkjO
PQQDAgNJADBGAiEAnbvh0puOS5R/qvy1PMHY1iksYKh2acsGLtL/jAIvO4ACIQCi
lIwQqLkJ48SQqCjG1DBTSBsHmMSRT+6mE2My+Z3GKA==
-----END CERTIFICATE-----
传递标志(以及可选的 a 和 or 参数标志),以便轮换当前的 swarm 根 CA。--rotate
--ca-cert
--ca-key
--external-ca
$ docker swarm ca --rotate
desired root digest: sha256:05da740cf2577a25224c53019e2cce99bcc5ba09664ad6bb2a9425d9ebd1b53e
rotated TLS certificates: [=========================> ] 1/2 nodes
rotated CA certificates: [> ] 0/2 nodes
一旦旋转 os 完成(所有进度条都已完成),现在的当前 将打印 CA 证书:
$ docker swarm ca --rotate
desired root digest: sha256:05da740cf2577a25224c53019e2cce99bcc5ba09664ad6bb2a9425d9ebd1b53e
rotated TLS certificates: [==================================================>] 2/2 nodes
rotated CA certificates: [==================================================>] 2/2 nodes
-----BEGIN CERTIFICATE-----
MIIBazCCARCgAwIBAgIUFynG04h5Rrl4lKyA4/E65tYKg8IwCgYIKoZIzj0EAwIw
EzERMA8GA1UEAxMIc3dhcm0tY2EwHhcNMTcwNTE2MDAxMDAwWhcNMzcwNTExMDAx
MDAwWjATMREwDwYDVQQDEwhzd2FybS1jYTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABC2DuNrIETP7C7lfiEPk39tWaaU0I2RumUP4fX4+3m+87j0DU0CsemUaaOG6
+PxHhGu2VXQ4c9pctPHgf7vWeVajQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMB
Af8EBTADAQH/MB0GA1UdDgQWBBSEL02z6mCI3SmMDmITMr12qCRY2jAKBggqhkjO
PQQDAgNJADBGAiEA263Eb52+825EeNQZM0AME+aoH1319Zp9/J5ijILW+6ACIQCg
gyg5u9Iliel99l7SuMhNeLkrU7fXs+Of1nTyyM73ig==
-----END CERTIFICATE-----
根 CA 轮换 (--rotate)
注意
Mirantis Kubernetes Engine (MKE),以前称为 Docker UCP,提供了一个外部 Swarm 的 Certificate Manager 服务。如果您在 MKE 上运行 swarm,则不应 手动轮换 CA 证书。相反,如果您需要,请联系 Mirantis 支持 以轮换证书。
如果一个或多个群管理器已被 遭到入侵,因此这些经理无法再联系或被信任 群集中的任何其他节点。
或者,根 CA 轮换可用于提供对群 CA 的控制 到外部 CA,或从外部 CA 收回控制权。
该标志不需要任何参数来执行旋转,但你可以
(可选)指定证书和密钥,或指定证书和外部 CA URL,
,这些将代替自动生成的证书/密钥对。--rotate
由于根 CA 密钥应保密,因此如果提供,它将不可见 通过 CLI 或 API 查看 swarm 时,任何信息。
在所有已注册的节点都完成之前,根 CA 轮换不会完成
轮换他们的 TLS 证书。如果旋转未在
合理的时间,尝试运行
查看是否有任何节点已关闭或无法轮换 TLS 证书。docker node ls --format '{{.ID}} {{.Hostname}} {{.Status}} {{.TLSStatus}}'
在分离模式下运行根 CA 轮换 (--detach)
启动根 CA 轮换,但不要等待 完成或显示 旋转的进度。