kubeadm init phase

    kubeadm init phase 与 一致,后台都使用相同的代码。

    使用此命令可以在控制平面节点上执行启动前检查。

    运行 kubeadm init 前的启动检查。

    案例

    1. # 使用配置文件对 kubeadm init 进行启动检查。
    2. kubeadm init phase preflight --config kubeadm-config.yml

    选项

    继承于父命令的选项

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

    kubeadm init phase kubelet-start

    此阶段将检查 kubelet 配置文件和环境文件,然后启动 kubelet。

    概要

    使用 kubelet 配置文件编写一个文件,并使用特定节点的 kubelet 设置编写一个环境文件,然后(重新)启动 kubelet。

    1. kubeadm init phase kubelet-start [flags]

    示例

    1. # 从 InitConfiguration 文件中写入带有 kubelet 参数的动态环境文件。
    2. kubeadm init phase kubelet-start --config config.yaml

    选项

    —config string
    kubeadm 配置文件的路径。
    —cri-socket string
    连接到 CRI 套接字的路径。如果为空,则 kubeadm 将尝试自动检测该值;仅当安装了多个 CRI 或具有非标准 CRI 套接字时,才使用此选项。
    -h, —help
    kubelet-start 操作的帮助命令
    —node-name string
    指定节点名称。

    从父命令继承的选项

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

    kubeadm init phase certs

    该阶段可用于创建 kubeadm 所需的所有证书。

    概要

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

    1. kubeadm init phase certs [flags]

    选项

    -h, —help
    certs 操作的帮助命令

    从父指令中继承的选项

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

    概要

    生成所有证书

    1. kubeadm init phase certs all [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,将使用默认网络接口。
    —apiserver-cert-extra-sans stringSlice
    用于 API 服务器服务证书的可选额外替代名称(SAN)。可以同时使用 IP 地址和 DNS 名称。
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    证书的存储路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    -h, —help
    all 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。
    —service-cidr string     默认值:”10.96.0.0/12”
    VIP 服务使用其它的 IP 地址范围。
    —service-dns-domain string     默认值:”cluster.local”
    服务使用其它的域名,例如:”myorg.internal”。

    继承于父命令的选项

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

    概要

    生成自签名的 Kubernetes CA 以提供其他 Kubernetes 组件的身份,并将其保存到 ca.cert 和 ca.key 文件中。

    如果两个文件都已存在,则 kubeadm 将跳过生成步骤,使用现有文件。

    Alpha 免责声明:此命令当前为 Alpha 功能。

    1. kubeadm init phase certs ca [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    证书的存储路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    ca 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。

    继承于父命令的选项

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

    概要

    生成用于服务 Kubernetes API 的证书,并将其保存到 apiserver.cert 和 apiserver.key 文件中。

    默认 SAN 是 kubernetes、kubernetes.default、kubernetes.default.svc、kubernetes.default.svc.cluster.local、10.96.0.1、127.0.0.1。

    如果两个文件都已存在,则 kubeadm 将跳过生成步骤,使用现有文件。

    Alpha 免责声明:此命令当前为 Alpha 功能。

    1. kubeadm init phase certs apiserver [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,则使用默认的网络接口。
    —apiserver-cert-extra-sans stringSlice
    用于 API Server 服务证书的可选附加主体备用名称(SAN)。可以是 IP 地址和 DNS 名称。
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    证书的存储路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    -h, —help
    apiserver 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。
    —service-cidr string     默认值:”10.96.0.0/12”
    指定服务 VIP 可使用的其他 IP 地址段。
    —service-dns-domain string     默认值:”cluster.local”
    为服务使用其他域名,例如 “myorg.internal”。

    继承于父命令的选项

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

    概要

    生成供 API 服务器连接 kubelet 的证书,并将其保存到 apiserver-kubelet-client.cert 和 apiserver-kubelet-client.key 文件中。

    如果两个文件都已存在,则 kubeadm 将跳过生成步骤,使用现有文件。

    Alpha 免责声明:此命令当前为 Alpha 功能。

    1. kubeadm init phase certs apiserver-kubelet-client [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    存储证书的路径。
    —config string
    kubeadm 配置文件路径。
    -h, —help
    apiserver-kubelet-client 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。

    继承于父命令的选项

    —rootfs string
    [实验] 指向宿主机上的 ‘实际’ 根文件系统的路径。

    概要

    生成自签名 CA 来提供前端代理的身份,并将其保存到 front-proxy-ca.cert 和 front-proxy-ca.key 文件中。

    如果两个文件都已存在,kubeadm 将跳过生成步骤并将使用现有文件。

    Alpha 免责声明:此命令目前是 alpha 阶段。

    1. kubeadm init phase certs front-proxy-ca [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    front-proxy-ca 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。

    从父命令继承的选项

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

    概要

    为前端代理客户端生成证书,并将其保存到 front-proxy-client.cert 和 front-proxy-client.key 文件中。 如果两个文件都已存在,kubeadm 将跳过生成步骤并将使用现有文件。 Alpha 免责声明:此命令目前是 alpha 阶段。

    1. kubeadm init phase certs front-proxy-client [flags]

    选项

    —cert-dir string     默认:”/etc/kubernetes/pki”
    存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    front-proxy-client 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。

    从父命令继承的选项

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

    概要

    生成用于为 etcd 设置身份的自签名 CA,并将其保存到 etcd/ca.cert 和 etcd/ca.key 文件中。

    如果两个文件都已存在,则 kubeadm 将跳过生成步骤,使用现有文件。

    Alpha 免责声明:此命令当前为 Alpha 功能。

    1. kubeadm init phase certs etcd-ca [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    证书的存储路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    etcd-ca 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。

    继承于父命令的选项

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

    概要

    生成用于提供 etcd 服务的证书,并将其保存到 etcd/server.cert 和 etcd/server.key 文件中。

    默认 SAN 为 localhost、127.0.0.1、127.0.0.1、:: 1

    Alpha 免责声明:此命令当前为 alpha 功能。

    1. kubeadm init phase certs etcd-server [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    etcd-server 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。

    继承于父命令的选项

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

    概要

    生成 etcd 节点相互通信的证书,并将其保存到 etcd/peer.cert 和 etcd/peer.key 文件中。

    默认 SAN 为 localhost、127.0.0.1、127.0.0.1、:: 1

    如果两个文件都已存在,则 kubeadm 将跳过生成步骤,使用现有文件。

    Alpha 免责声明:此命令当前为 alpha 功能。

    1. kubeadm init phase certs etcd-peer [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    etcd-peer 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。

    继承于父命令的选项

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

    概要

    生成用于 etcd 健康检查的活跃性探针的证书,并将其保存到 healthcheck-client.cert 和 etcd/healthcheck-client.key 文件中。

    如果两个文件都已存在,则 kubeadm 将跳过生成步骤,使用现有文件。

    Alpha 免责声明:此命令当前为 alpha 功能。

    1. kubeadm init phase certs etcd-healthcheck-client [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    证书存储的路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    etcd-healthcheck-client 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。

    继承于父命令的选项

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

    概要

    生成 apiserver 用于访问 etcd 的证书,并将其保存到 apiserver-etcd-client.cert 和 apiserver-etcd-client.key 文件中。

    如果两个文件都已存在,则 kubeadm 将跳过生成步骤,使用现有文件。

    Alpha 免责声明:此命令当前为 Alpha 功能。

    1. kubeadm init phase certs apiserver-etcd-client [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    证书的存储路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    apiserver-etcd-client 操作的帮助命令
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。

    继承于父命令的选项

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

    生成用于签名 service account 令牌的私钥及其公钥,并将其保存到 sa.key 和 sa.pub 文件中。如果两个文件都已存在,则 kubeadm 会跳过生成步骤,而将使用现有文件。

    Alpha 免责声明:此命令当前为 alpha 阶段。

    1. kubeadm init phase certs sa [flags]

    选项

    继承于父命令的选项

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

    kubeadm init phase kubeconfig

    可以通过调用 all 子命令来创建所有必需的 kubeconfig 文件,或者分别调用它们。

    概要

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

    1. kubeadm init phase kubeconfig [flags]

    选项

    -h, —help
    kubeconfig 操作的帮助命令

    从父命令继承的选项

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

    概要

    生成所有 kubeconfig 文件

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果没有设置,将使用默认的网络接口。
    —apiserver-bind-port int32     默认值:6443
    要绑定到 API 服务器的端口。
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    -h, —help
    all 操作的帮助命令
    —kubeconfig-dir string     默认值:”/etc/kubernetes”
    kubeconfig 文件的保存路径。
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。
    —node-name string
    指定节点名称。

    继承于父命令的选项

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

    概要

    为管理员和 kubeadm 本身生成 kubeconfig 文件,并将其保存到 admin.conf 文件中。

    1. kubeadm init phase kubeconfig admin [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,则使用默认的网络接口。
    —apiserver-bind-port int32     默认值:6443
    要绑定到 API 服务器的端口。
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    -h, —help
    admin 操作的帮助命令
    —kubeconfig-dir string     默认值:”/etc/kubernetes”
    kubeconfig 文件的保存路径。
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。

    继承于父命令的选项

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

    概要

    生成 kubelet 要使用的 kubeconfig 文件,并将其保存到 kubelet.conf 文件。

    请注意,该操作目的是应用于引导集群。在控制平面启动之后,应该从 CSR API 请求所有 kubelet 凭据。

    1. kubeadm init phase kubeconfig kubelet [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,则使用默认的网络接口。
    —apiserver-bind-port int32     默认值:6443
    要绑定到 API 服务器的端口。
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    -h, —help
    kubelet 操作的帮助命令
    —kubeconfig-dir string     默认值:”/etc/kubernetes”
    kubeconfig 文件的保存路径。
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。
    —node-name string
    指定节点的名称。

    继承于父命令的选项

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

    概要

    生成控制器管理器要使用的 kubeconfig 文件,并保存到 controller-manager.conf 文件中。

    1. kubeadm init phase kubeconfig controller-manager [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,则使用默认的网络接口。
    —apiserver-bind-port int32     默认值:6443
    要绑定到 API 服务器的端口。
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    -h, —help
    controller-manager 操作的帮助命令
    —kubeconfig-dir string     默认值:”/etc/kubernetes”
    kubeconfig 文件的保存路径。
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。

    继承于父命令的选项

    —rootfs 字符串
    [实验] 到 ‘真实’ 主机根文件系统的路径。

    概要

    生成调度器(scheduler)要使用的 kubeconfig 文件,并保存到 scheduler.conf 文件中。

    1. kubeadm init phase kubeconfig scheduler [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,则使用默认的网络接口。
    —apiserver-bind-port int32     默认值:6443
    要绑定到 API 服务器的端口。
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    -h, —help
    scheduler 操作的帮助命令
    —kubeconfig-dir string     默认值:”/etc/kubernetes”
    kubeconfig 文件的保存路径。
    —kubernetes-version string     默认值:”stable-1”
    为控制平面指定特定的 Kubernetes 版本。

    继承于父命令的选项

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

    使用此阶段,可以为控制平面组件创建所有必需的静态 Pod 文件。

    概要

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

    1. kubeadm init phase control-plane [flags]

    选项

    -h, —help
    control-plane 操作的帮助命令

    继承于父命令的选项

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

    概要

    生成所有的静态 Pod 清单文件

    1. kubeadm init phase control-plane all [flags]

    示例

    1. # 为控制平面组件生成静态 Pod 清单文件,其功能等效于 kubeadm init 生成的文件。
    2. kubeadm init phase control-plane all
    3. kubeadm init phase control-plane all --config config.yaml

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,将使用默认的网络接口。
    —apiserver-bind-port int32     默认值:6443
    API 服务器要绑定的端口。
    —apiserver-extra-args mapStringString
    形式为 <flagname>=<value> 的一组额外参数,用来传递给 API 服务器, 或者覆盖其默认配置值
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面选择一个稳定的 IP 地址或者 DNS 名称。
    —controller-manager-extra-args mapStringString
    一组形式为 <flagname>=<value> 的额外参数,用来传递给控制管理器(Controller Manager) 或覆盖其默认设置值
    —experimental-patches string
    包含名为 “target[suffix][+patchtype].extension” 的文件的目录。 例如,”kube-apiserver0+merge.yaml” 或者 “etcd.json”。 “patchtype” 可以是 “strategic”、”merge” 或 “json” 之一,分别与 kubectl 所支持的 patch 格式相匹配。默认的 “patchtype” 是 “strategic”。 “extension” 必须是 “json” 或 “yaml”。 “suffix” 是一个可选的字符串,用来确定按字母顺序排序时首先应用哪些 patch。
    —feature-gates string
    一组用来描述各种特性门控的键值(key=value)对。选项是:
    IPv6DualStack=true|false (ALPHA - 默认=false)
    PublicKeysECDSA=true|false (ALPHA - 默认=false)
    -h, —help
    all 操作的帮助命令
    —image-repository string     默认值:”k8s.gcr.io”
    选择用于拉取控制平面镜像的容器仓库
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择指定的 Kubernetes 版本。
    —pod-network-cidr string
    指定 Pod 网络的 IP 地址范围。如果设置了此标志,控制平面将自动地为每个节点分配 CIDR。
    —scheduler-extra-args mapStringString
    一组形式为 <flagname>=<value> 的额外参数,用来传递给调度器(Scheduler) 或覆盖其默认设置值

    传递给调度器(scheduler)一组额外的参数或者以 <flagname>=<value> 形式覆盖其默认值。

    —service-cidr string     默认值:”10.96.0.0/12”
    为服务 VIP 选择 IP 地址范围。

    从父指令继承的选项

    —rootfs string
    [实验] 指向 ‘真实’ 宿主机的根文件系统的路径。

    概要

    生成 kube-apiserver 静态 Pod 清单

    1. kubeadm init phase control-plane apiserver [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,将使用默认网络接口。
    —apiserver-bind-port int32     默认值: 6443
    要绑定到 API 服务器的端口。
    —apiserver-extra-args mapStringString
    一组 <flagname>=<value> 形式的额外参数,用来传递给 API 服务器 或者覆盖其默认参数配置
    —cert-dir string     默认值:”/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    包含名为 “target[suffix][+patchtype].extension” 的文件的目录。 例如,”kube-apiserver0+merge.yaml” 或者 “etcd.json”。 “patchtype” 可以是 “strategic”、”merge” 或 “json” 之一,分别与 kubectl 所支持的 patch 格式相匹配。默认的 “patchtype” 是 “strategic”。 “extension” 必须是 “json” 或 “yaml”。 “suffix” 是一个可选的字符串,用来确定按字母顺序排序时首先应用哪些 patch。
    —feature-gates string
    一组键值对,用于描述各种功能特性的特性门控。选项是:
    IPv6DualStack=true|false (ALPHA - 默认=false)
    PublicKeysECDSA=true|false (ALPHA - 默认=false)
    -h, —help
    apiserver 操作的帮助命令
    —image-repository string     默认值:”k8s.gcr.io”
    选择要从中拉取控制平面镜像的容器仓库
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本
    —service-cidr string     默认值:”10.96.0.0/12”
    指定服务 VIP 使用 IP 地址的其他范围。

    继承于父命令的选项

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

    概要

    生成 kube-controller-manager 静态 Pod 清单

    1. kubeadm init phase control-plane controller-manager [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —controller-manager-extra-args mapStringString
    一组 <flagname>=< 形式的额外参数,传递给控制器管理器(Controller Manager) 或者覆盖其默认配置值
    包含名为 “target[suffix][+patchtype].extension” 的文件的目录。 例如,”kube-apiserver0+merge.yaml” 或者 “etcd.json”。 “patchtype” 可以是 “strategic”、”merge” 或 “json” 之一,分别与 kubectl 所支持的 patch 格式相匹配。默认的 “patchtype” 是 “strategic”。 “extension” 必须是 “json” 或 “yaml”。 “suffix” 是一个可选的字符串,用来确定按字母顺序排序时首先应用哪些 patch。
    -h, —help
    controller-manager 操作的帮助命令
    —image-repository string     默认值:”k8s.gcr.io”
    选择要从中拉取控制平面镜像的容器仓库
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。
    —pod-network-cidr string
    指定 Pod 网络的 IP 地址范围。如果设置,控制平面将自动为每个节点分配 CIDR。

    从父命令继承的选项

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

    概要

    1. kubeadm init phase control-plane scheduler [flags]

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —experimental-patches string
    包含名为 “target[suffix][+patchtype].extension” 的文件的目录。 例如,”kube-apiserver0+merge.yaml” 或者 “etcd.json”。 “patchtype” 可以是 “strategic”、”merge” 或 “json” 之一,分别与 kubectl 所支持的 patch 格式相匹配。默认的 “patchtype” 是 “strategic”。 “extension” 必须是 “json” 或 “yaml”。 “suffix” 是一个可选的字符串,用来确定按字母顺序排序时首先应用哪些 patch。
    -h, —help
    scheduler 操作的帮助命令
    —image-repository string     默认值:”k8s.gcr.io”
    选择要从中拉取控制平面镜像的容器仓库
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。
    —scheduler-extra-args mapStringString
    一组 <flagname>=<value> 形式的额外参数,用来传递给调度器 或者覆盖其默认参数配置

    继承于父命令的选项

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

    kubeadm init phase etcd

    根据静态 Pod 文件,使用以下阶段创建本地 etcd 实例。

    概要

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

    1. kubeadm init phase etcd [flags]

    选项

    -h, —help
    etcd 操作的帮助命令

    继承于父命令的选项

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

    概要

    为本地单节点 etcd 实例生成静态 Pod 清单文件

    1. kubeadm init phase etcd local [flags]

    示例

    1. # 为 etcd 生成静态 Pod 清单文件,其功能等效于 kubeadm init 生成的文件。
    2. kubeadm init phase etcd local
    3. # 使用从配置文件读取的选项为 etcd 生成静态 Pod 清单文件。
    4. kubeadm init phase etcd local --config config.yaml

    选项

    —cert-dir string     默认值:”/etc/kubernetes/pki”
    存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    —experimental-patches string
    包含名为 “target[suffix][+patchtype].extension” 的文件的目录的路径。 例如,”kube-apiserver0+merge.yaml” 或仅仅是 “etcd.json”。 “patchtype” 可以是 “strategic”、”merge” 或 “json” 之一,并且它们与 kubectl 支持的补丁格式匹配。 默认的 “patchtype” 为 “strategic”。 “extension” 必须为 “json” 或 “yaml”。 “suffix” 是一个可选字符串,可用于确定首先按字母顺序应用哪些补丁。
    -h, —help
    local 操作的帮助命令
    —image-repository string     默认值:”k8s.gcr.io”
    选择要从中拉取控制平面镜像的容器仓库

    继承于父命令的选项

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

    kubeadm init phase upload-config

    可以使用此命令将 kubeadm 配置文件上传到集群。或者使用 。

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

    1. kubeadm init phase upload-config [flags]

    选项

    从父命令中继承的选项

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

    概要

    将所有配置上传到 ConfigMap

    1. kubeadm init phase upload-config all [flags]

    选项

    —config string
    kubeadm 配置文件的路径。
    -h, —help
    all 操作的帮助命令
    —kubeconfig string     默认值:”/etc/kubernetes/admin.conf”
    与集群通信时使用的 kubeconfig 文件。如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

    从父命令继承的选项

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

    概要

    将 kubeadm ClusterConfiguration 上传到 kube-system 命名空间中名为 kubeadm-config 的 ConfigMap 中。 这样就可以正确配置系统组件,并在升级时提供无缝的用户体验。

    另外,可以使用 kubeadm 配置。

    1. kubeadm init phase upload-config kubeadm [flags]

    示例

    1. # 上传集群配置
    2. kubeadm init phase upload-config --config=myConfig.yaml

    选项

    —config string
    kubeadm 配置文件的路径。
    -h, —help
    kubeadm 操作的帮助命令
    —kubeconfig string     默认值:”/etc/kubernetes/admin.conf”
    与集群通信时使用的 kubeconfig 文件。如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。

    从父命令继承的选项

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

    概要

    将从 kubeadm InitConfiguration 对象提取的 kubelet 配置上传到集群中 kubelet-config-1.X 形式的 ConfigMap,其中 X 是当前(API 服务器)Kubernetes 版本的次要版本。

    示例

    1. # 将 kubelet 配置从 kubeadm 配置文件上传到集群中的 ConfigMap。
    2. kubeadm init phase upload-config kubelet --config kubeadm.yaml

    选项

    —config string
    到 kubeadm 配置文件的路径。
    -h, —help
    kubelet 操作的帮助命令
    —kubeconfig string     默认值:”/etc/kubernetes/admin.conf”
    与集群通信时使用的 kubeconfig 文件。如果未设置该标签,则可以通过一组标准路径来寻找已有的 kubeconfig 文件。

    从父命令继承的选项

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

    kubeadm init phase upload-certs

    使用以下阶段将控制平面证书上传到集群。默认情况下,证书和加密密钥会在两个小时后过期。

    概要

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

    1. kubeadm init phase upload-certs [flags]

    选项

    —certificate-key string
    用于加密 kubeadm-certs Secret 中的控制平面证书的密钥。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    upload-certs 操作的帮助命令
    —kubeconfig string     默认值:”/etc/kubernetes/admin.conf”
    用来与集群通信的 kubeconfig 文件。 如果此标志未设置,则可以在一组标准的位置搜索现有的 kubeconfig 文件。
    —skip-certificate-key-print
    不要打印输出用于加密控制平面证书的密钥。
    —upload-certs
    将控制平面证书上传到 kubeadm-certs Secret。

    从父命令继承的选项

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

    使用以下阶段来给具有 node-role.kubernetes.io/master="" 键值对的节点打标签(label)和记录污点(taint)。

    概要

    标记 Node 节点为控制平面节点

    1. kubeadm init phase mark-control-plane [flags]

    示例

    1. # 将控制平面标签和污点应用于当前节点,其功能等效于 kubeadm init执行的操作。
    2. kubeadm init phase mark-control-plane --config config.yml
    3. # 将控制平面标签和污点应用于特定节点
    4. kubeadm init phase mark-control-plane --node-name myNode

    选项

    —config string
    kubeadm 配置文件的路径。
    -h, —help
    mark-control-plane 操作的帮助命令
    —node-name string
    指定节点名称。

    从父命令继承的选项

    —rootfs 字符串
    [实验] 到 ‘真实’ 主机根文件系统的路径。

    kubeadm init phase bootstrap-token

    使用以下阶段来配置引导令牌。

    概要

    启动引导令牌(bootstrap token)用于在即将加入集群的节点和控制平面节点之间建立双向信任。

    该命令使启动引导令牌(bootstrap token)所需的所有配置生效,然后创建初始令牌。

    1. kubeadm init phase bootstrap-token [flags]

    示例

    1. # 进行所有引导令牌配置,并创建一个初始令牌,功能上与 kubeadm init 生成的令牌等效。
    2. kubeadm init phase bootstrap-token

    选项

    —config string
    kubeadm 配置文件的路径。
    -h, —help
    bootstrap-token 操作的帮助命令
    —kubeconfig string     默认值:”/etc/kubernetes/admin.conf”
    用于和集群通信的 kubeconfig 文件。如果它没有被设置,那么 kubeadm 将会搜索一个已经存在于标准路径的 kubeconfig 文件。
    —skip-token-print
    跳过打印 ‘kubeadm init’ 生成的默认引导令牌。

    继承于父命令的选项

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

    kubeadm init phase kubelet-finialize

    使用以下阶段在 TLS 引导后更新与 kubelet 相关的设置。 你可以使用 all 子命令来运行所有 阶段。

    TLS 引导后更新与 kubelet 相关的设置

    1. kubeadm init phase kubelet-finalize [flags]

    示例

    1. # 在 TLS 引导后更新与 kubelet 相关的设置
    2. kubeadm init phase kubelet-finalize all --config

    选项

    -h, —help
    kubelet-finalize 操作的帮助命令

    继承于父命令的选项

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

    运行所有 kubelet-finalize 阶段

    1. kubeadm init phase kubelet-finalize all [flags]

    示例

    1. # 在 TLS 引导后更新与 kubelet 相关的设置
    2. kubeadm init phase kubelet-finalize all --config

    选项

    —cert-dir string     默认值: “/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    all 操作的帮助命令

    继承于父命令的选项

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

    启用 kubelet 客户端证书轮换

    1. kubeadm init phase kubelet-finalize experimental-cert-rotation [flags]

    选项

    —cert-dir string     Default: “/etc/kubernetes/pki”
    保存和存储证书的路径。
    —config string
    kubeadm 配置文件的路径。
    -h, —help
    experimental-cert-rotation 操作的帮助命令

    继承于父命令的选项

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

    kubeadm init phase addon

    可以使用 all 子命令安装所有可用的插件,或者有选择性地安装它们。

    概要

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

    1. kubeadm init phase addon [flags]

    选项

    -h, —help
    addon 操作的帮助命令

    继承于父命令的选项

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

    概要

    安装所有插件(addon)

    1. kubeadm init phase addon all [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,则将使用默认网络接口。
    —apiserver-bind-port int32     默认值:6443
    API 服务器绑定的端口。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    —feature-gates string
    一组键值对(key=value),描述了各种特征。选项包括:
    IPv6DualStack=true|false (ALPHA - 默认值=false)
    -h, —help
    —image-repository string     默认值:”k8s.gcr.io”
    选择用于拉取控制平面镜像的容器仓库
    —kubeconfig string     默认值:”/etc/kubernetes/admin.conf”
    与集群通信时使用的 kubeconfig 文件。如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。
    —pod-network-cidr string
    指定 Pod 网络的 IP 地址范围。如果已设置,控制平面将自动为每个节点分配 CIDR。
    —service-cidr string     默认值:”10.96.0.0/12”
    为服务 VIP 使用 IP 地址的其他范围。
    —service-dns-domain string     默认值:”cluster.local”
    为服务使用其他域名,例如 “myorg.internal”。

    继承于父命令的选项

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

    概要

    通过 API 服务器安装 CoreDNS 附加组件。请注意,即使 DNS 服务器已部署,在安装 CNI 之前 DNS 服务器不会被调度执行。

    1. kubeadm init phase addon coredns [flags]

    选项

    —config string
    kubeadm 配置文件的路径。
    —feature-gates string
    一组用来描述各种功能特性的键值(key=value)对。选项是:
    IPv6DualStack=true|false (ALPHA - 默认值=false)
    -h, —help
    coredns 操作的帮助命令
    —image-repository string     默认值:”k8s.gcr.io”
    选择用于拉取控制平面镜像的容器仓库
    —kubeconfig string     默认值:”/etc/kubernetes/admin.conf”
    与集群通信时使用的 kubeconfig 文件。如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。
    —service-cidr string     默认值:”10.96.0.0/12”
    为服务 VIP 选择 IP 地址范围。
    —service-dns-domain string     默认值:”cluster.local”
    服务使用其它的域名,例如:”myorg.internal”。

    继承于父命令的选项

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

    概要

    通过 API 服务器安装 kube-proxy 附加组件。

    1. kubeadm init phase addon kube-proxy [flags]

    选项

    —apiserver-advertise-address string
    API 服务器所公布的其正在监听的 IP 地址。如果未设置,则将使用默认网络接口。
    —apiserver-bind-port int32     默认值: 6443
    API 服务器绑定的端口。
    —config string
    kubeadm 配置文件的路径。
    —control-plane-endpoint string
    为控制平面指定一个稳定的 IP 地址或 DNS 名称。
    -h, —help
    kube-proxy 操作的帮助命令
    —image-repository string     默认值:”k8s.gcr.io”
    选择用于拉取控制平面镜像的容器仓库
    —kubeconfig string     默认值:”/etc/kubernetes/admin.conf”
    与集群通信时使用的 kubeconfig 文件。如果未设置该参数,则可以在一组标准位置中搜索现有的 kubeconfig 文件。
    —kubernetes-version string     默认值:”stable-1”
    为控制平面选择特定的 Kubernetes 版本。
    —pod-network-cidr string
    指定 Pod 网络的 IP 地址范围。如果已设置,控制平面将自动为每个节点分配 CIDR。
    —rootfs string
    [实验] 到 ‘真实’ 主机根文件系统的路径。

    要使用 kube-dns 代替 CoreDNS,必须传递一个配置文件:

    1. # 仅用于安装 DNS 插件
    2. kubeadm init phase addon coredns --config=someconfig.yaml
    3. # 用于创建完整的控制平面节点
    4. kubeadm init --config=someconfig.yaml
    5. # 用于列出或者拉取镜像
    6. kubeadm config images list/pull --config=someconfig.yaml
    7. # 升级
    8. kubeadm upgrade apply --config=someconfig.yaml

    该文件必须在 ClusterConfiguration 中包含一个 字段,以及包含一个插件的类型 - kube-dns(默认值为 CoreDNS)。

    1. apiVersion: kubeadm.k8s.io/v1beta2
    2. kind: ClusterConfiguration
    3. dns:
    4. type: "kube-dns"
    • kubeadm init 引导 Kubernetes 控制平面节点
    • 将节点连接到集群
    • kubeadm reset 恢复通过 kubeadm init 或 操作对主机所做的任何更改
    • 尝试实验性功能