Score:0

ไม่สามารถเข้าถึงพ็อดจากพ็อดในบางเครื่อง แต่ถึงอุโมงค์ในโหนดแล้ว

ธง ma

ฉันมีพ็อดที่มีคลัสเตอร์ IP 10.233.70.35 ในคลัสเตอร์ Bare Metal Kubernetes 1.19 ที่มี Calico 3.16.9 เป็น CNI เรียกสิ่งนี้ว่า พ็อด เอ. ในโหนดส่วนใหญ่ (ซึ่งแตกต่างจากโหนดของ พ็อด เอ) ฝัก (พ็อด บี) ในเนมสเปซ Kubernetes เดียวกันที่สามารถเข้าถึงได้ พ็อด เอ ดังที่แสดงใน pcap บนโหนด โดยที่ พ็อด เอ อยู่ด้านล่าง:

# tcpdump -vv -i calib33bd7211a6|grep 10.233.109.62
tcpdump: กำลังฟังบน calib33bd7211a6, ประเภทลิงก์ EN10MB (Ethernet), ขนาดการจับภาพ 262144 ไบต์
    10.233.109.62.60372 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0x16af (ถูกต้อง), seq 2138999970, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 2089146656 ecr 0,nop,wscale 7], ความยาว 0
    10.233.70.35.tproxy> 10.233.109.62.60372: ธง [S. ], CKSUM 0xC961 (ไม่ถูกต้อง -> 0x579E), SEQ 398518010, ACK 2138999971, Win 65160 ,wscale 7], ความยาว 0
    10.233.109.62.60372 > 10.233.70.35.tproxy: ค่าสถานะ [.], cksum 0x82fd (ถูกต้อง), seq 1, ack 1, ชนะ 502, ตัวเลือก [nop,nop,TS val 2089146656 ecr 4061902615], ความยาว 0
# tcpdump -vv -i tunl0 | grep 10.233.109.62
tcpdump: กำลังฟัง tunl0, RAW ประเภทลิงก์ (Raw IP), ขนาดการจับภาพ 262144 ไบต์
    10.233.109.62.34294 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0xbd5b (ถูกต้อง), seq 1964000002, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 1018637359 ecr 0,nop,wscale 7], ความยาว 0
    10.233.70.35.tproxy> 10.233.109.62.34294: ธง [S. ], CKSUM 0xC961 (ไม่ถูกต้อง -> 0x7b0b), SEQ 1667300057, ACK 1964000003, Win 65160, ตัวเลือก [MSS 1460, Sackok, TS ,wscale 7], ความยาว 0
    10.233.109.62.34294 > 10.233.70.35.tproxy: ค่าสถานะ [.], cksum 0xa66a (ถูกต้อง), seq 1, ack 1, ชนะ 502, ตัวเลือก [nop,nop,TS val 1018637359 ecr 4061982287], ความยาว 0
    10.233.109.62.34294 > 10.233.70.35.tproxy: ค่าสถานะ [F.], cksum 0x592f (ถูกต้อง), seq 1, ack 1, ชนะ 502, ตัวเลือก [nop,nop,TS val 1018657129 ecr 4061982287], ความยาว 0
    10.233.70.35.tproxy > 10.233.109.62.34294: ค่าสถานะ [F.], cksum 0xc959 (ไม่ถูกต้อง -> 0x0bec), seq 1, ack 2, ชนะ 510, ตัวเลือก [nop,nop,TS val 4062002057 ecr 1018657129], ความยาว 0
    10.233.109.62.34294 > 10.233.70.35.tproxy: ค่าสถานะ [.], cksum 0x0bf3 (ถูกต้อง), seq 2, ack 2, ชนะ 502, ตัวเลือก [nop,nop,TS val 1018657130 ecr 4062002057], ความยาว 0

อย่างไรก็ตาม ในบางเครื่อง (ซึ่งแตกต่างจากโหนดของ พ็อด เอ) ฝัก (พ็อด ซี) ในเนมสเปซ k8s เดียวกันไม่สามารถเข้าถึงได้ พ็อด เอ แม้ว่าจะสามารถไปถึงอุโมงค์ของ พ็อด เอโหนดที่แสดงด้านล่าง:

