Score:1

ปัญหาเกี่ยวกับการแก้ไข DNS และคลัสเตอร์ Microk8s

ธง gb

คลัสเตอร์ microk8s ของฉันทำงานบน centos8 vm และฉันมีปัญหาบางอย่างเกี่ยวกับการแก้ไข DNS ของพ็อดของฉัน เนมเซิร์ฟเวอร์อยู่ที่ x.x.x.101 และ x.x.x.100 ทั้งคู่สามารถ ping จากภายในพ็อดและฉันก็สามารถ ping ได้เช่นกัน 8.8.8.8

nslookup จากภายในพ็อดมีลักษณะดังนี้:

root@debug-7857894f66-mnklp:/# nslookup kubernetes.default
เซิร์ฟเวอร์: 10.152.183.10
ที่อยู่: 10.152.183.10#53

ชื่อ: kubernetes.default.svc.cluster.local
ที่อยู่: 10.152.183.1

การกำหนดค่า coredns มีลักษณะดังนี้:

api เวอร์ชัน: v1
ข้อมูล:
  Corefile: ".:53 {\n ข้อผิดพลาด\n สุขภาพ {\n lameduck 5s\n }\n พร้อมแล้ว\n
    \   บันทึก . {\n ข้อผิดพลาดของคลาส\n }\n kubernetes cluster.local in-addr.arpa
    ip6.arpa {\n พ็อดไม่ปลอดภัย\n ฟอลทรูใน addr.arpa ip6.arpa\n }\n
    \ โพร :9153\n ไปข้างหน้า x.x.x.101 x.x.x.100 \n แคช 30\n
    \ วนซ้ำ\n โหลดซ้ำ\n โหลดบาลานซ์\n}\n"
ประเภท: ConfigMap
ข้อมูลเมตา:
  คำอธิบายประกอบ:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","data":{"Corefile":".:53 {\n error\n health {\n lameduck 5s\n }\n ready\n log {\n class error\ n }\n kubernetes cluster.local in-addr.arpa ip6.arpa {\n pods ไม่ปลอดภัย\n fallthrough in-addr.arpa ip6.arpa\n }\n prometheus :9153\n forward . x.x.x.101 x.x.x.100 \n แคช 30\n ลูป\n โหลดซ้ำ\n loadbalance\n}\n"},"kind":"ConfigMap","metadata":{"annotations":{},"labels":{"addonmanager.kubernetes.io /mode":"EnsureExists","k8s-app":"kube-dns"},"name":"coredns","namespace":"kube-system"}}
  การสร้างการประทับเวลา: "2021-08-31T08:57:27Z"
  ป้ายกำกับ:
    addonmanager.kubernetes.io/mode: SureExists
    k8s-app: kube-dns
  ชื่อ: coredns
  เนมสเปซ: ระบบ kube
  ทรัพยากรเวอร์ชัน: "2420090"
  selfLink: /api/v1/namespaces/kube-system/configmaps/coredns
  รหัส: 471b258a-253d-4b51-aaf7-7e934ab300d1

เดอะ /etc/resolv.conf ในฝักของฉันมีลักษณะดังนี้:

ค้นหา default.svc.cluster.local svc.cluster.local cluster.local xxx.xxxxx
เนมเซิร์ฟเวอร์ 10.152.183.10
ตัวเลือก ndots:5

เมื่อฉันดูบันทึกของ kube-dns ด้วย บันทึก $ microk8s kubectl --namespace=kube-system -l k8s-app=kube-dns ฉันได้รับคำตอบต่อไปนี้:

[ข้อมูล] 10.1.107.105:47549 - 5288 "AAAA IN www.google.com. udp 36 เท็จ 512" NOERROR - 0 0.000256103s
[ข้อผิดพลาด] ปลั๊กอิน/ข้อผิดพลาด: 2 www.google.com AAAA: อ่าน udp 10.1.107.127:51486->x.x.x.101:53: อ่าน: ไม่มีเส้นทางไปยังโฮสต์

บริการ DNS ไม่ทำงาน:

$ microk8s kubectl รับ svc --namespace=kube-system
ประเภทชื่อ CLUSTER-IP EXTERNAL-IP PORT(S) อายุ
[...]
kube-dns ClusterIP 10.152.183.10 <ไม่มี> 53/UDP,53/TCP,9153/TCP 21d

ปลายทาง DNS ถูกเปิดเผย:

$ microk8s kubectl รับจุดสิ้นสุด kube-dns --namespace=kube-system
NAME ENDPOINTS อายุ
kube-dns 10.1.107.127:53,10.1.107.127:53,10.1.107.127:9153 21d

เครื่องเสมือนที่คลัสเตอร์กำลังทำงานอยู่นั้นใช้เนมเซิร์ฟเวอร์เดียวกันโดยไม่มีปัญหา นี่คือสิ่งที่ฉันต้องรบกวนผู้ดูแลระบบของเรา หรือฉันพลาดบางสิ่งที่กำหนดค่าผิดไป

