Score:1

zfs ไม่รู้จักฟิสิคัลดิสก์ของตัวเอง

ธง us

ฉันมีปัญหาซ้ำกับพูล zfs โดยที่ zfs หยุดจดจำอุปกรณ์ทางกายภาพของตัวเองซึ่งมีป้ายกำกับอย่างถูกต้อง (หรือปรากฏขึ้น)

อูบุนตู 20.04.2 LTS
5.11.0-44-generic #48~20.04.2-Ubuntu SMP อ. 14 ธ.ค. 15:36:44 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
libzfs2linux/ตอนนี้ 0.8.3-1ubuntu12.11 amd64 [ติดตั้งแล้ว อัพเกรดเป็น: 0.8.3-1ubuntu12.13]
zfs-zed/ตอนนี้ 0.8.3-1ubuntu12.11 amd64 [ติดตั้งแล้ว อัพเกรดเป็น: 0.8.3-1ubuntu12.13]
zfsutils-linux/ตอนนี้ 0.8.3-1ubuntu12.11 amd64 [ติดตั้งแล้ว อัพเกรดเป็น: 0.8.3-1ubuntu12.13]

ตัวอย่างโมเดล

  1. ฉันสามารถสร้างพูล เชื่อมต่อดิสก์ที่ไม่เกี่ยวข้องทั้งหมด (เช่นusb, ภายนอก) และเมื่อรีบูต (โดยที่ดิสก์ usb เข้า) zfs รายงานว่าหนึ่งในดิสก์จากพูลหายไป
  2. ดูเหมือนว่าจะเกิดขึ้นกับการเปลี่ยนคอนโทรลเลอร์สำหรับไดรฟ์หนึ่งตัว (หรือมากกว่านั้น) ฟิสิคัลดิสก์ทั้งหมดอยู่ที่นั่น ฉลาก/uuids ทั้งหมดดูเหมือนจะอยู่ที่นั่น สิ่งที่เปลี่ยนแปลงคือการกำหนดตัวอักษรอุปกรณ์

ยากที่จะเชื่อว่า zfs รวบรวมพูลตามคำสั่งการกำหนดอุปกรณ์ระบบโดยไม่สนใจป้ายกำกับ/uuids แต่นี่คือลักษณะที่ปรากฏ

    agatek@mmstorage:~$ สถานะ zpool
          พูล: mmdata
         สถานะ: เสื่อมโทรม
        สถานะ: ไม่สามารถใช้อุปกรณ์อย่างน้อยหนึ่งเครื่องได้เนื่องจากฉลากหายไปหรือ
            ไม่ถูกต้อง. มีแบบจำลองเพียงพอสำหรับพูลเพื่อดำเนินการต่อ
            ทำงานในสถานะที่เสื่อมโทรม
        การดำเนินการ: เปลี่ยนอุปกรณ์โดยใช้ 'zpool แทนที่'
           ดู: http://zfsonlinux.org/msg/ZFS-8000-4J
          การสแกน: กำลังขัดอยู่ตั้งแต่ อา. 9 ม.ค. 13:03:23 น. 2565
            650G สแกนที่ 1.58G/s, 188G สแกนที่ 468M/s, รวม 22.7T
            0B ซ่อมเสร็จแล้ว 0.81% 0 วัน 14:00:27 เหลือ
        การกำหนดค่า:

        ชื่อ รัฐ อ่าน เขียน CKSUM
        mmdata ลดลง 0 0 0
          เรดซ์ 1-0 ลดลง 0 0 0
            ata-HGST_HDN726040ALE614_K7HJG8HL ออนไลน์ 0 0 0
            6348126275544519230 ผิดพลาด 0 0 0 ถูก /dev/sdb1
            ata-HGST_HDN726040ALE614_K3H14ZAL ออนไลน์ 0 0 0
            ata-HGST_HDN726040ALE614_K4K721RB ออนไลน์ 0 0 0
            ata-WDC_WD40EZAZ-00SF3B0_WD-WX12D514858P ออนไลน์ 0 0 0
            ata-ST4000DM004-2CV104_ZTT24X5R ออนไลน์ 0 0 0
            ata-WDC_WD40EZAZ-00SF3B0_WD-WX62D711SHF4 ออนไลน์ 0 0 0
            sdi ออนไลน์ 0 0 0
    
    ข้อผิดพลาด: ไม่มีข้อผิดพลาดของข้อมูลที่ทราบ

agatek@mmstorage:~$ blkid 
/dev/sda1: UUID="E0FD-8D4F" TYPE="vfat" PARTUUID="7600a192-967b-417f-b726-7f5524be71a5"
/dev/sda2: UUID="9d8774ec-051f-4c60-aaa7-82f37dbaa4a4" TYPE="ext4" PARTUUID="425f31b2-f289-496a-911b-a2f8a9bb5c25"
/dev/sda3: UUID="e0b8852d-f781-4891-8e77-d8651f39a55b" TYPE="ext4" PARTUUID="a750bae3-c6ea-40a0-bdfa-0523e358018b"
/dev/sdb1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="13253481390530831214" TYPE="zfs_member" PARTLABEL="zfs-5360ecc220877e69" PARTUUID="57fe2215-aa69-2f4a7a202e69"
/dev/sdd1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="17929921080902463088" TYPE="zfs_member" PARTLABEL="zfs-f6ef14df86c7a6e1" PARTUUID="31a074a3-300d-435b9b4ef"
/dev/sde1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="505855664557329830" TYPE="zfs_member" PARTLABEL="zfs-6326993c142e4a03" PARTUUID="37f4954d-67-fd-8945-8945"
/dev/sdg1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="1905592300789522892" TYPE="zfs_member" PARTLABEL="zfs-9d379d5bfd432a2b" PARTUUID="185eff00-196a-45dec203d"
/dev/sdi1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="15862525770363300383" TYPE="zfs_member" PARTLABEL="zfs-3c99aa22a45c59bf" PARTUUID="89f1600a-b58e-c56d-f8d18ad"
/dev/sdh1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="15292769945216849639" TYPE="zfs_member" PARTLABEL="zfs-ee9e1c9a5bde878c" PARTUUID="2e70d63b-00ba-f842d3d3d"
/dev/sdf1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="5773484836304595337" TYPE="zfs_member" PARTLABEL="zfs-ee40cf2140012e24" PARTUUID="e5cc3e2a-f7c9-d56e-d54"a
/dev/sdc1: LABEL="mmdata" UUID="16683979255455566941" UUID_SUB="6348126275544519230" TYPE="zfs_member" PARTLABEL="zfs-0d28f0d2715eaff8" PARTUUID="a328981a-7569-294-294"

สำหรับพูลข้างต้น เกิดอะไรขึ้น อุปกรณ์เครื่องหนึ่งก่อนหน้านี้ล้มเหลว ฉันต่อดิสก์สำรองเข้ากับคอนโทรลเลอร์ตัวที่สองและทำการเปลี่ยนใหม่ มันประสบความสำเร็จ สระว่ายน้ำก็โอเค ถัดไป อุปกรณ์ที่ล้มเหลวจะถูกลบออกจากพูลและแทนที่ด้วยดิสก์สำรอง (เปลี่ยนคอนโทรลเลอร์) หลังจากรีบูตเครื่อง ฉันพบว่าเครื่องอยู่ในสภาพเสื่อมโทรมโดยมีอุปกรณ์หนึ่งเครื่องรายงานว่าขาดหายไป สครับถูกเรียกใช้โดยคำสั่ง zpool clear

ดังที่แสดงจาก blkid มีดิสก์ 8 แผ่น พาร์ติชั่นทั้งหมดและติดป้าย (ฉันคิดว่า) ถูกต้อง แต่หนึ่งในอุปกรณ์ไม่ได้รับการยอมรับว่าเป็นส่วนหนึ่งของพูล จะทำอย่างไรในสถานการณ์เช่นนี้? มันน่ารำคาญมาก การกู้คืนพูลใช้เวลาหลายวัน

Score:3
ธง us

หากคุณเพิ่มอุปกรณ์ใด ๆ ลงในพูลโดยใช้ /dev/sdX เส้นทางอาจมีการเปลี่ยนแปลง เนื่องจากเคอร์เนลของ Linux ไม่รับประกันลำดับใดๆ สำหรับรายการไดรฟ์เหล่านั้น

ในผลลัพธ์ของคุณ คุณมี /dev/sdi ในฐานะสมาชิกของสระว่ายน้ำ สิ่งนี้สามารถเปลี่ยนแปลงได้ตลอดเวลา

คุณควรลอง zpool ส่งออก mmdata เพื่อให้อาร์เรย์ออฟไลน์ จากนั้น zpool นำเข้า mmdata -d /dev/disk/by-id เพื่อนำเข้าอีกครั้งโดยใช้ ID ถาวรสำหรับไดรฟ์

agatek avatar
us flag
ขอบคุณ. ฉันจะลองทำดู เหตุใดจึงติดป้ายกำกับ / uuids ดิสก์ / พาร์ติชันทั้งหมดและยังคงใช้ /dev/disk/by-id ฉันพยายามที่จะเข้าใจตรรกะ
us flag
ZFS ไม่ติดป้ายกำกับดิสก์ / พาร์ติชัน อย่างไรก็ตาม มันใช้ตัวระบุอุปกรณ์ที่ให้ไว้ระหว่าง `zpool create`
agatek avatar
us flag
นั่นคือประเด็นของฉันว่าทำไมมันถึงติดป้ายกำกับหากอาศัยการแมป /dev/disk/by-id เหตุใดจึงไม่สแกน uuids และฉลากและประกอบตามนี้ นอกจากนี้ สิ่งที่ระบุในข้อความแสดงข้อผิดพลาดอาจทำให้เข้าใจผิดได้ดีที่สุด: ไม่สามารถใช้อุปกรณ์อย่างน้อยหนึ่งเครื่องได้เนื่องจาก **ฉลากหายไปหรือไม่ถูกต้อง** ป้ายกำกับไม่ได้ขาดหายไปหรือไม่ถูกต้อง บางทีนี่อาจเป็นข้อบกพร่องบางอย่างและควรรายงานหรือไม่
agatek avatar
us flag
เทโร การส่งออก/นำเข้าพูลตามที่คุณแนะนำทำงานได้ดี ขอบคุณอีกครั้ง แต่ก่อนที่จะทำสิ่งนี้ ฉันส่งออกพูลและเพิ่งออกการนำเข้า zpool (no -d) สิ่งนี้แสดงรายการอุปกรณ์ทั้งหมดอย่างถูกต้อง ดังนั้นอุปกรณ์ที่ทำเครื่องหมายไว้ข้างต้นว่ามีข้อบกพร่องจึงมีรหัสประจำเครื่องที่ถูกต้องและไม่สูญหายอีกต่อไป ที่น่าสนใจคือ id ไม่เคยนำอุปกรณ์นี้เข้าสู่พูล (มันคือ /dev/sdX) ตอนนี้ อาจมีบางคนสันนิษฐานว่าการสแกนถูกต้อง แต่อุปกรณ์สุดท้าย (sdi) ยังคงเป็น sdi เฉพาะวิธีการของคุณที่ชี้ไปที่ไดเร็กทอรีเท่านั้นที่ได้รับอนุญาตให้แสดงรายการอุปกรณ์ทั้งหมดในพูลโดยใช้รหัสทางกายภาพ แปลก.

โพสต์คำตอบ

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