Score:1

Kubernetes ไม่สามารถเมานต์ไดรฟ์ข้อมูล NFS หลังจากอัปเดตและรีบูตเซิร์ฟเวอร์ NFS

ธง pk

หลังจาก แพทช์ซิป'การใช้เซิร์ฟเวอร์ NFS บน openSUSE Leap 15.2 เป็นเวอร์ชันล่าสุดและการรีบูต โหนดในคลัสเตอร์ kubernetes (Openshift 4.5) ไม่สามารถเมานต์ไดรฟ์ข้อมูล NFS ได้อีกต่อไป

เวอร์ชันเซิร์ฟเวอร์ NFS: nfs-kernel-server-2.1.1-lp152.9.12.1.x86_64

/etc/exports ประกอบด้วย:

/nfs 192.168.11.*(rw,ซิงค์,no_wdelay,root_squash,ไม่ปลอดภัย,no_subtree_check,fsid=0)

พ็อดที่ได้รับผลกระทบอยู่ในสถานะ ContainerCreating

kubectl อธิบาย pod/<pod_name> ให้ข้อผิดพลาดดังต่อไปนี้:

คำเตือน FailedMount 31m kubelet MountVolume.SetUp ล้มเหลวสำหรับโวลุ่ม "volume": การเมานต์ล้มเหลว: สถานะการออก 32
คำสั่งการติดตั้ง: systemd-run
อาร์กิวเมนต์การติดตั้ง: --description=Kubernetes เมานต์ชั่วคราวสำหรับ -- เมานต์ -t nfs nfs.example.invalid:/nfs/volume /var/lib/kubelet/pods/c86dee2e-f533-43c9-9a1d-c4f00a1b8eef/volumes/kubernetes.io~nfs/pv-name
เอาต์พุต: ขอบเขตการรันเป็นหน่วย: run-r83d4e7dba1b645aca1e4693a48f45191.scope
mount.nfs: ไม่อนุญาตให้ดำเนินการ

เซิร์ฟเวอร์กำลังเรียกใช้ NFSv4 เท่านั้น ดังนั้น rpcbind จึงถูกปิดและคำสั่ง showmount ไม่ทำงาน

การเมานต์โดยตรงบนโหนด kubernetes ส่งผลให้เกิดข้อผิดพลาดดังต่อไปนี้:

sudo mount.nfs4 nfs.example.invalid:/core tmp/ -v; ก้อง $?
mount.nfs4: หมดเวลาที่กำหนดไว้สำหรับวันพุธที่ 21 กรกฎาคม 12:16:49 น. 2564
mount.nfs4: ลองใช้ตัวเลือกแบบข้อความ 'vers=4.2,addr=192.168.11.2,clientaddr=192.168.11.3'
mount.nfs4: mount(2): ไม่อนุญาตให้ดำเนินการ
mount.nfs4: ไม่อนุญาตให้ดำเนินการ
32

กฎไฟร์วอลล์บนเซิร์ฟเวอร์ NFS:

  บริการ: ssh dhcpv6-client nfs mountd rpc-bind samba http tftp
  พอร์ต: 2049/tcp 2049/udp

AppArmor ทำงานอยู่ การปิดไม่ได้เปลี่ยนผลลัพธ์

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

Score:3
ธง pk

หลังจากพยายามแก้ไขปัญหานี้ด้วย rpcdebug ไม่มีประโยชน์ ฉันใช้วิธีทิ้งทราฟฟิกบนเซิร์ฟเวอร์ nfs ที่มาจากโหนดใดโหนดหนึ่ง การถ่ายโอนข้อมูลนี้นำไปสู่ความน่าสนใจ:

NFS ตอบกลับ xid 4168498669 ตอบกลับ ERR 20: Auth Bogus Credentials (ประทับตราเสีย)

ดังนั้นปัญหาจึงไม่เกี่ยวข้องกับเครือข่ายหรืออุปกรณ์ป้องกันอย่างแน่นอน

จากนั้นฉันก็พยายามเปลี่ยน การส่งออก ถึง

/nfs *(rw,ซิงค์,no_wdelay,root_squash,ไม่ปลอดภัย,no_subtree_check,fsid=0)

และทุกอย่างทำงานโดยยืนยันว่าปัญหานี้อยู่ในบางประเภท การส่งออก การกำหนดค่าผิด

กฎการเขียนใหม่เป็น

/nfs 192.168.11.0/24(rw,ซิงค์,no_wdelay,root_squash,ไม่ปลอดภัย,no_subtree_check,fsid=0)

คืนค่าการเชื่อมต่อ

ตาม https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/5/html/deployment_guide/s1-nfs-server-config-exports

สัญลักษณ์แทน â โดยที่ a * หรือ ? ตัวอักษรใช้เพื่อพิจารณาการจัดกลุ่มชื่อโดเมนที่มีคุณสมบัติครบถ้วนซึ่งตรงกับชุดตัวอักษรเฉพาะ ไม่ควรใช้สัญลักษณ์แทนกับที่อยู่ IP; อย่างไรก็ตาม เป็นไปได้ที่พวกเขาจะทำงานโดยไม่ตั้งใจหากการค้นหา DNS ย้อนกลับล้มเหลว

ดังนั้น การใช้ * กับที่อยู่ IP จึงเป็นการกำหนดค่าที่ผิดพลาดอย่างชัดเจน ซึ่งใช้วิธีใดวิธีหนึ่งที่ใช้ได้ผลเป็นเวลาหลายเดือน และสุดท้ายก็ส่งผลให้เกิดข้อผิดพลาดตามที่อธิบายไว้ในคำถาม

โพสต์คำตอบ

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