# tcpdump -vv -i calib33bd7211a6|grep 10.233.82.51
tcpdump: กำลังฟังบน calib33bd7211a6, ประเภทลิงก์ EN10MB (Ethernet), ขนาดการจับภาพ 262144 ไบต์
# tcpdump -vv -i tunl0 | grep 10.233.82.51
tcpdump: กำลังฟัง tunl0, RAW ประเภทลิงก์ (Raw IP), ขนาดการจับภาพ 262144 ไบต์
    10.233.82.51.35038 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0xc924 (ถูกต้อง), seq 2532090843, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 3899329055 ecr 0,nop,wscale 7], ความยาว 0
    10.233.82.51.35038 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0xc529 (ถูกต้อง), seq 2532090843, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 3899330074 ecr 0,nop,wscale 7], ความยาว 0
    10.233.82.51.35038 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0xbd49 (ถูกต้อง), seq 2532090843, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 3899332090 ecr 0,nop,wscale 7], ความยาว 0
    10.233.82.51.35038 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0xacc9 (ถูกต้อง), seq 2532090843, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 3899336314 ecr 0,nop,wscale 7], ความยาว 0
    10.233.82.51.35038 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0x8cc9 (ถูกต้อง), seq 2532090843, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 3899344506 ecr 0,nop,wscale 7], ความยาว 0
    10.233.82.51.35038 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0x4dc9 (ถูกต้อง), seq 2532090843, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 3899360634 ecr 0,nop,wscale 7], ความยาว 0
    10.233.82.51.35038 > 10.233.70.35.tproxy: ค่าสถานะ [S], cksum 0xc9c8 (ถูกต้อง), seq 2532090843, ชนะ 64240, ตัวเลือก [mss 1460,sackOK,TS val 3899394426 ecr 0,nop,wscale 7], ความยาว 0

ฉันจะทำอย่างไรเพื่อแก้ไขสิ่งนี้ พ็อด เอ สามารถเข้าถึงได้โดยพ็อดใด ๆ ในโหนดใด ๆ

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

Wytrzymały Wiktor avatar
it flag
สวัสดี @คริสเตียนอลิส โปรดให้ข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่า Calico ของคุณ คุณได้กำหนดค่าโหมดเครือข่ายแบบใด วิธีการติดตั้งและตัวดำเนินการ? อะไรคือความแตกต่าง (ความแตกต่าง) ในการตั้งค่าโหนด เนื่องจากการสื่อสารปริมาณงานล้มเหลว
ma flag
@WytrzymaÅyWiktor ฉันใช้ kubespray และค่าเริ่มต้นโดยเฉพาะ ขณะนี้ทุกอย่างอยู่ใน kubespray 2.15.1 โหนดในสวิตช์แรกซึ่งทั้งหมดไม่มีปัญหานี้ ถูกตั้งค่าย้อนกลับไปในปี 2018 และผ่านการเปลี่ยนแปลงครั้งใหญ่ใน kubespray แล้ว เช่น การเปลี่ยนไปใช้ kubeadm และผ้าดิบจากผ้าสักหลาด โหนดในสวิตช์อีกอันซึ่งครึ่งหนึ่งมีปัญหานี้ ได้รับการตั้งค่าเมื่อเดือนพฤศจิกายน 2020 ฉันใช้ ipip และไม่มีความแตกต่างเฉพาะในการตั้งค่าโหนดที่ฉันพบ
Mikołaj Głodziak avatar
id flag
ปัญหาของคุณยังไม่ได้รับการแก้ไขหรือไม่? คุณตั้งค่าคลัสเตอร์ของคุณอย่างไร คุณเห็น[หน้านี้](https://github.com/projectcalico/calico/issues/2426)ไหม
ma flag
บางส่วน ปัญหาในการตั้งค่าเฉพาะที่ฉันใช้คำถามนี้เกิดจาก netpol ที่สร้างขึ้นโดยอัตโนมัติซึ่งต้องการแท็กเฉพาะเพื่อเชื่อมต่อ อย่างไรก็ตาม ปัญหาของบางพ็อดจากบางโหนดไม่สามารถเชื่อมต่อได้ยังคงเปิดอยู่ ฉันสร้างโพสต์ใหม่เพื่ออธิบายให้ดีขึ้น: https://serverfault.com/questions/1078384/getaddrinfo-does-not-resolve-in-some-kubernetes-pod-on-some-hosts

โพสต์คำตอบ

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