ContainerOS adalah sistem operasi resmi Alibaba Cloud yang dioptimalkan untuk lingkungan terkontainerisasi dan sepenuhnya kompatibel dengan ekosistem Kubernetes. Berbasis Alibaba Cloud Linux 3, ContainerOS menawarkan keamanan yang ditingkatkan, waktu boot yang lebih cepat, serta seperangkat layanan dan paket sistem minimal. Sistem ini telah mengintegrasikan komponen cloud-native secara bawaan untuk penggunaan langsung.
Penerapan
Untuk Node Pool di kluster ACK yang dikelola dengan versi kluster 1.24 atau lebih baru yang menggunakan containerd sebagai container runtime. Untuk informasi selengkapnya, lihat Create an ACK managed cluster. Untuk meningkatkan kluster, lihat Manually upgrade a cluster.
Tidak didukung pada node GPU atau node dengan arsitektur Arm.
Pengantar ContainerOS
Dalam penerapan berbasis kontainer, komponen cloud-native seperti container runtime dan Kubernetes memungkinkan Anda fokus pada pengembangan aplikasi tanpa perlu mengelola detail infrastruktur tingkat rendah. Sistem operasi tradisional dirancang untuk berbagai kasus penggunaan dan mencakup banyak alat, paket, serta layanan di user-space, sehingga menghasilkan sistem yang membengkak, waktu boot yang lambat, serta tantangan operasional signifikan akibat variasi dan versi paket perangkat lunak.
ACK merancang ContainerOS untuk mengatasi masalah tersebut dan meningkatkan pengalaman pengguna dalam skenario cloud-native. ContainerOS adalah sistem operasi ringan dan modular yang memulai serta menjalankan kontainer lebih cepat. Sistem ini juga menawarkan keamanan yang ditingkatkan dan membutuhkan lebih sedikit sumber daya, sehingga ideal untuk komputasi awan dan penerapan berskala besar.
Fitur
Feature | Description |
Streamlined image | Hanya mencakup paket dan layanan sistem esensial yang diperlukan untuk menjalankan Pod Kubernetes. Optimasi di seluruh sistem secara signifikan mengurangi waktu boot. ContainerOS dan sistem operasi tradisional seperti Alibaba Cloud Linux 3, Alibaba Cloud Linux 2, dan CentOS masing-masing mencakup sekitar 210 dan 600 paket pra-instal.
Selain itu, ContainerOS tidak mencakup dukungan Python atau fungsi login SSH langsung. Hal ini memungkinkan Anda fokus pada pengembangan dan menjalankan aplikasi bisnis tanpa perlu khawatir tentang sistem operasi yang mendasarinya. |
Quick Launch | Optimasi full-stack secara signifikan meningkatkan kecepatan boot OS dan mengurangi waktu scale-out node dalam infrastruktur ACK. Dengan menyederhanakan proses boot OS dan melakukan pra-instalasi container image untuk komponen manajemen kluster, ContainerOS mengurangi penundaan akibat pengambilan image selama startup node. Dikombinasikan dengan optimasi lapisan kontrol ACK, hal ini semakin mempercepat scale-out node. Sebagai contoh, gambar berikut menunjukkan bahwa untuk scale-out 1.000 node, waktu kesiapan node P90 pada ContainerOS hanya 53 detik. Ini memberikan keunggulan signifikan dibandingkan CentOS dan Alibaba Cloud Linux 2 custom image yang telah dioptimalkan. Penting Data yang disediakan dalam contoh ini hanya untuk referensi. Data aktual dapat bervariasi tergantung pada optimasi produk. Performa aktual bergantung pada lingkungan operasional Anda. |
Security hardening | File system root bersifat read-only. Hanya direktori /etc dan /var yang dapat ditulis untuk memungkinkan konfigurasi sistem dasar. Desain ini selaras dengan prinsip infrastruktur immutable dalam lingkungan cloud-native dan secara efektif mencegah kontainer yang keluar dari isolasi (escaped containers) mengubah file system host. Meskipun login pengguna langsung dilarang untuk mencegah operasi yang tidak terlacak, ContainerOS menyediakan administrative container khusus untuk kebutuhan O&M non-rutin. |
Atomic upgrades | Mengikuti prinsip infrastruktur immutable cloud-native, ContainerOS tidak mencakup package manager seperti |
Keunggulan
Advantage | Description |
Optimized for container environments | ContainerOS dirancang khusus dan dioptimalkan untuk lingkungan kontainer, dengan fitur quick launch, security hardening, dan file system root immutable. Fitur-fitur ini meningkatkan performa sekaligus menyederhanakan operasi dan manajemen di seluruh kluster, memastikan konsistensi tinggi di semua node. |
Rapid node scale-out | Dengan mengintegrasikan optimasi lapisan kontrol ACK dan peningkatan internal OS, ContainerOS secara signifikan mempercepat scale-out node. Saat ini, scale-out node menyumbang lebih dari 90% dari total waktu auto scaling ACK. Penggunaan ContainerOS secara drastis meningkatkan pengalaman auto scaling Node Pool. |
OS maintainability | Bekerja sama dengan lapisan kontrol ACK, ContainerOS mendukung pembaruan berkelanjutan untuk Kubernetes dan perangkat lunak sistem lainnya, patching CVE, serta rilis citra sesuai permintaan, sehingga meningkatkan kemudahan pengelolaan OS. Dibandingkan dengan solusi Alibaba Cloud Linux 2 custom image yang juga menggunakan citra pra-instal untuk mempercepat startup node, ContainerOS mencakup pemeliharaan resmi dan patching CVE. Hal ini mengurangi upaya yang diperlukan untuk pemeliharaan, peningkatan, dan perbaikan isu kritis pada citra OS kustom. Melalui optimasi bersama dengan ACK, ContainerOS secara signifikan mengurangi ketidaktersediaan node akibat tugas operasional, sehingga menjamin kelangsungan bisnis. |
Alibaba Cloud Linux 3 compatibility | Versi kernel dan sebagian besar paket dalam ContainerOS identik dengan yang ada di Alibaba Cloud Linux 3. Sistem ini menggunakan kernel LTS 5.10 terbaru, memberikan aplikasi cloud fitur terkini dari komunitas Linux. |
Keamanan
ContainerOS menerapkan prinsip desain berikut untuk meningkatkan keamanannya.
Keamanan sistem operasi
Feature | Description | |
Minimal execution environment | ContainerOS hanya mencakup paket dan layanan sistem yang diperlukan untuk lingkungan terkontainerisasi, total sekitar 210 paket. Lebih sedikit paket berarti lebih sedikit CVE dan attack surface OS yang berkurang. Paket-paket yang rentan terhadap kerentanan seperti | |
O&M for ContainerOS nodes | Sistem ini menggunakan minimal execution environment dan file system root immutable untuk meningkatkan keamanan. Metode O&M untuk node ContainerOS berbeda dari sistem operasi Linux standar. Untuk informasi selengkapnya, lihat O&M for ContainerOS nodes. | |
Immutable root file system | Package manager seperti yum tidak didukung. Hanya perubahan OS yang terlacak dan rollback menggunakan rpm-ostree yang didukung. File system root | |
Read-only system disk | Disk sistem diatur sebagai read-only, yang melindunginya dari perubahan tidak sah dan serangan persisten. Disk data tambahan harus dipasang agar sistem dapat boot dan berjalan dengan baik. Data pengguna disimpan di disk data, sehingga terisolasi dari disk sistem. Disk data dipasang ke direktori | Hanya didukung di ContainerOS 3.5.0 dan versi selanjutnya. |
Shell interpreter removal | Interpreter skrip shell (seperti /bin/bash dan /bin/sh) dihapus dari sistem, sehingga memblokir saluran eksekusi untuk skrip shell dan mengurangi risiko serangan skrip berbahaya. | |
Bootstrap container | ContainerOS menyediakan bootstrap container untuk mengeksekusi skrip user data kustom sebelum kontainer utama dimulai. Bootstrap container secara otomatis keluar setelah menyelesaikan tugas inisialisasi, sehingga mencegah risiko keamanan terhadap sistem utama atau kontainer aplikasi primer. | |
Keamanan infrastruktur
ContainerOS dibangun di atas distribution framework Alibaba Cloud Linux. Sebagai OS yang paling banyak digunakan di platform ini, Alibaba Cloud Linux menyediakan fondasi yang telah dioptimalkan secara luas untuk skenario cloud-native. Dengan memanfaatkan ekosistem mapan ini untuk pembuatan paket dan pengiriman citra, ContainerOS menjamin keandalan yang konsisten. Selain itu, setiap citra menjalani Pengujian integrasi baseline OS dan ACK yang ketat sebelum dirilis untuk menjamin ketersediaan dan keamanan maksimal.
Penagihan
ContainerOS adalah citra gratis. Anda dapat menggunakan citra ContainerOS di node pool ACK dan menerima dukungan jangka panjang dari Alibaba Cloud untuk sistem operasi tanpa biaya.
Namun, saat menggunakan citra ContainerOS, Anda akan dikenai biaya untuk sumber daya lain yang digunakan, seperti vCPU, memori, penyimpanan, bandwidth publik, dan Snapshot. Untuk informasi selengkapnya tentang penagihan sumber daya lainnya, lihat Billing overview.
Referensi
Untuk mempelajari cara menggunakan ContainerOS sebagai sistem operasi untuk node pool, lihat Use ContainerOS.
Untuk catatan rilis citra ContainerOS, lihat Release notes for ContainerOS images.