- MinIO ที่เป็น ระบบจัดเก็บข้อมูลแบบอ็อบเจกต์ที่เข้ากันได้กับ S3 และมีประสิทธิภาพสูง ได้เปลี่ยนเป็น โหมดบำรุงรักษาเฉพาะ ในปัจจุบัน
- การเพิ่มฟีเจอร์ใหม่หรือการ รับ Pull Request จะหยุดชั่วคราว และการตรวจทาน issue เดิมก็ถูกหยุดด้วย
- การแก้ไข ช่องโหว่ด้านความปลอดภัย จะถูกพิจารณาเฉพาะในบางกรณี
- การสนับสนุนชุมชนยังคงให้เฉพาะรูปแบบขั้นต่ำผ่าน ** ช่องทาง Slack** เท่านั้น
- หากต้องการการสนับสนุนเชิงพาณิชย์และการบำรุงรักษาเชิงรุก แนะนำให้ใช้ผลิตภัณฑ์ MinIO AIStor
ประกาศโหมดบำรุงรักษา
- โปรเจกต์ MinIO ตอนนี้เปลี่ยนเป็น สถานะการบำรุงรักษาเฉพาะ และไม่รับการเปลี่ยนแปลงใหม่
- ฟีเจอร์ใหม่ การปรับปรุง และ Pull Request จะไม่ได้รับการยอมรับอีกต่อไป
- issue และ PR เดิมจะไม่ถูกพิจารณาอย่างแข็งขัน
- การแก้ไขที่สำคัญเกี่ยวกับความปลอดภัย อาจถูกทบทวนเป็นรายกรณี
- การสนับสนุนชุมชนมีให้ผ่าน Slack ในระดับขั้นต่ำ
- ผู้ใช้ที่ต้องการการสนับสนุนเชิงพาณิชย์ควรใช้ผลิตภัณฑ์ MinIO AIStor
ภาพรวม MinIO
- MinIO คือ ระบบจัดเก็บข้อมูลแบบอ็อบเจกต์ที่เข้ากันได้กับ S3 API และมีประสิทธิภาพสูง ซึ่งปรับให้เหมาะสมกับ AI/ML การวิเคราะห์ และงานข้อมูลขนาดใหญ่
- เผยแพร่ภายใต้ GNU AGPL v3.0 และออกแบบเป็นโปรเจกต์สำหรับชุมชนโอเพ่นซอร์ส
- ความเข้ากันได้กับ S3 API, การปรับแต่งสำหรับ AI/การวิเคราะห์, และ การประมวลผลที่มีประสิทธิภาพสูง เป็นคุณสมบัติเด่นหลัก
- สามารถคอมไพล์จากซอร์สได้โดยตรงและปรับใช้ในสภาพแวดล้อม bare-metal
นโยบายโอเพ่นซอร์สและใบอนุญาต
- MinIO สามารถแก้ไขและเผยแพร่ซ้ำได้อย่างเสรีตาม ใบอนุญาต AGPLv3
- อย่างไรก็ตาม ต้องปฏิบัติตามข้อกำหนด AGPLv3 เช่น ความจำเป็นในการเปิดเผยโค้ดที่แก้ไข
- การใช้งานเชิงพาณิชย์หรือการใช้งานแบบจำเพาะต้องอยู่ภายใต้ความรับผิดชอบของผู้ใช้เอง และไม่มีการรับประกันหรือหน้าที่ดูแลรักษา
- การสนับสนุนชุมชนมีให้ผ่าน GitHub และ Slack แบบ best-effort
- MinIO AIStor ให้การสนับสนุนระดับองค์กรและการรับประกัน SLA สำหรับสภาพแวดล้อมเชิงพาณิชย์
การจัดจำหน่ายและวิธีติดตั้ง
- Community Edition ของ MinIO จัดจำหน่ายเฉพาะในรูปแบบซอร์สโค้ดเท่านั้น และ ไม่จัดจำหน่ายไบนารีที่คอมไพล์ไว้ล่วงหน้าอีกต่อไป
- วิธีการติดตั้ง
- ติดตั้งจากซอร์สด้วยคำสั่ง
go install github.com/minio/minio@latest
- สร้าง Docker image โดยตรงด้วย Dockerfile ที่จัดเตรียมไว้
- ไบนารีที่ปล่อยออกเดิมคงไว้เพื่อการอ้างอิงเท่านั้น และ จะไม่อัปเดต
การคอมไพล์และรันจากซอร์ส
- ในสภาพแวดล้อม Go 1.24 ขึ้นไป ใช้คำสั่ง
go install เพื่อ คอมไพล์และรัน MinIO server ได้
- ข้อมูลรับรอง root เริ่มต้นคือ
minioadmin:minioadmin
- ผ่าน MinIO Console แบบเว็บ สามารถสร้างบัคเก็ต อัปโหลดอ็อบเจกต์ และเรียกดูได้
- เครื่องมือ CLI MinIO Client(mc) ช่วยเชื่อมต่อและจัดการเซิร์ฟเวอร์ได้
- เมื่อใช้ไบนารีที่คอมไพล์จากซอร์ส AGPLv3 ไม่ได้ให้การรับประกันหรือรับผิดชอบใดๆ
การจัดจำหน่ายด้วย Docker และ Kubernetes
- สร้าง Docker image ในเครื่องได้ด้วยคำสั่ง
docker build .
- เมื่อรันเซิร์ฟเวอร์ด้วย
docker run สามารถกำหนดการแมปพอร์ตและที่อยู่คอนโซลได้
- ใน Kubernetes
- สามารถปรับใช้ผ่าน MinIO Operator หรือ Helm Chart
- เอกสารที่เกี่ยวข้องมีให้บนเว็บไซต์เอกสารอย่างเป็นทางการของ MinIO
2 ความคิดเห็น
MinIO ยุติการแจกจ่ายอิมเมจ Docker ฟรี
Garage - โอเพนซอร์สระบบจัดเก็บอ็อบเจ็กต์แบบกระจายที่เข้ากันได้กับ S3
ความคิดเห็นจาก Hacker News
ขอบคุณต่อการมีส่วนร่วมของทีม MinIO, RustFS และ Garage
แม้ MinIO จะประกาศ ยุติโอเพนซอร์ส อย่างกะทันหันจนชุมชนตกใจ แต่ก็คิดว่าในท้ายที่สุดเส้นทางไปสู่การสร้างรายได้ก็เป็นสิ่งจำเป็น
เมื่อเทียบ RustFS กับ Garage, Garage ออกรุ่นช้ากว่า แต่ RustFS อัปเดตแทบทุกสัปดาห์
เรื่องไลเซนส์นั้น Garage ใช้ AGPLv3 ส่วน RustFS ใช้ Apache License จึงเอื้อต่อการนำไปใช้ในองค์กร
ด้านเสถียรภาพ Garage ดูดีกว่าเล็กน้อยในสภาพแวดล้อมแบบกระจาย
ในเมื่อ MinIO ถอนตัวจากการแข่งขัน OSS ไปโดยพฤตินัยแล้ว RustFS ก็น่าจะขึ้นมานำได้
แนะนำ SeaweedFS
แม้ยังไม่เคยใช้เอง แต่สำหรับคนที่ต้องการรันเซิร์ฟเวอร์เอง ก็น่าจะเป็น ทางเลือกแทน MinIO ที่ใช้ได้
ตอนที่เคยดูเมื่อก่อนมี การแก้บั๊ก เยอะเกินไปจนไม่น่าเชื่อถือ
MinIO เอาฟีเจอร์ออกจากเวอร์ชันโอเพนซอร์สมาเรื่อย ๆ
ทางเลือกที่ใกล้เคียงที่สุดน่าจะเป็น RustFS
กำลังรอให้รองรับ site replication แล้วค่อยย้าย
RustFS ก็น่าสนใจ แต่ตอนแรกเกือบปิดหน้าเว็บไปเพราะ ข้อความการตลาดที่มากเกินไป บนโฮมเพจ
GitHub repository อยู่ ที่นี่
ล่าสุด
deleteObjectใช้งานไม่ได้ เลยตัดออกจาก test matrixเองก็ระบุไว้อย่างเป็นทางการว่ายังไม่พร้อมสำหรับ production
ส่วน Garage ดูโอเค
แต่ โหมดกระจาย ยังไม่เสร็จสมบูรณ์ และ bucket replication กับ lifecycle policy ก็ยังอยู่ระหว่างพัฒนา
ก่อน deploy ในสเกลใหญ่ควรเช็ก roadmap ให้ดี
ไม่ได้เปิด commit ให้คนนอก และสุดท้ายก็ละทิ้งโอเพนซอร์ส
ฉันกำลังพัฒนา HS5 ไปในทิศทางคล้ายกับเป้าหมายช่วงแรกของ MinIO
แกนหลักเสถียรแล้ว แต่ การจัดการผู้ใช้และเว็บ UI ยังทำอยู่
ถ้ามีความรู้ทางกฎหมายก็คงอยากฟ้อง MinIO เลย
เสียเวลาไปมากกับการตั้งค่า SeaweedFS ทั้งที่สำหรับงานของฉันมันเกินความจำเป็น
HS5 ดูเหมาะกว่ามาก
น่าจะเหมาะกับงานพัฒนา หรือ PoC และน่าจะดีในสภาพแวดล้อมที่จัดการ HA/RAID ที่สแตกชั้นล่างอยู่แล้ว
แต่ก็ยังสงสัยเรื่องประสิทธิภาพ (อ่าน/เขียน/ลบ)
แล้วสำหรับคำถามว่า “สุดท้ายแล้วนี่ไม่ใช่แค่การทำระบบไฟล์ขึ้นมาใหม่อีกครั้งหรือ” จะตอบอย่างไร
Stallman พูดถูก
ไม่เข้าใจว่าทำไมชุมชนยังคงช่วยกันมีส่วนร่วมกับโปรเจกต์ที่มี CLA (Contributor License Agreement) แบบนี้
สุดท้ายก็เกิดการ ‘rug pull’ ขึ้นอีกแล้ว
ดูเหมือนจะมี fork ออกจาก Linux Foundation
MinIO อาจกลับมาอีกครั้งภายใน 1-2 ปี แต่ก็คงเสีย ความเชื่อมั่นจากชุมชน ไปแล้ว
กรณีที่เกี่ยวข้อง: คอมเมนต์ใน issue, discussion
ไม่แปลกที่พอทิ้งความเข้ากันได้กับ POSIX แล้วทำผลิตภัณฑ์ที่ซับซ้อนขึ้น ก็สู้คู่แข่งอย่าง Ceph หรือ S3/R2/B2 ไม่ได้
MinIO ยังใช้ได้ดีในสภาพแวดล้อมที่ติดตั้ง Ceph ยาก หรือใช้เป็นแคชสำหรับ CI/CD build
แต่ตรงนั้นไม่ใช่ตลาดที่ทำเงิน
ตัวอย่างเช่น “foo” กับ “foo/bar” ใช้ได้ทั้งคู่ใน S3 แต่ไม่สามารถอยู่ร่วมกันได้ในระบบไฟล์ POSIX
การสร้าง ระบบ POSIX ที่เชื่อถือได้ เป็นเรื่องที่ซับซ้อนโดยธรรมชาติอยู่แล้ว
MinIO มีฟีเจอร์เพียงพอแล้วสำหรับการใช้งานส่วนใหญ่
ในอัปเดตใหญ่ช่วงหลังกลับ เอาฟีเจอร์ UI ออก เสียมากกว่า
ใช้มานาน 5 ปีแล้ว แค่มี security patch ก็น่าจะใช้ต่อได้
ดูเหมือนหมายความว่าจะไม่มีการรับประกันการแก้ไขที่จำเป็น
การยุติฐานโอเพนซอร์สแล้วเปลี่ยนไปเป็นผลิตภัณฑ์เชิงพาณิชย์เป็นเรื่องที่ช็อกมาก
แถมยังเปลี่ยนชื่อเป็น “AIStor” อีก เหลือเชื่อจริง ๆ
เพราะเป็น AGPL จึงยังต้องเปิดเผยซอร์สโค้ดไว้ที่ไหนสักแห่งอยู่ดี
เป็นความพยายามทำเงินจากโค้ดฟรีของชุมชนพร้อมกันกับปิดกั้นการแข่งขัน
พอเรื่องแบบนี้เกิดซ้ำ ๆ ก็แทบไม่แปลกใจแล้ว
Clickhouse ก็น่าจะเดินตามเส้นทางเดียวกัน
เหตุผลที่เปลี่ยน roadmap เมื่อ 2 ปีก่อนก็เพราะ เวอร์ชันโอเพนซอร์สสามารถแข่งขันกับธุรกิจคลาวด์ ได้
ดูการถกเถียงที่เกี่ยวข้องได้ ที่นี่