按照以下说明在运行适用于 vSphere 8.x 的 TKr 的 TKG 服务 集群上安装 ExternalDNS。
关于 ExternalDNS
通过 ExternalDNS,可以为具有 Ingress 组件(例如,Contour with Envoy)的 Kubernetes 服务自动创建 DNS 记录。ExternalDNS 软件包已使用以下 DNS 提供程序进行了验证:AWS Route 53、Azure DNS 和符合 RFC2136 的 DNS 服务器(如 BIND)。另请参见 ExternalDNS 软件包参考。
必备条件
请遵循以下必备条件。
创建 ExternalDNS 数据值
准备通过创建 ExternalDNS 数据值文件来安装 ExternalDNS。
- 列出存储库中可用的 ExternalDNS 软件包版本。
tanzu package available get external-dns.tanzu.vmware.com -n tkg-system
或者,使用 kubectl。kubectl -n tkg-system get packages | grep external-dns
注: 通常,应该使用最新版本,除非要求不同。 - 为 ExternalDNS 软件包生成数据值文件。
tanzu package available get external-dns.tanzu.vmware.com/0.13.6+vmware.1-tkg.1 --default-values-file-output external-dns-data-values.yaml
其中:- 0.13.6+vmware.1-tkg.1 是目标软件包版本
- external-dns-data-values.yaml 是要生成的数据值文件的名称和路径
- 为您的环境自定义数据值。
数据值因所针对的支持的 DNS 服务器而异。有关示例,请参见 ExternalDNS 软件包参考。
- (如有必要)创建一个配置映射,用于定义 ExternalDNS 软件包将与之交互的 DNS 服务器。
有关示例,请参见 ExternalDNS 软件包参考。
安装 ExternalDNS
完成以下步骤以在 TKG 集群上安装 ExternalDNS 软件包。
- 为 ExternalDNS 创建命名空间。
kubectl create ns tanzu-system-service-discovery
- 使用 Tanzu CLI 安装 ExternalDNS 软件包。
tanzu package install external-dns -p external-dns.tanzu.vmware.com -n tanzu-system-service-discovery -v 0.11.0+vmware.1-tkg.2 --values-file external-dns-data-values.yaml
- 验证是否已使用 Tanzu CLI 安装软件包。
tanzu package installed list -n tanzu-system-service-discovery NAME PACKAGE-NAME PACKAGE-VERSION STATUS external-dns external-dns.tanzu.vmware.com 0.11.0+vmware.1-tkg.2 Reconcile succeeded
kubectl -n tanzu-system-service-discovery get all NAME READY STATUS RESTARTS AGE pod/external-dns-77d947745-tcjz9 1/1 Running 0 63s NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/external-dns 1/1 1 1 63s NAME DESIRED CURRENT READY AGE replicaset.apps/external-dns-77d947745 1 1 1 63s
参考案例
根据需要参考以下主题。