KubernetesでDNS解決に問題があります。内容が複雑なのでゆっくり読んでください。
環境:
- オンプレミスとプライベートクラウド
オペレーティングシステム
- Ubuntu Server 20.04 LTS
システムネットワーク:
- VPN s2
- LANインターフェイスにカスタムDNS(10.4.0.149)を追加する
クーバーネティスネットワーク:
- 翡翠の木
- CoreDNSとNodelocalDNS
現在、プライベートクラウドのK8sポッドはローカルDNSでドメインを確認する必要があります。ドメインを確認するときにポッドがDNSサーバーに到達するのを助けるために、カスタムDNSを追加するためにこのガイドに従いました。
https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/
次のブロックを使用してください。
projects.com:53 {
errors
log
cache 30
forward . 10.4.0.149
}
Podで発掘する際にドメインを確認できる場合もありますが、そうでない場合もあります。しかし、nslookupはいつでも動作します。 PodでドメインのPingも試しましたが、状況はdigと同じです。時には動作しますが、時には動作しません。ちなみに、ポッドのあるノードでtcpdumpを介してネットワークパケットを調べましたが、運がありませんでした。
もしそうなら、質問はKubernetesでDNS解決がどのように機能するかです。 AFAIK DNS 解決は、ノードの pod -> nodelocaldns -> coredns -> /etc/resolv.conf に対する要求と連携します。しかし、正しく動作しないようです。
いくつかの提案をすることができますか?
よろしくお願いします!
私はtcpdumpからこれを得ます:
2503 12.026282 10.244.14.63 169.254.25.10 DNS 105 Standard query 0x91f8 A id-test.projects.com OPT
2506 12.049959 169.254.25.10 10.244.14.63 DNS 105 Standard query response 0x91f8 Format error A id-test.projects.com OPT
2772 14.056998 10.244.14.63 169.254.25.10 DNS 105 Standard query 0xc532 A id-test.projects.com OPT
2785 14.079098 169.254.25.10 10.244.14.63 DNS 105 Standard query response 0xc532 Format error A id-test.projects.com OPT
3355 16.086108 10.244.14.63 169.254.25.10 DNS 105 Standard query 0xf86c A id-test.projects.com OPT
3358 16.108111 169.254.25.10 10.244.14.63 DNS 105 Standard query response 0xf86c Format error A id-test.projects.com OPT
4073 18.115002 10.244.14.63 169.254.25.10 DNS 105 Standard query 0x2ba6 A id-test.projects.com OPT
4126 18.137460 169.254.25.10 10.244.14.63 DNS 105 Standard query response 0x2ba6 Format error A id-test.projects.com OPT
4179 18.250697 10.244.14.64 169.254.25.10 DNS 107 Standard query 0x678f A id-test.projects.com.master.svc.cluster.local
4180 18.250736 10.244.14.64 169.254.25.10 DNS 107 Standard query 0xbc8b AAAA id-test.projects.com.master.svc.cluster.local
4196 18.251611 169.254.25.10 10.244.14.64 DNS 200 Standard query response 0xbc8b No such name AAAA id-test.projects.com.master.svc.cluster.local SOA ns.dns.cluster.local
4202 18.251957 169.254.25.10 10.244.14.64 DNS 200 Standard query response 0x678f No such name A id-test.projects.com.master.svc.cluster.local SOA ns.dns.cluster.local
4203 18.252034 10.244.14.64 169.254.25.10 DNS 100 Standard query 0x360a A id-test.projects.com.svc.cluster.local
4204 18.252060 10.244.14.64 169.254.25.10 DNS 100 Standard query 0x6e09 AAAA id-test.projects.com.svc.cluster.local
4215 18.252524 169.254.25.10 10.244.14.64 DNS 193 Standard query response 0x360a No such name A id-test.projects.com.svc.cluster.local SOA ns.dns.cluster.local
4220 18.252637 169.254.25.10 10.244.14.64 DNS 193 Standard query response 0x6e09 No such name AAAA id-test.projects.com.svc.cluster.local SOA ns.dns.cluster.local
4221 18.252697 10.244.14.64 169.254.25.10 DNS 96 Standard query 0x6b3d A id-test.projects.com.cluster.local
4222 18.252718 10.244.14.64 169.254.25.10 DNS 96 Standard query 0x103f AAAA id-test.projects.com.cluster.local
4233 18.253085 169.254.25.10 10.244.14.64 DNS 189 Standard query response 0x103f No such name AAAA id-test.projects.com.cluster.local SOA ns.dns.cluster.local
4238 18.253281 169.254.25.10 10.244.14.64 DNS 189 Standard query response 0x6b3d No such name A id-test.projects.com.cluster.local SOA ns.dns.cluster.local
4239 18.253350 10.244.14.64 169.254.25.10 DNS 82 Standard query 0x4118 A id-test.projects.com
4240 18.253364 10.244.14.64 169.254.25.10 DNS 82 Standard query 0x151e AAAA id-test.projects.com
4244 18.275928 169.254.25.10 10.244.14.64 DNS 168 Standard query response 0x151e AAAA id-test.projects.com SOA ad.global.com
4246 18.276120 169.254.25.10 10.244.14.64 DNS 118 Standard query response 0x4118 A id-test.projects.com A 10.7.22.15
4632 20.146523 10.244.14.63 169.254.25.10 DNS 105 Standard query 0x5ee1 A id-test.projects.com OPT
4633 20.146709 169.254.25.10 10.244.14.63 DNS 141 Standard query response 0x5ee1 A id-test.projects.com A 10.7.22.15 OPT
5042 22.152642 10.244.14.63 169.254.25.10 DNS 105 Standard query 0x921b A id-test.projects.com OPT
5043 22.152818 169.254.25.10 10.244.14.63 DNS 141 Standard query response 0x921b A id-test.projects.com A 10.7.22.15 OPT
5328 24.159482 10.244.14.63 169.254.25.10 DNS 105 Standard query 0xc555 A id-test.projects.com OPT
5329 24.159653 169.254.25.10 10.244.14.63 DNS 141 Standard query response 0xc555 A id-test.projects.com A 10.7.22.15 OPT
5659 26.165768 10.244.14.63 169.254.25.10 DNS 105 Standard query 0xf88f A id-test.projects.com OPT
digを使用するとフォーマットエラーが発生する理由がわかりません。解決の際には、カールポッドであるIP 10.244.14.63とDNSを解決する必要があるアプリケーションサービスの別のポッド(10.244.14.64)を参照してください。 DNS が成功すると、dig コマンドを実行すると正しい IP ドメイン名がすぐに返されます。
この問題についてどう思いますか?
アドバイスしてください。
よろしくお願いします。