แก้ไข:

โอเค ฉันลองเพิ่มอีกเล็กน้อยและมีพฤติกรรมแปลก ๆ ที่ฉันคิดว่าเกี่ยวข้องกับการสร้างไฟล์อย่างไม่ถูกต้อง แกนกลาง ไฟล์คอนฟิก ฉันรีเซ็ตคลัสเตอร์ทั้งหมดแล้วลองอีกครั้ง แต่ก็ยังมีข้อผิดพลาดเดิมเมื่อฉันใช้ 8.8.8.8 หรือ 8.8.4.4 เป็นเซิร์ฟเวอร์ DNS แต่เมื่อฉันเรียกใช้คำสั่งต่อไปนี้: $ microk8s เปิดใช้งาน DNS:x.x.x.101,x.x.x.100 ในที่สุดมันก็ใช้งานได้ จากนั้นฉันพยายามกำหนดค่าสำหรับสิ่งนี้ด้วย $ microk8s kubectl -n ระบบ kube แก้ไข configmap/coredns และฉันเพิ่ม DNS ทั้งสองในการกำหนดค่าที่มันหยุดทำงาน และฉันได้รับข้อผิดพลาดอีกครั้ง: [ข้อผิดพลาด] ปลั๊กอิน/ข้อผิดพลาด: 2 www.google.com AAAA: อ่าน udp 10.1.107.127:51486->x.x.x.101:53: อ่าน: ไม่มีเส้นทางไปยังโฮสต์ มีอะไรผิดปกติกับการกำหนดค่าของฉันที่ตั้งค่าอย่างถูกต้องโดยอัตโนมัติด้วย $ microk8s เปิดใช้งาน DNS:x.x.x.101,x.x.x.100 ?

แก้ไขครั้งที่ 2

ฉันพยายามใช้ขุดที่นี่แม้ว่าฉันจะระบุเซิร์ฟเวอร์ DNS มันก็ไม่ทำงาน มีเหตุผลใดบ้างที่สามารถ ping ผ่านได้แต่ DNS ถูกบล็อกโดยระบบ? จะเกิดขึ้นเฉพาะในวันที่ คลัสเตอร์ microk8sระบบโฮสต์ทำงาน fin docker ทำงานได้ดี ... นี่คือผลงานพิมพ์: นี่คือจากภายในฝัก:

root@debug-865cb7fb4-wfhw4:/# ขุด www.google.com

; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> www.google.com
;; ตัวเลือกส่วนกลาง: +cmd
;; หมดเวลาการเชื่อมต่อ; ไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้
root@debug-865cb7fb4-wfhw4:/# ขุด @x.x.x.101 www.google.com

; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @x.x.x.101 www.google.com
; (พบ 1 เซิร์ฟเวอร์)
;; ตัวเลือกส่วนกลาง: +cmd
;; หมดเวลาการเชื่อมต่อ; ไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้
root@debug-865cb7fb4-wfhw4:/# ขุด @8.8.8.8 www.google.com

; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @8.8.8.8 www.google.com
; (พบ 1 เซิร์ฟเวอร์)
;; ตัวเลือกส่วนกลาง: +cmd
;; หมดเวลาการเชื่อมต่อ; ไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้
root@debug-865cb7fb4-wfhw4:/# ขุด @x.x.x.100 www.google.com

; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @x.x.x.100 www.google.com
; (พบ 1 เซิร์ฟเวอร์)
;; ตัวเลือกส่วนกลาง: +cmd
;; หมดเวลาการเชื่อมต่อ; ไม่สามารถเข้าถึงเซิร์ฟเวอร์ได้

และนี่คือจากระบบโฮสต์:

$ ขุด www.google.com

; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8_3.1 <<>> www.google.com
;; ตัวเลือกส่วนกลาง: +cmd
;; ได้รับคำตอบ:
;; ->>HEADER<<- opcode: QUERY, สถานะ: NOERROR, id: 25735
;; ธง: qr rd ra; คำถาม: 1, คำตอบ: 1, ผู้มีอำนาจ: 0, เพิ่มเติม: 1

;; เลือก PSEUDOSECTION:
; EDNS: เวอร์ชัน: 0, แฟล็ก:; อัฟ: 4000
;; ส่วนคำถาม:
;www.google.co.th ใน

;; ส่วนคำตอบ:
www.google.co.th 113 ใน A 142.250.185.228

;; เวลาสืบค้น: 0 มิลลิวินาที
;; เซิร์ฟเวอร์: x.x.x.101#53(x.x.x.101)
;; เมื่อ: ศุกร์ 08 ต.ค. 15:10:21 CEST 2021
;; ขนาดผงชูรส rcvd: 59



