AWS เปิดตัว Linux Distro ใหม่ ‘Bottlerocket’
เมื่อไม่กี่วันก่อนทาง AWS ได้ออกมาแนะนำถึง Linux Distro ใหม่ ซึ่งทำขึ้นมาเองที่ชื่อ ‘Bottlerocket’ ที่เน้นตอบโจทย์การรัน Container โดยเฉพาะ
AWS ได้มองความต้องการและการใช้งานของลูกค้ามาก่อน ซึ่งทำให้เห็นถึงข้อเสียในการใช้ OS เพื่อรัน Container เช่น การแยกอัปเดตแพ็กเกจย่อยๆ และอื่นๆ
Bottlerocket มีคุณสมบัติที่เหมาะแก่การรัน Container ในหลายแง่มุมดังนี้
- ใส่ซอฟต์แวร์เฉพาะที่จำเป็นแก่การรัน Container เท่านั้น ที่เป็นการลดพื้นผิวของโจมตีไปในตัว
- ใช้ Security-Enhanced Linux (SELinux) เพื่อช่วยแบ่งแยกระหว่าง Container และ Host OS
- ใช้ฟีเจอร์ของ Linux Kernel (dm-verity) เพื่อช่วยทำ Integrity Check ป้องกันการเขียนทับซอฟต์แวร์
- ใช้ Linux Kernel ใหม่ๆ หรือ eBPF ช่วยลดการใช้ Kernel Module ในการทำ Low-level Operation
- หลายส่วนถูกเขียนด้วยภาษา Rust ซึ่งเป็นภาษาสมัยใหม่ที่สามารถช่วยให้ใช้ Thread ได้อย่างปลอดภัยและป้องกันเรื่อง Memory Error เช่นปัญหา Buffer Overflow
- สามารถใช้ Admin Container (Amazon Linux 2 Container ที่มีเครื่องมือสำหรับ Troubleshooting มาให้ พร้อมกัยรันด้วยสิทธิพิเศษ) เพื่อ Debug ปัญหาได้ผ่านทาง API ผ่านทาง User data หรือ AWS System Manager และล็อกอินผ่าน SSH หากต้องการ Debug ปัญหาขั้นสูง
- ออกแบบมาให้เหมาะกับการรันในสภาพแวดล้อมแบบ Distributed ใหญ่ๆ พร้อมกับออกแบบมาให้จัดการได้ง่าย สเกลและอัปเดตอัตโนมัติได้
- มีการทำงานร่วมกับ Container Orchestrator เช่น Amazon EKS และ Amazon ECS ได้แล้ว
สุดท้ายนี้ทาง Bottlerocket คือโปรเจ็คที่เป็นโอเพ่นซอร์ส ดังนั้นผู้สนใจสามารถศึกษาและนำไปใช้ต่อได้เลยบน GitHub
Comments
Post a Comment