Red Hat เตรียมใส่รันไทม์คอนเทนเนอร์ใหม่ crun เล็กเร็วกว่า runc ทดสอบใน RHEL 8.3

by lew
4 August 2020 - 12:15

ทีมวิศวกร Red Hat เขียนบล็อคอธิบายถึง crun รันไทม์ใหม่ที่ Giuseppe Scrivano วิศวกรของ Red Hat เขียนขึ้นช่วงวันหยุดปีใหม่ขึ้นปี 2019 โดยเขียนขึ้นด้วยภาษา C ทั้งหมดขณะที่ runc นั้นเขียนด้วยภาษา Go โดย Giuseppe ต้องการทดสอบฟีเจอร์ใหม่ๆ ในรันไทม์ของคอนเทนเนอร์ จนตอนนี้ใน RHEL 8.3 ที่กำลังออก ตัว crun ก็จะใส่เข้ามาด้วยในสถานะ Technology Preview

runc เป็นตัวรันคอนเทนเนอร์อ้างอิงสเปกของ Open Container Initiative หลังจากความบาดหมางระหว่าง Docker และ CoreOS สงบลง แต่การทำตามสเปกเป็นหลักก็ทำให้ไม่มีฟีเจอร์ทดสอบใหม่ๆ

crun เขียนด้วย C ทั้งหมดทำให้ไบนารีมีขนาดเล็กมากเพียง 300kB หรือ 1 ใน 50 ของ runc และการสร้างคอนเทนเนอร์ก็เร็วเท่าตัว โดยกินแรม 1 ใน 4 เท่านั้น พร้อมกับรองรับฟีเจอร์ใหม่ๆ เช่น ใช้ cgroup v2 ในเคอร์เนล (ที่ฝั่งเคอร์เนลพัฒนามาตั้งแต่ปี 2015) ดึง stdout/stderr ลงไฟล์ได้โดยตรง และใช้ systemcall ใหม่ๆ ของลินุกซ์ได้ครบ (เพราะเป็นภาษา C)

ที่มา - Red Hat

ภาพโดย ThomasWolter

Blognone Jobs Premium