kubeadm certs

kubeadm certs 提供管理证书的工具。关于如何使用这些命令的细节,可参见 使用 kubeadm 管理证书

kubeadm certs

用来操作 Kubernetes 证书的一组命令。

处理 Kubernetes 证书的相关命令

概要

处理 Kubernetes 证书相关的命令

选项

-h, —help

certs 命令的帮助

继承于父命令的选项

—rootfs string

[实验] 到’真实’主机根文件系统的路径。

kubeadm certs renew

你可以使用 all 子命令来续订所有 Kubernetes 证书,也可以选择性地续订部分证书。 更多的相关细节,可参见 手动续订证书

为 Kubernetes 集群更新证书

概要

此命令并非设计用来单独运行。请参阅可用子命令列表。

  1. kubeadm certs renew [flags]

选项

-h, —help

renew 操作的帮助命令

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订所有可用证书

概要

续订运行控制平面所需的所有已知证书。续订是无条件进行的,与到期日期无关。续订也可以单独运行以进行更多控制。

  1. kubeadm certs renew all [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

存储证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

all 操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

—use-api
使用 Kubernetes 证书 API 续订证书

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订 kubeconfig 文件中嵌入的证书,供管理员 和 kubeadm 自身使用。

概要

续订 kubeconfig 文件中嵌入的证书,供管理员 和 kubeadm 自身使用。

无论证书的到期日期如何,续订都是无条件进行的;SAN 等额外属性将基于现有文件/证书,因此无需重新提供它们。

默认情况下,续订会尝试使用由 kubeadm 管理的本地 PKI 中的证书机构;作为替代方案, 也可以使用 K8s 证书 API 进行证书续订,或者(作为最后一种选择)生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防证书文件在其他地方使用。

  1. kubeadm certs renew admin.conf [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

保存证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

admin.conf 子操作的帮助命令

—kubeconfig string     Default: “/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

—use-api
使用 Kubernetes 证书 API 续订证书

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订 apiserver 用于访问 etcd 的证书

概要

续订 apiserver 用于访问 etcd 的证书。

无论证书的到期日期如何,续订都会无条件地进行;SAN 等额外属性将基于现有文件/证书,因此无需重新提供它们。

默认情况下,续订尝试使用在 kubeadm 所管理的本地 PKI 中的证书颁发机构;作为替代方案, 可以使用 K8s 证书 API 进行证书更新,或者作为最后一个选择来生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防文件在其他地方使用。

  1. kubeadm certs renew apiserver-etcd-client [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

存储证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

apiserver-etcd-client 操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订 apiserver 用于连接 kubelet 的证书。

概要

续订 apiserver 用于连接 kubelet 的证书。

无论证书的到期日期如何,续订都会无条件地进行;SAN 等额外属性将基于现有文件/证书,因此无需重新提供它们。

默认情况下,续订尝试使用位于 kubeadm 所管理的本地 PKI 中的证书颁发机构;作为替代方案, 也可能调用 K8s 证书 API 进行证书更新;亦或者,作为最后一个选择,生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防文件在其他地方使用。

  1. kubeadm certs renew apiserver-kubelet-client [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

存储证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

apiserver-kubelet-client 操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

—use-api
使用 Kubernetes 证书 API 续订证书

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订用于提供 Kubernetes API 的证书

概要

续订用于提供 Kubernetes API 的证书。

无论证书的到期日期如何,续订都会无条件地进行;SAN 等额外属性将基于现有文件/证书,因此无需重新提供它们。

默认情况下,续订尝试在 kubeadm 管理的本地 PKI 中使用证书颁发机构;作为替代方案, 可以使用 K8s 证书 API 进行证书更新,或者作为最后一个选择来生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防文件在其他地方使用。

  1. kubeadm certs renew apiserver [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

保存证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

apiserver 子操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订 kubeconfig 文件中嵌入的证书,以供控制器管理器(Controller Manager)使用。

概要

续订 kubeconfig 文件中嵌入的证书,以供控制器管理器(Controller Manager)使用。

续订无条件地进行,与证书的到期日期无关;SAN 等额外属性将基于现有的文件/证书,因此无需重新提供它们。

默认情况下,续订会尝试使用 kubeadm 管理的本地 PKI 中的证书颁发机构;作为替代方案, 可以使用 K8s 证书 API 进行证书续订;亦或者,作为最后一种选择,生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防文件在其他地方使用。

  1. kubeadm alpha renew controller-manager.conf [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

保存证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

controller-manager.conf 操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

—use-api
使用 Kubernetes 证书 API 续订证书

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订存活态探针的证书,用于对 etcd 执行健康检查

概要

续订存活态探针的证书,用于对 etcd 执行健康检查。

无论证书的到期日期如何,续订都是无条件进行的;SAN 等额外属性将基于现有文件/证书,因此无需重新提供它们。

默认情况下,续订会尝试使用由 kubeadm 管理的本地 PKI 中的证书机构;作为替代方案, 也可以使用 K8s certificate API 进行证书续订,或者(作为最后一种选择)生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防证书文件在其他地方使用。

  1. kubeadm certs renew etcd-healthcheck-client [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

保存证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

etcd-healthcheck-client 操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订 etcd 节点间用来相互通信的证书

概要

续订 etcd 节点间用来相互通信的证书。

无论证书的到期日期如何,续订都是无条件进行的;SAN 等额外属性将基于现有文件/证书,因此无需重新提供它们。

默认情况下,续订会尝试使用由 kubeadm 管理的本地 PKI 中的证书机构; 作为替代方案,也可以使用 K8s certificate API 进行证书续订,或者(作为最后一种选择)生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防证书文件在其他地方使用。

  1. kubeadm certs renew etcd-peer [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

保存证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help
etcd-peer 操作的帮助命令
—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

—use-api

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订用于提供 etcd 服务的证书

概要

续订用于提供 etcd 服务的证书。

续订无条件地进行,与证书的到期日期无关;SAN 等额外属性将基于现有的文件/证书,因此无需重新提供它们。

默认情况下,续订会尝试在 kubeadm 管理的本地 PKI 中使用证书颁发机构;作为替代方案, 可以使用 K8s 证书 API 进行证书续订,或者作为最后一种选择来生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防文件在其他地方使用。

  1. kubeadm certs renew etcd-server [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

保存证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

etcd-server 操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

—use-api

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

为前端代理客户端续订证书。

概要

为前端代理客户端续订证书。

无论证书的到期日期如何,续订都会无条件地进行;SAN 等额外属性将基于现有文件/证书,因此无需重新提供它们。

默认情况下,续订尝试使用位于 kubeadm 所管理的本地 PKI 中的证书颁发机构;作为替代方案, 也可以使用 K8s 证书 API 进行证书续订;亦或者,作为最后一种方案,生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防文件在其他地方使用。

  1. kubeadm certs renew front-proxy-client [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

存储证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

front-proxy-client 操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

—use-api
使用 Kubernetes 证书 API 续订证书

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

续订 kubeconfig 文件中嵌入的证书,以供调度管理器使用

概要

续订 kubeconfig 文件中嵌入的证书,以供调度管理器使用。

续订无条件地进行,与证书的到期日期无关;SAN 等额外属性将基于现有的文件/证书,因此无需重新提供它们。

默认情况下,续订会尝试使用在 kubeadm 所管理的本地 PKI 中的证书颁发机构;作为替代方案, 也可以使用 K8s 证书 API 进行证书续订;亦或者,作为最后一种选择,生成 CSR 请求。

续订后,为了使更改生效,需要重新启动控制平面组件,并最终重新分发更新的证书,以防文件在其他地方使用。

  1. kubeadm certs renew scheduler.conf [flags]

选项

—cert-dir string     默认值:”/etc/kubernetes/pki”

保存证书的路径。

—config string

kubeadm 配置文件的路径。

-h, —help

scheduler.conf 操作的帮助命令

—kubeconfig string     默认值:”/etc/kubernetes/admin.conf”

与集群通信时使用的 kubeconfig 文件。 如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

kubeadm certs certificate-key

此命令可用来生成一个新的控制面证书密钥。密钥可以作为 --certificate-key 标志的取值传递给 kubeadm initkubeadm join 命令,从而在添加新的控制面节点时能够自动完成证书复制。

生成证书密钥

概要

该命令将打印出可以与 “init” 命令一起使用的安全的随机生成的证书密钥。

你也可以使用 kubeadm init --upload-certs 而无需指定证书密钥; 命令将为你生成并打印一个证书密钥。

  1. kubeadm certs certificate-key [flags]

选项

-h, —help

certificate-key 操作的帮助命令

从父命令继承的选项

—rootfs string

[实验] 到 ‘真实’ 主机根文件系统的路径。

kubeadm certs check-expiration

此命令检查 kubeadm 所管理的本地 PKI 中的证书是否以及何时过期。 更多的相关细节,可参见 检查证书过期

为一个 Kubernetes 集群检查证书的到期时间

概要

检查 kubeadm 管理的本地 PKI 中证书的到期时间。

  1. kubeadm certs check-expiration [flags]

选项

—cert-dir string     默认值: “/etc/kubernetes/pki”

保存证书的路径

—config string

kubeadm 配置文件的路径

-h, —help

check-expiration 的帮助命令

—kubeconfig string     默认为: “/etc/kubernetes/admin.conf”

在和集群连接时使用该 kubeconfig 文件。 如果该标志没有设置,那么将会在一些标准的位置去搜索存在的 kubeconfig 文件。

继承于父命令的选项

—rootfs string

[实验] 到’真实’主机根文件系统的路径。

kubeadm certs generate-csr

此命令可用来为所有控制面证书和 kubeconfig 文件生成密钥和 CSR(签名请求)。 用户可以根据自身需要选择 CA 为 CSR 签名。

生成密钥和证书签名请求

概要

为运行控制平面所需的所有证书生成密钥和证书签名请求(CSR)。该命令会生成部分 kubeconfig 文件, 其中 “users > user > client-key-data” 字段包含私钥数据,并为每个 kubeconfig 文件创建一个随附的 “.csr” 文件。

此命令设计用于 Kubeadm 外部 CA 模式。 它生成你可以提交给外部证书颁发机构进行签名的 CSR。

你需要使用 “.crt” 作为文件扩展名将 PEM 编码的签名证书与密钥文件一起保存。 或者,对于 kubeconfig 文件,PEM 编码的签名证书应使用 base64 编码, 并添加到 “users > user > client-certificate-data” 字段。

  1. kubeadm certs generate-csr [flags]

示例

  1. # 以下命令将为所有控制平面证书和 kubeconfig 文件生成密钥和 CSR :
  2. kubeadm certs generate-csr --kubeconfig-dir /tmp/etc-k8s --cert-dir /tmp/etc-k8s/pki

选项

—cert-dir string

保存证书的路径

—config string

kubeadm 配置文件的路径。

-h, —help

generate-csr 命令的帮助

—kubeconfig-dir string     默认值:”/etc/kubernetes”

保存 kubeconfig 文件的路径。

继承于父命令的选项

—rootfs string

[实验] 到’真实’主机根文件系统的路径。

接下来

  • 用来启动引导 Kubernetes 控制面节点的 kubeadm init 命令
  • 用来将节点连接到集群的 kubeadm join 命令
  • 用来回滚 kubeadm initkubeadm join 对当前主机所做修改的 kubeadm reset 命令