在混合云场景下,如果您使用自建的DNS Server,您可以为注册集群的云上ECI指定使用自建的DNS。本文介绍如何为注册集群指定DNS。
前提条件
已接入注册集群。具体操作,请参见通过控制台创建注册集群、通过onectl创建注册集群。
已通过kubectl连接注册集群。具体操作,请参见获取集群KubeConfig并通过kubectl工具连接集群。
已安装ack-virtual-node组件,且组件版本为2.10.0及以上版本。具体操作,请参见管理组件。
操作步骤
执行以下命令,编辑eci-profile文件。
kubectl edit configmap eci-profile -n kube-system
在eci-profile的selectors中,配置Annotations。
例如,您可以通过配置以下策略,指定所有ECI Pod的DNS Server。若想仅对某些Pod生效,可配置dns-selector。具体操作,请参见配置selectors 。
重要请务必在测试环境中验证
k8s.aliyun.com/eci-dns-config
的值,验证通过后再发布至生产环境,以避免配置文件中该值的配置不当,导致ack-virtual-node crash组件影响业务。selectors: | [ { "name":"dns-selector", "effect": { "annotations": { "k8s.aliyun.com/eci-dns-config": "{\"nameservers\":[\"192.0.2.1\",\"192.0.2.2\"],\"searches\":[\"ns1.svc.cluster-domain.example\",\"my.dns.search.suffix\"],\"options\":[{\"name\":\"ndots\",\"value\":\"2\"},{\"name\":\"edns0\"}]}" } } } ]
文档内容是否对您有帮助?