创建 CoreDNS Amazon EKS 附加组件 - Amazon EKS

帮助改进此页面

想为本用户指南做出贡献? 选择位于每个页面右侧窗格中的在 GitHub 上编辑此页面链接。您的贡献有助于我们的用户指南为每个人提供更充分的参考。

创建 CoreDNS Amazon EKS 附加组件

创建 CoreDNS Amazon EKS 附加组件。在创建附加组件之前,您必须拥有一个集群。有关更多信息,请参阅 创建 Amazon EKS 集群。

  1. 查看集群上当前安装的附加组件版本。

    kubectl describe deployment coredns --namespace kube-system | grep coredns: | cut -d : -f 3

    示例输出如下。

    v1.10.1-eksbuild.13
  2. 查看集群上当前安装的附加组件类型。根据您创建集群时使用的工具,您的集群上目前可能没有安装 Amazon EKS 附加组件类型。将 my-cluster 替换为您的集群的名称。

    aws eks describe-addon --cluster-name my-cluster --addon-name coredns --query addon.addonVersion --output text

    如果返回来的是版本号,则表明您的集群上安装有 Amazon EKS 类型的附加组件,而且此流程中其余的步骤,您也不需要走完。如果返回来的是一个错误,则表明您的集群上没有安装 Amazon EKS 类型的附加组件。要安装,就需完成此流程中其余的步骤。

  3. 保存您当前安装的附加组件的配置。

    kubectl get deployment coredns -n kube-system -o yaml > aws-k8s-coredns-old.yaml
  4. 使用 AWS CLI 创建附加组件。如果要使用 AWS Management Console 或 eksctl 来创建附加组件,请参阅 创建 Amazon EKS 附加组件 并指定 coredns 为附加组件名称。将以下命令复制到您的设备。根据需要对该命令进行以下修改,然后运行修改后的命令。

    • my-cluster 替换为您的集群的名称。

    • v1.11.3-eksbuild.1 替换为集群版本的最新版本(在最新版本表中列出)。

      aws eks create-addon --cluster-name my-cluster --addon-name coredns --addon-version v1.11.3-eksbuild.1

      如果您对当前附加组件应用的自定义设置与 Amazon EKS 附加组件的默认设置相冲突,则创建可能会失败。如果创建失败,您会收到一条可以帮助您解决问题的错误信息。或者,您可以将 --resolve-conflicts OVERWRITE 添加到前面的命令中。这样一来,附加组件会覆盖任何现有的自定义设置。创建附加组件后,您可以使用自定义设置对其进行更新。

  5. 确认您的集群的 Kubernetes 版本的附加组件最新版本已添加到您的集群。将 my-cluster 替换为您的集群的名称。

    aws eks describe-addon --cluster-name my-cluster --addon-name coredns --query addon.addonVersion --output text

    附加组件创建可能需要几秒钟才能完成。

    示例输出如下。

    v1.11.3-eksbuild.1
  6. 如果您在创建 Amazon EKS 附加组件之前对原始附加组件进行了自定义设置,则请使用您在上一步中保存的配置,以使用您的自定义设置更新 Amazon EKS 附加组件。有关如何更新附加组件的说明,请参阅 更新 CoreDNS Amazon EKS 附加组件