$ ขุด @8.8.8.8 www.google.com

; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8_3.1 <<>> @8.8.8.8 www.google.com
; (พบ 1 เซิร์ฟเวอร์)
;; ตัวเลือกส่วนกลาง: +cmd
;; ได้รับคำตอบ:
;; ->>HEADER<<- opcode: QUERY, สถานะ: NOERROR, id: 3924
;; ธง: qr rd ra; คำถาม: 1, คำตอบ: 1, ผู้มีอำนาจ: 0, เพิ่มเติม: 1

;; เลือก PSEUDOSECTION:
; EDNS: เวอร์ชัน: 0, แฟล็ก:; โฆษณา: 512
;; ส่วนคำถาม:
;www.google.co.th ใน

;; ส่วนคำตอบ:
www.google.co.th 300 ใน A 142.250.185.228

;; เวลาสืบค้น: 34 มิลลิวินาที
;; เซิร์ฟเวอร์: 8.8.8.8#53(8.8.8.8)
;; เมื่อ: ศุกร์ 08 ต.ค. 15:10:49 CEST 2021
;; ขนาดผงชูรส rcvd: 59

$ ขุด @x.x.x.101 www.google.com

; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8_3.1 <<>> @x.x.x.101 www.google.com
; (พบ 1 เซิร์ฟเวอร์)
;; ตัวเลือกส่วนกลาง: +cmd
;; ได้รับคำตอบ:
;; ->>HEADER<<- opcode: QUERY, สถานะ: NOERROR, id: 60305
;; ธง: qr rd ra; คำถาม: 1, คำตอบ: 1, ผู้มีอำนาจ: 0, เพิ่มเติม: 1

;; เลือก PSEUDOSECTION:
; EDNS: เวอร์ชัน: 0, แฟล็ก:; อัฟ: 4000
;; ส่วนคำถาม:
;www.google.co.th ใน

;; ส่วนคำตอบ:
www.google.co.th 70 ใน A 142.250.185.228

;; เวลาสืบค้น: 0 มิลลิวินาที
;; เซิร์ฟเวอร์: x.x.x.101#53(x.x.x.101)
;; เมื่อ: ศุกร์ 08 ต.ค. 15:11:04 CEST 2021
;; ขนาดผงชูรส rcvd: 59

ฉันไม่รู้ว่าเกิดอะไรขึ้น ....

Mikołaj Głodziak avatar
id flag
คุณใช้ Kubernetes เวอร์ชันใด
Thagor avatar
gb flag
ฉันใช้ Kubernetes v1.22
Mikołaj Głodziak avatar
id flag
โปรดระบุไฟล์ yaml ของ pod
Thagor avatar
gb flag
ฉันสร้างคลัสเตอร์ใหม่ในโครงสร้างพื้นฐานที่อยู่ภายใต้การควบคุมของฉันโดยสมบูรณ์ ที่นั่น DNS ใช้งานได้
Thagor avatar
gb flag
ดูเหมือนจะเป็นปัญหาที่เชื่อมต่อกับ iptables และไฟร์วอลล์บนโฮสต์ หากฉันปิดการใช้งานทั้งสองปัญหาจะหายไป ฉันจะโพสต์และตอบทันทีที่ฉันรู้วิธีกำหนดค่าเครื่องมือเหล่านี้อย่างถูกต้อง
Score:0
ธง id

ฉันได้โพสต์คำตอบ wiki ของชุมชนเพื่อให้มองเห็นได้ดีขึ้น เนื่องจาก ธากอร์ ได้กล่าวถึงในความคิดเห็น ปัญหาได้รับการแก้ไขแล้ว และเกี่ยวข้องกับ DNS ภายนอก:

ฉันสร้างคลัสเตอร์ใหม่ในโครงสร้างพื้นฐานที่อยู่ภายใต้การควบคุมของฉันโดยสมบูรณ์ โดยที่ DNS ทำงาน

ลองปิดการใช้งาน iptables และไฟร์วอลล์บนโฮสต์และดูว่าคุณสามารถดำเนินการผ่านการกำหนดค่า coredns ได้หรือไม่

ข้อมูลเพิ่มเติมเกี่ยวกับ DNS สามารถพบได้อย่างเป็นทางการ เอกสาร.

Wytrzymały Wiktor avatar
it flag
สวัสดี @ธากอร์ นี่ [ตอบคำถามของคุณ](https://stackoverflow.com/help/someone-answers)ไหม
Thagor avatar
gb flag
สวัสดี ฉันอัปเดตโพสต์แรกของฉันแล้ว DNS ใช้งานได้ถ้าฉันตั้งค่าด้วย `$ microk8s enable dns:x.x.x.100,x.x.x.101` แต่ทันทีที่ฉันพยายามทำผ่านการกำหนดค่า coredns มันล้มเหลว และฉันไม่รู้ว่าทำไม

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา