1 คะแนน โดย GN⁺ 2024-07-05 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เป็นการทดลองเปลี่ยนไดรฟ์เครือข่ายแบบเราเตอร์ OpenWRT รุ่นเก่าไปเป็น ชุด SBC+HDD เพื่อลดคอขวด โดยยังคงใช้ samba, git, rsyncd และ dnf repo ตามเดิม
  • Libre Computer AML-S805X-AC ให้บอร์ดราคา €20 พร้อม 4-core ARM Cortex-A53, RAM 1GB, บูตผ่าน USB และรองรับ Debian แต่ LAN รองรับแค่ 100Mb และ USB-A 2 พอร์ตยังเป็น USB 2.0
  • ต้นทุนรวมไม่รวม HDD อยู่ที่ราว €43 ซึ่งถือว่าต่ำ แต่ยังต้องมี HDD enclosure, อะแดปเตอร์จ่ายไฟ, สาย micro-USB และดองเกิล TTL-to-USB แบบเสริม
  • อิมเมจทางการที่อิง Debian 12 ใช้พาร์ทิชัน EFI ภายใน MBR และพาร์ทิชันรากแบบ btrfs โดยการขยายพาร์ทิชันอัตโนมัติในการบูตครั้งแรกทำงานกับ USB dongle ได้แบบ ไม่เสถียรและช้า
  • บน HDD enclosure ที่ใช้ JMicron JMS578 สามารถหลบข้อผิดพลาด UAS จนไม่มีอาการหน่วงได้ แต่ความเร็วบน ext4 อยู่ที่ราว 23.95MB/s จึงแนะนำได้ยาก หากไม่มีเหตุผลหนักแน่นอย่างการประหยัดพลังงาน

เปลี่ยนจากเราเตอร์ OpenWRT เป็น SBC NAS

  • อุปกรณ์เดิมคือเราเตอร์เก่าที่ต่อ HDD ไว้ และหลังติดตั้ง OpenWRT ก็ใช้งานเป็น ไดรฟ์เครือข่าย ไม่ใช่เราเตอร์
  • อุปกรณ์ใหม่ต้องทำงานได้เร็วขึ้น โดยยังคงใช้ samba, git, rsyncd และ dnf repo เหมือนเดิม
    • เราเตอร์ตัวเดิม CPU อ่อน ทำให้ rsync over SSH ทำงานหนักเกินไป
    • RAM ไม่พอ จึงติดปัญหากับ git push commit ที่มีไบนารีขนาดเกิน 15MB
  • ตัวเลือกที่ถูกพิจารณาคือบอร์ด AML-S805X-AC ของ Libre Computer
    • มีพอร์ต LAN แต่รองรับได้แค่ 100Mb
    • พอร์ต USB-A 2 พอร์ตรองรับเพียง USB 2.0
    • มี 4-core ARM Cortex-A53, RAM 1GB, บูตผ่าน USB และรองรับ Debian รุ่นใหม่
    • หาซื้อได้โดยไม่ต้องลำบากจัดหาพิเศษ

สเปกเครือข่ายที่ต่ำกับการใช้งานจริง

  • เครือข่าย 100Mb ถือว่าสเปกต่ำในปัจจุบัน แต่การใช้งานหลักคือเก็บสำเนาไดเรกทอรีที่มีไฟล์เล็กประมาณ 200,000 ไฟล์
  • แม้ SBC จะรองรับ USB 3.0 แต่ก็มองว่าเครือข่าย 1Gb คงไม่ได้เพิ่มความเร็วการซิงก์อย่างมีนัยสำคัญ
  • การประกอบ NAS ไม่ได้จบแค่ตัวบอร์ด จึงต้องมีชิ้นส่วนเพิ่ม
    • พอร์ต USB-A ของบอร์ดจ่ายไฟได้สูงสุด 900mA ต่อพอร์ต
    • ต้องใช้ HDD enclosure ที่มีไฟเลี้ยงภายนอก
    • ต้องมีอะแดปเตอร์จ่ายไฟอย่างน้อย 3A และสาย micro-USB ที่รองรับ 3A ได้

ชุดราคา €43 และการประกอบจริง

  • ต้นทุนรวมไม่รวม HDD อยู่ที่ €43
    • SBC: €20
    • HDD enclosure: €12
    • อะแดปเตอร์จ่ายไฟ 3A: €5
    • สาย micro-USB: €3
    • สกรู 4 ตัวและน็อต 12 ตัว: €0
    • ดองเกิล TTL-to-USB: €3 โดยเป็นอุปกรณ์เสริมเพราะบอร์ดมี HDMI output
  • ไม่ได้นำราคา HDD มาคิด โดยคำนวณบนสมมติฐานว่ามี HDD สำรองอยู่แล้ว
  • ตอนซื้อเข้าใจผิดว่า HDD enclosure เป็นเคสพลาสติกเล็กสำหรับ 2.5 นิ้ว แต่จริง ๆ แล้วเป็น กล่องสำหรับ 3.5 นิ้ว
  • เพราะในกล่องมีพื้นที่ จึงตัดสินใจใส่ SBC ไว้ใน HDD enclosure เดียวกันด้วย

การบูตและจุดขรุขระของอิมเมจ Debian

  • เชื่อมต่อดองเกิล TTL-to-USB เข้ากับ GPIO ของบอร์ด แล้วเข้าใช้งานผ่าน screen
$ sudo screen /dev/ttyUSB0 115200
  • เอาต์พุตเริ่มต้นแสดง Libre Computer AML-S805X-AC, Amlogic Meson GXL และ DRAM: 512 MiB (effective 1 GiB)
    • หลังจากนั้นเมื่อเขียนอิมเมจ Debian 12 ลงแฟลชไดรฟ์ด้วย dd แล้ว free(1) ก็ตรวจพบ 1GB
  • อิมเมจ OS ทางการของ Libre Computer อิงจาก Debian มาตรฐาน
    • ดิสก์อิมเมจมีขนาด 2.25GiB
    • มีพาร์ทิชัน EFI อยู่ภายในเลย์เอาต์แบบ MBR
    • พาร์ทิชันที่สองเป็น btrfs และจะขยายอัตโนมัติเพื่อใช้พื้นที่ที่เหลือทั้งหมดในการบูตครั้งแรก
  • การขยายอัตโนมัติกับ USB dongle ไม่เสถียร
    • จาก USB dongle ที่มีอยู่ 3 ตัว มีตัวหนึ่งค้างระหว่างขยายพาร์ทิชันแบบถาวร
    • อีกตัวทำงานเสร็จ แต่หลังจากนั้นช้าผิดปกติอย่างมาก
  • อีกปัญหาคือไม่มีการเปิดเผยรีโพซิทอรีที่ใช้สร้างอิมเมจ OS
    • คำอธิบายที่เกี่ยวข้อง ระบุว่า distribution builder เป็นข้อเสนอเชิงพาณิชย์แบบ proprietary ที่รวม customer IP และ integration จึงเปิดเผยไม่ได้
    • ยังมีคำแนะนำด้วยว่า เนื่องจากมีการเปลี่ยนแปลงจากดิสทริบิวชันมาตรฐานนอกเหนือจากการตั้งค่าเพียงเล็กน้อย หากต้องการวิเคราะห์อิมเมจก็ควร bootstrap แล้วดู diff

ข้อผิดพลาดของ HDD enclosure และประสิทธิภาพสุดท้าย

  • หลังต่อ HDD enclosure เข้ากับบอร์ดแล้ว กระบวนการโดยรวมเร็วกว่า USB dongle มาก แต่ก็ยังมีอาการหน่วงแบบไม่คาดคิดเป็นช่วง ๆ
  • ทันทีหลังล็อกอิน เคอร์เนลแสดงข้อผิดพลาด uas_eh_abort_handler
  • ผลลัพธ์ lsusb แสดงว่าอุปกรณ์ภายใน enclosure คือ JMicron JMS578 SATA 6Gb/s
Bus 001 Device 002: ID 152d:0578 JMicron Technology Corp. / JMicron USA Technology Corp. JMS578 SATA 6Gb/s
  • วิธีแก้คือเพิ่ม usb-storage.quirks=152d:0578:u ใน kernel command line เพื่อ ปิด UAS
    • หลังทำเช่นนี้ อาการหน่วงก็หายไป
    • แต่ตัวเลข benchmark ก็ไม่ได้น่าประทับใจ
  • บนการเชื่อมต่อ USB 2.0 การเขียนข้อมูล 524MB ด้วย dd รวม sync ได้ผลเป็น real 0m21.876s
    • คิดเป็นความเร็วบนพาร์ทิชัน ext4 ราว 23.95MB/s
  • สุดท้ายแล้วการจัดชุดนี้แนะนำได้ยาก
    • เหตุผลหนึ่งที่เลือก SBC คือหวังลดการใช้พลังงาน
    • หากไม่มีข้อจำกัดคล้ายกัน ก็แทบไม่มีเหตุผลให้ต้องไปลำบากกับอุปกรณ์ราคาถูกที่จุกจิกแบบนี้

1 ความคิดเห็น

 
GN⁺ 2024-07-05
ความคิดเห็นจาก Hacker News
  • เคล็ดลับลับคือ เดสก์ท็อป/NUC PC รุ่นเก่าของ Fujitsu ในเยอรมนี บริษัทจำนวนมากเปลี่ยนเครื่องเป็นประจำ ทำให้ของมือสองบน eBay ราคาถูก
    ถ้าการใช้พลังงานสำคัญ ให้ค้นหาด้วย "$model energy consumption white paper" ก็จะเจอข้อมูลที่ค่อนข้างแม่นยำอย่างการกินไฟตอน idle ตัวอย่างคือ https://sp.ts.fujitsu.com/dmsp/Publications/public/wp-energy...
    NUC เครื่องหนึ่ง ใน PDF ระบุไว้ว่า 9W แต่หลังจากเปิดฟีเจอร์ประหยัดพลังงานของคอนโทรลเลอร์ SATA บน Linux แล้ว ไฟตอน idle ลดลงไปถึง 5W
    การใช้ PC จริงแทนคอมพิวเตอร์บอร์ดเดี่ยวแบบสุ่ม ๆ ให้การเชื่อมต่อ ความสามารถในการขยาย และการรองรับซอฟต์แวร์ดีกว่ามาก และคอมพิวเตอร์บอร์ดเดี่ยวส่วนใหญ่ถูกผูกกับเคอร์เนลที่หยาบ ๆ ตั้งแต่ตอนเปิดตัว ต้องเอา fork ของ Armbian ที่ผู้ผลิตปล่อยทิ้งไว้ มาผสมกับเคอร์เนลเก่า ๆ แล้วจัดให้ดูเหมือนดิสโทรรุ่นใหม่

    • Parkytowers เป็นไซต์ที่รวบรวมข้อมูลเกี่ยวกับ การนำ thin client กลับมาใช้ใหม่ หลายชนิด จึงเหมือนขุมทองสำหรับหาข้อมูลการใช้พลังงาน ความเข้ากันได้กับ Linux และการดัดแปลงฮาร์ดแวร์ที่เป็นไปได้: https://www.parkytowers.me.uk/thin/hware/hardware.shtml
    • ถ้าข้อมูลนี้แพร่หลายเกินไป ราคาตลาดมือสองอาจสูงขึ้น และอาจทำให้คนที่เล็ง PC ราคาถูกสุด ๆ เสียประโยชน์
      แปลกดีที่ทรัพยากรคอมพิวต์ราคาถูกนั้นปฏิเสธได้ยาก
    • ซื้อ thin client ของ Lenovo มาประมาณ 200 ดอลลาร์ แล้วใช้เป็นโฮมเซิร์ฟเวอร์ Debian ซึ่งเหมาะกับแทบทุกงาน และคุ้มค่ากว่า Raspberry Pi หรือมินิ PC ใหม่มาก
      ข้อเสียมีแค่ว่าไม่มีพื้นที่ใส่ดิสก์ 2.5/3.5 นิ้วหลายลูก แต่นั่นก็เกือบจะเป็นเรื่องความชอบส่วนตัว
    • ในออสเตรเลีย มี Dell 7060 SFF และ 7060 Micro PC ที่หมดสัญญาเช่าหลายพันเครื่องขึ้นเว็บประมูลทุกสัปดาห์
      Dell ที่กำลังหลุดจากสัญญาเช่าตอนนี้ยังมีฟีเจอร์สมัยใหม่อย่าง CPU Intel เจน 8, TPM และ USB-C ด้วย
    • เคยได้ยินคำแนะนำแบบเดียวกันสำหรับ SFF PC ของ Dell/HP เช่นกัน อนึ่ง ลิงก์ต้องล็อกอินด้วยชื่อผู้ใช้/รหัสผ่าน
  • การพยายามทำ NAS แบบ Raspberry Pi โดยเฉพาะถ้าต้องใช้อะแดปเตอร์ไฟหลายตัวและเฉือนเคสออก ทำให้รู้สึกน่าสงสัย ทั้งหมดดูต้องลงแรงมากและช้า แต่ก็ไม่ได้ “ถูกขนาดนั้น”
    การเก็บข้อมูลส่วนตัวสำคัญไว้บนไดรฟ์ USB ก็รู้สึกเสี่ยงอยู่บ้าง คงไม่ถึงกับทำบ้านไหม้ แต่ก็ยังรู้สึกไม่สบายใจ
    ข้อดีจริง ๆ คือฟอร์มแฟกเตอร์เล็กและการใช้พลังงานที่ “ต่ำ” แต่ต่อให้ทั้งชุดราคา 43 ดอลลาร์ ก็ทำให้ต้องคิดว่าจะยอมทนเครือข่าย 100Mbit เพื่อประหยัดไม่กี่ดอลลาร์ หรือจ่าย 150 ดอลลาร์เพื่อใช้ 2.5Gig ดี
    ทางเลือกมีมากมาย เช่น Fujitsu Futro S920 (มือสองต่ำกว่า 75 ดอลลาร์, ประมาณ 10W), FriendlyElec NanoPI R6C (ต่ำกว่า 150 ดอลลาร์, ประมาณ 2W, https://www.friendlyelec.com/index.php?route=product/product...), FriendlyElec Nas Kit (ต่ำกว่า 150 ดอลลาร์, ประมาณ 5W, https://www.friendlyelec.com/index.php?route=product/product...), Dell T20/T30 (มือสองต่ำกว่า 100 ดอลลาร์, ประมาณ 25W), Fujitsu Celsius W570 (มือสองต่ำกว่า 100 ดอลลาร์, ประมาณ 15W)
    NAS/โฮมเซิร์ฟเวอร์ส่วนตัวของผมใช้ Fujitsu D3417-B, Intel Xeon 1225v5, RAM ECC 64GB, WD SN850x 2TB NVMe, Pico PSU 120 ซึ่งแพงกว่า แต่เสถียรและแรงกว่า และกินไฟตอน idle ต่ำกว่า 10W

    • นี่เหมือนเอาแอปเปิลไปเทียบกับส้ม คอมพิวเตอร์บอร์ดเดี่ยวที่ผู้เขียนใช้กินไฟ 0.75W ตอน idle และ 4W ที่โหลดสูงสุด
  • ตอนทุกอย่างทำงานได้ดี ทุกคนก็เป็นผู้เชี่ยวชาญด้านสตอเรจ พอมีอะไรเสียขึ้นมา ก็จะรู้สึกว่าน่าจะใส่ฮาร์ดดิสก์เพิ่มอีกลูกในอาร์เรย์ RAID น่าจะมี NAS สำรองอีกตัว หรือมีไซต์ภายนอกอีกแห่งสำหรับส่งข้อมูลไปไว้
    ตอนนี้ไม่ไปทางของถูกแล้ว แต่ก็เข้าใจว่ามันมีเสน่ห์

    • เรื่องพวกนี้ทั้งหมดเป็นปัญหาเรื่อง กลยุทธ์ ดังนั้นระดับราคาของอุปกรณ์ไม่ได้มีผล
      ถ้าต้องการดิสก์เพิ่ม ก็ซื้อเพิ่ม ถ้าต้องการ NAS สำรอง ก็ซื้ออีกตัว ถ้าต้องการสำเนาแบบ offsite ก็ซื้อพื้นที่ หรือซื้อ NAS กับดิสก์สำหรับสถานที่ภายนอก
      ระดับราคาของอุปกรณ์ไม่ได้เปลี่ยนอะไรในเรื่องนี้
    • ขึ้นอยู่กับว่าจะเก็บอะไร
      ถ้าเป็นเอกสารงาน บันทึกบัญชี หรือรูปครอบครัว ก็คงอยากเก็บให้ปลอดภัย
      แต่ถ้า NAS มีแค่หนังและรายการทีวีละเมิดลิขสิทธิ์ขนาด 20TB การซื้อไดรฟ์ที่ถูกที่สุดแล้วดูว่าจะเป็นอย่างไรก็สบายใจกว่ามาก
    • เด็กสมัยนี้ไม่รู้เลยว่าไดรฟ์ยุคก่อนเสียบ่อยแค่ไหน
    • ซิงก์ไดรฟ์ภายนอกเดี่ยว ๆ หลายลูกผ่าน USB แบบเก่าทุก 1–2 สัปดาห์ เป็น sneakernet ภายในบ้าน
      ใช้เครื่องมืออย่าง Freefilesync ก็ง่ายและเร็ว และยังมองเห็นการลบโดยไม่ตั้งใจได้ด้วยตา
      ถูกมาก และใช้งานได้ดีมากว่า 10 ปีแล้ว เคยเจอไดรฟ์เสีย ความผิดพลาดของผู้ใช้ และข้อมูลสูญหายจากบั๊ก/ข้อผิดพลาดของซอฟต์แวร์ที่ไม่ตั้งใจ แต่ก็ไม่มีปัญหา
    • งั้นก็ซื้อของถูก 2 ชุด ก็พอ ยังไงก็ต้องมีแบ็กอัปอยู่แล้ว
  • ถ้าตั้งค่า NAS แบบนี้แล้ว อยากรู้ว่าจะเข้าถึงไฟล์อย่างไร ใช้ NFS หรือ SFTP?
    แล้วเวลาอยู่นอกบ้านจะเข้าถึงอย่างไร ก็อยากรู้เหมือนกัน ใช้ VPN ที่เชื่อมต่อไว้ตลอด หรือมีวิธีทำ NAT hole punching ให้ดีหรือไม่?
    Syncthing คล้ายกับสิ่งที่ต้องการตรงที่ทำให้คอมพิวเตอร์ทุกเครื่องซิงก์ไฟล์เดียวกันได้ไม่ว่าจะอยู่ในเครือข่ายใด แต่จะพยายามคัดลอกไฟล์ทั้งหมดอยู่เสมอ สิ่งที่ต้องการคือเก็บไฟล์ไว้แค่บน NAS แล้วเข้าถึงได้จากทุกที่
    Nextcloud ก็คล้ายกับสิ่งที่ต้องการ แต่ตอนที่เคยใช้ก่อนหน้านี้ดูไม่เสถียรและไม่น่าเชื่อถือ อีกทั้งดูเหมือนทำฟีเจอร์ที่ไม่จำเป็นมากเกินไป

    • ตอบตามลำดับนะ บน NAS ของผมใช้ NFS และ SMB เพื่อครอบคลุมไคลเอนต์ส่วนใหญ่
      การเข้าถึงจากระยะไกลใช้ SSH bastion ที่เปิดผ่าน Tailscale ถึงจะเป็น VPN แต่เพราะใช้ WireGuard เป็นฐาน เลยไม่ได้รบกวนมากนัก อย่างไรก็ตาม อัปโหลดเป็นกิกะบิต ดังนั้นอาจแตกต่างกันไปตามสภาพแวดล้อม
      NAS มีพื้นที่ 28TB และยังคิดเรื่องกลยุทธ์สำรองข้อมูลอยู่ ตอนนี้มีแค่ Dropbox กับไฟล์จิปาถะที่หายไปก็ไม่เป็นไร
      บริการอื่น ๆ ก็ใช้ Dropbox ค่อนข้างเยอะ แต่สมัยนี้ 2TB ไม่ได้ใหญ่อะไรนักแล้ว แถมไฟล์เกิน 500,000 ไฟล์ เลยค่อนข้างจุกจิกด้วย
      นี่เป็นการตั้งค่าส่วนตัว และน่าจะแตกต่างกันมากตามแต่ละคน
    • Synology ทำทั้งหมดนั้นให้ได้
      ผมใช้สองเครื่อง เครื่องหนึ่งที่บ้าน อีกเครื่องที่ออฟฟิศ ข้อเสียเดียวคือมัน “กันคนทำพลาด” มากไปหน่อย แต่ GUI บนเว็บก็ยอดเยี่ยม
      มีซอฟต์แวร์ฟรีที่ช่วยทะลุ NAT และ IP แบบไดนามิกด้วย และทำงานได้ดี (quickconnect.to) ใช้หลัก ๆ เป็น SFTP และ media server
    • ใช้ Syncthing ซิงก์ชุดข้อมูลขนาดเล็กระหว่างแล็ปท็อป โทรศัพท์ และ NAS งานผลิตและงานสร้างสรรค์ส่วนใหญ่ครอบคลุมได้ด้วยสิ่งนี้
      ใน LAN ก็ใช้แค่ SMB ซึ่งพอสำหรับความต้องการของผม
      เวลาเข้าถึงคอลเล็กชัน Linux ISO จากระยะไกล ผมใช้ Plex
    • โดยปกติใน LAN ใช้แค่ SMB share สำหรับความต้องการเล็ก ๆ น้อย ๆ ของผมก็เพียงพอแล้ว
      เมื่อก่อนเคยใช้ WebDAV หรือ FTP ด้วย ขึ้นอยู่กับ use case ที่เฉพาะเจาะจง
      ถ้าอยู่นอกบ้าน VPN เป็นสิ่งจำเป็น สมัยนี้การเปิดแค่ port forwarding ไว้เสี่ยงเกินไป
    • ทางออกง่าย ๆ สำหรับส่วน VPN คือ Zerotier หรือ Tailscale ถ้าจำไม่ผิด Zerotier ใช้ chacha20 สำหรับการเข้ารหัส จึงเร็วกว่า AES และเป็นประโยชน์เป็นพิเศษกับคอมพิวเตอร์บอร์ดเดี่ยวที่พลังงานค่อนข้างจำกัด
  • ตรงที่บอกว่าต้องเพิ่ม usb-storage.quirks=152d:0578:u ลงใน command line ของเคอร์เนลเพื่อปิด UAS ถ้าเป็นผมคงโยนลงถังขยะแล้วล้มเลิกไปแล้ว
    ไม่รู้ว่าผู้คนมีความอดทนในการดีบักปัญหาแบบนี้จนจบได้อย่างไร เข้าใจว่าเป้าหมายของโปรเจกต์นี้คือทำให้ถูกและเรียบง่าย แต่ต้นทุนด้านเวลานั้นแพง และมันไม่เรียบง่ายเลย

  • image builder ของบอร์ดนี้ดูน่าสงสัยมาก
    คำอธิบายที่ว่า “ตัวสร้างดิสโทรเป็นข้อเสนอเชิงพาณิชย์แบบกรรมสิทธิ์ที่เปิดเผยไม่ได้ เพราะมี IP ของลูกค้าและการผสานรวมจำนวนมาก” ฟังดูเหมือนเครื่องมือสำหรับฝังอะไรเข้า supply chain

    • หลังจากอ่านลิงก์ https://hub.libre.computer/t/source-code-git-repository-for-... แล้ว ความประทับใจต่อ Libre Computer แย่ลงมาก
      การมี UEFI ทำให้ใช้ image ทั่วไปได้เลยนั้นเป็นข้อดีใหญ่ แต่การทำ image พื้นฐาน และโดยเฉพาะ firmware ให้เป็น กระบวนการแบบกรรมสิทธิ์ เป็นสัญญาณอันตรายที่ใหญ่มาก จนทำให้ทุกอย่างดูน่าสงสัย
      ถ้า firmware เป็นซอฟต์แวร์เสรี/โอเพนซอร์ส และสามารถ build เองได้จากอินพุตที่เป็นเสรี/โอเพนซอร์สเท่านั้น ก็คงพอรับได้ แต่จากการสนทนานั้นอย่างเดียว ยังไม่ชัดเจน
      การรองรับ image ทั่วไปได้ด้วย UEFI เป็นข้อดีใหญ่ แต่ความจริงที่ว่านั่นไม่ใช่ค่าเริ่มต้นทำให้สงสัยค่านิยมและวัฒนธรรมของบริษัท
    • นี่เป็นอีกเหตุผลหนึ่งที่ควรหลีกเลี่ยง cargo cult ที่เลียนแบบ “NAS” สำหรับใช้ในบ้าน แค่ใส่ดิสก์เข้าไปในคอมพิวเตอร์ก็พอแล้ว
  • อาจเป็นคำถามโง่ ๆ แต่สงสัยว่าทำไมถึงสร้างเซิร์ฟเวอร์ NAS โดยไม่มี หน่วยความจำ ECC

    • เพราะ non-ECC ถูกกว่า นึกเหตุผลอื่นไม่ออก คำอธิบายอื่นนอกจากนั้นคงเป็นคำโกหกเพื่อกลบว่าต้องการทำให้ถูก
    • เพราะ NAS แทบไม่ได้ทำอะไรเลย ไม่ได้ใส่ RAM 4TB แล้วรันฐานข้อมูลหลายตัว
      แม้แต่ในเซิร์ฟเวอร์องค์กร ก็ยังถกเถียงกันได้ว่า ECC จำเป็นจริงหรือไม่
  • ค่อนข้างเจ๋ง ดูเหมาะกับ use case นั้นดี ถ้าเป็นผมคงจ่ายเพิ่มอีกหน่อยแล้วเลือกตัวที่มี พอร์ต gigabit
    ดูจากวิดีโอของ Jeff Geerling แล้ว แม้แต่คอมพิวเตอร์บอร์ดเดี่ยวขนาดเล็กแบบนี้ก็ดูเหมือนจะทำ NAS ที่ประสิทธิภาพค่อนข้างดีได้

    • ถ้าเป็นคอมพิวเตอร์บอร์ดเดี่ยว Arm รุ่นใหม่ ๆ โดยเฉพาะถ้าจะรันแค่ NAS จริง ๆ ก็เพียงพอมาก
      ถ้าเป็น Pi 4 หรือ Pi 5 หรือบอร์ด Rockchip ที่ใช้ RK3566 หรือ RK3588 ก็สามารถต่อฮาร์ดดิสก์/SSD ผ่าน USB หรือทุกวันนี้ส่วนใหญ่เพิ่มไดรฟ์ M.2 หรืออะแดปเตอร์ฮาร์ดดิสก์/SSD แบบ SATA ได้ สามารถรัน RAID ได้โดยไม่มีปัญหาใหญ่ที่ 1Gbps และบางครั้งที่ 2.5Gbps
      บางคนใช้ OpenMediaVault ซึ่งก็โอเค ส่วน NAS ของผมตั้งค่าเป็น Ansible + ZFS บน bare Debian และสำหรับผมวิธีนั้นจัดการง่ายกว่า: https://github.com/geerlingguy/arm-nas
      ถ้าไม่เลือก Raspberry Pi ผมน่าจะเลือก Radxa หรือ Libre Computer ทั้งคู่มี image สำหรับบอร์ดรุ่นใหม่ ๆ ที่ใช้ได้ดี แต่แทบจะเจอปัญหา HDMI output เสมอ จึงควรเตรียมตั้งค่าผ่าน SSH หรือ serial console ไว้
  • เช่นเดียวกับเนื้อหาอื่น ๆ ในเธรดนี้ ความคุ้มค่าของ พีซีสำนักงาน SFF รีเฟอร์บิชที่ออกมาขายในตลาดมือสองนั้นสูงมากจริง ๆ
    ก่อนหน้านี้ผมเคยซื้อเครื่องตระกูล HP ultradesk ได้ในราคาถูกมาก แต่พอได้รับมากลับไม่ใช่มือสอง หากเป็นสต็อกคงเหลือที่ยังเป็นของใหม่ และราคาอยู่ราว 20% ของราคาขายปลีก เงียบมากและประหยัดพลังงานยอดเยี่ยมด้วย
    CPU ไม่ได้เป็นรุ่นท็อปสุด แต่เป็นเจน 10 หรือ 11 จึงเหมาะสมอย่างยิ่งสำหรับการเข้ารหัสวิดีโอด้วยฮาร์ดแวร์สำหรับมีเดียเซิร์ฟเวอร์
    แม้จะไม่ได้มีฮาร์ดแวร์ครบสำหรับ RAID และฮาร์ดดิสก์หลายลูก แต่แค่ดิสก์บูต NVMe หนึ่งลูกกับฮาร์ดดิสก์ 16TB หนึ่งลูกก็เพียงพอสำหรับความต้องการของผมแล้ว เป็นไฟล์สื่อ จึงไม่กังวลหากสูญหาย
    กล่องแบบนี้ราคาถูก จึงสามารถมีหลายเครื่องที่รับหน้าที่ต่างกันภายใต้ “deployment” เดียวกันได้ ช่วงหนึ่งผมเคยแยกกล่องสำหรับ NAS, มีเดียเซิร์ฟเวอร์, กล้อง CCTV IP และ homeassistant ไว้คนละเครื่อง และทั้งหมดก็ทำงานได้ดี
    โชคดีที่ผมไม่ได้มาโซคิสต์ถึงขั้นลองใช้ Kubernetes หรืออะไรทำนองนั้นเพื่อออร์เคสเตรตอุปกรณ์หลายตัวร่วมกัน
    แน่นอนว่านี่พูดในบริบทของโฮมแล็บ/การใช้งานส่วนตัว ไม่แนะนำสำหรับงานที่จริงจังกว่านั้น แต่เครื่องพวกนี้ใช้งานได้ดีแบบไม่ต้องคิดมาก และเพราะเป็นพีซี x86 มาตรฐาน จึงช่วยลดปัญหาการตั้งค่าฮาร์ดแวร์และความเข้ากันได้ที่มักเจอบนแพลตฟอร์มเฉพาะทางมากกว่าได้มาก

    • อุปกรณ์ ไดรฟ์เดี่ยว 2 เครื่อง ที่แต่ละเครื่องมีสำเนาข้อมูลของตัวเอง น่าจะดีกว่า RAID 1 ชุดเดียว
  • น่าขันที่เรียกตัวเองว่า Libre Computer แต่กลับไม่เปิดเครื่องมือให้ผู้ใช้สร้างอิมเมจของตัวเองได้