跳至内容

一些选定参数的详细描述

此列表不是完整列表,而是一些经过选择的参数。

admin-access

admin-access 控制可以访问管理端点的 CIDR(SSH 到每个节点,HTTPS 到主节点)。

如果未指定,则不会应用任何 IP 级别的限制(尽管仍然存在限制,例如,您需要一个允许的 SSH 密钥才能访问 SSH 服务!)。

示例

CLI

--admin-access=18.0.0.0/8 将限制为 18.0.0.0/8 CIDR 中的 IP

--admin-access=18.0.0.0/8 --admin-access=19.0.0.0/8 将限制为 18.0.0.0/8 和 19.0.0.0/8 CIDR 块中的 IP

YAML

请参阅 ../cluster_spec.md#adminaccess 中的文档

dns-zone

dns-zone 控制将在其中创建 DNS 记录的 Route53 托管区域。它可以是托管区域的名称(example.com),也可以是托管区域的 ID(Z1GABCD1ABC2DEF

假设您正在创建名为“dev.kubernetes.example.com` 的集群

  • 您可以指定一个 --dns-zone=example.com(您可以在托管区域中拥有子域)
  • 您也可以使用 --dns-zone=kubernetes.example.com

您确实必须设置 DNS 服务器,以便您的托管区域解析。kOps 过去会为您创建托管区域,但现在(因为您无论如何都必须设置名称服务器),这样做似乎没有太大意义!

如果您未指定 dns-zone,kOps 将列出所有您的托管区域,并选择最长的一个作为您集群名称的后缀。因此,对于 dev.kubernetes.example.com,如果您拥有 kubernetes.example.comexample.comsomethingelse.example.com,它将选择 kubernetes.example.comexample.com 匹配但更短;somethingelse.example.com 不是后缀匹配。

示例

--dns-zone=example.com 用于使用名称为 example.com 的托管区域

cloud-labels

cloud-labels 指定由 kOps 管理的云提供商资源的标签。支持的格式是键值对的 CSV 列表。键和值不能包含嵌入的逗号,但只要字段被引号括起来,它们就可以包含等号('=')

  • --cloud-labels "Project=\"Name=Foo Customer=Acme\",Owner=Jane Doe" 将被解析为 {Project:"Name=Foo Customer=Acme", Owner: "Jane Doe"}

允许的字符的确切数量因云提供商而异。

UpdatePolicy

Cluster.Spec.UpdatePolicy

价值观

  • external 更新由外部系统(或手动)执行,不应自动应用

  • 未设置意味着使用默认策略,目前是应用操作系统安全更新,除非它们需要重新引导

如果未设置值,则在引导期间还会更新必需的软件包。

out

out 确定 kOps 将为 Terraform 编写目标输出的目录。它默认为 out/terraform

仅限 API 的参数

某些参数只能通过 API 传递,例如 kops edit cluster。以下内容介绍了一些更有趣或鲜为人知的选项。有关更多字段,请参阅 集群规范 页面。

kubeletPreferredAddressTypes

apiserver 现在可以使用 --kubelet-preferred-address-types 标志选择要用于 apiserver->node 通信的 kubelet 报告地址类型。(https://github.com/kubernetes/kubernetes/pull/35497, @liggitt)

示例

kubeAPIServer:
    kubeletPreferredAddressTypes:
    - InternalIP
    - ExternalIP

有关使用 YAML 的更多信息,请访问 此处