Alibaba Cloud Linux 4 (disingkat Alinux 4) adalah distribusi sistem operasi server Linux yang dikembangkan oleh Alibaba Cloud berdasarkan rilis Anolis OS 23 dari Komunitas OpenAnolis. Topik ini menjelaskan perbedaan utama Alinux 4 dibandingkan dengan Alinux 3 dalam hal posisi produk, modul/komponen, kemampuan kernel, dan paket perangkat lunak, sebagai referensi bagi pengguna Alinux 3 saat mengevaluasi peningkatan, melakukan analisis kompatibilitas, dan merencanakan migrasi.
Posisi produk dan skenario yang direkomendasikan
Alinux 4 tidak lagi bertujuan menggantikan CentOS secara kompatibel. Sebagai gantinya, sistem ini menggunakan kernel 6.6 yang sepenuhnya baru dan memilih ulang versi rantai alat intinya, dengan fokus pada dukungan daya komputasi heterogen, optimasi daya komputasi AI, observabilitas operasi AI, serta evolusi sistem cerdas.
Perbandingan posisi generasi produk
|
Dimensi |
Alibaba Cloud Linux 3 |
Alibaba Cloud Linux 4 |
|
Tahun rilis |
2021 |
Juli 2025 |
|
Basis hulu |
Anolis OS 8 |
Anolis OS 23 |
|
Kompatibilitas CentOS |
Tujuan utama |
Tidak lagi berfungsi sebagai pengganti yang kompatibel dengan CentOS |
|
Driver inti |
Menggantikan CentOS dan mengaktifkan instans generasi ke-8 Alibaba Cloud |
Berbasis AI, daya komputasi heterogen, evolusi cerdas |
|
Versi kernel |
5.10 (ANCK) |
6.6 (ANCK) |
|
Manajemen paket |
dnf (kompatibel dengan yum) |
dnf (sama seperti Alinux 3, dengan struktur repositori generasi baru) |
|
Nama komponen khas |
al8 |
alnx4 |
Skenario yang direkomendasikan
Alinux 4 direkomendasikan untuk skenario-skenario berikut:
Skenario workload Agent: Mendukung sebagai Agent Runtime, menyediakan perlindungan keamanan dan kemampuan penyimpanan token, sepenuhnya mendukung penerapan dan tuning lingkungan runtime framework Sandbox Alibaba Cloud maupun open source, serta menawarkan keunggulan unik dalam kecepatan startup dan kerapatan workload.
Instans komputasi umum generasi ke-9 dan seterusnya: Menyediakan optimasi performa tingkat kernel dan pengaktifan fitur.
Skenario pelatihan dan inferensi: Menyediakan suite pelatihan dan inferensi untuk mencapai optimasi dan akselerasi pada skenario pelatihan dan inferensi.
Tipe instans domestik: Memenuhi persyaratan keamanan dan kepatuhan serta menyediakan maintenance siklus hidup hingga 13 tahun.
Perbandingan lengkap komponen
Berdasarkan perbandingan antara komponen Alinux 3 (garis dasar versi 3.13) dan Alinux 4 (garis dasar versi 4.0.2), sekitar 58% komponennya identik. Distribusi perbedaan keseluruhan adalah sebagai berikut:
|
Status komponen |
Jumlah komponen |
Deskripsi |
|
Diwariskan oleh Alinux 4 |
1706 |
Diantaranya, 1666 komponen benar-benar identik, dan 40 sisanya merupakan komponen dengan kemampuan setara namun nama/penyedia komponennya berubah. |
|
Tidak lagi disediakan oleh Alinux 4 |
1191 |
Sebagian besar merupakan paket dukungan multi-bahasa dan modul. |
|
Baru ditambahkan oleh Alinux 4 |
1109 |
Sebagian besar untuk strategi produk dan cakupan ekosistem. Diantaranya, 257 adalah paket dukungan bahasa Perl, 427 adalah paket dukungan bahasa Python, dan 40 untuk dukungan OCaml serta dukungan multi-versi GCC. |
Untuk perbandingan lengkap komponen, lihat Lampiran: Daftar perbandingan lengkap komponen.
Perbedaan versi modul/komponen
Perubahan fitur sistem
|
Kemampuan |
Alibaba Cloud Linux 3 |
Alibaba Cloud Linux 4 |
Deskripsi perbedaan |
|
Manajemen paket |
dnf-4.7.0 |
dnf-4.16.2 |
Tidak ada perbedaan penggunaan: baik dnf maupun yum tetap disediakan. Versi yang lebih tinggi dioptimalkan dalam hal keamanan, verifikasi signature, dan performa. |
|
Konfigurasi jaringan |
NetworkManager-1.40.16 |
NetworkManager-1.44.2 |
Menambahkan dukungan default untuk jaringan kontainer, WireGuard, dan DNS-over-TLS. |
|
Penyaringan paket jaringan |
nftables-1.0.4 |
nftables-1.0.8 |
Lebih lanjut menyatukan lapisan kompatibilitas iptables. |
|
Runtime kontainer default |
podman-4.9.4 |
moby-28.3.3 / containerd-1.7.29 |
Mengubah penyedia docker dan juga menyediakan komponen containerd yang tersedia. |
|
Distribusi Java |
OpenJDK 1.8/11/17/21 (edisi komunitas) |
Alibaba Dragonwell 1.8/11/17/21/25 |
Menyediakan tambahan JDK 25 dan secara default mempercepat OpenJDK melalui Dragonwell. |
|
Python default |
python3.6 (dengan dukungan tambahan untuk 3.11) |
python3.11 |
3.11 menawarkan optimasi sistem yang signifikan, termasuk interpreter adaptif spesialisasi dan inline caching. |
|
OpenSSL |
OpenSSL 1.1.1 (kompatibel dengan ABI lama) |
OpenSSL 3.0.12 (default) / OpenSSL 1.1.1q (juga disediakan) |
OpenSSL 3.0.12 menyediakan FIPS 140-3, arsitektur provider, dan prioritas TLS 1.3. |
|
Cgroup |
Cgroup V1 diaktifkan secara default |
Cgroup V2 diaktifkan secara default |
Alat yang bergantung pada cgroup v1 perlu diadaptasi. |
Catatan: Alinux 4 menyediakan
cgroup v2danOpenSSL 3.0secara default. Binari yang menggunakan ABI OpenSSL lama (sepertilibssl.so.1.1) perlu dikompilasi ulang atau dipasang paket kompatibilitasnya; alat orkestrasi atau pemantauan kontainer yang bergantung pada path cgroup v1 perlu diadaptasi ke hierarki terpadu cgroup v2.
Deskripsi peningkatan komponen
|
Komponen |
Kategori |
Alinux 3 |
Alinux 4 |
Perubahan utama |
|
kernel |
Kernel |
5.10 |
6.6 |
ANCK 6.6 memperkenalkan banyak kemampuan hulu seperti peningkatan io_uring, optimasi performa ext4, large folio, MGLRU, EEVDF/sched_ext, dan cpuset cgroup v2. |
|
glibc |
Dasar |
2.32 |
2.38 |
Mendukung system call baru dari Linux 5.8–6.3; mengoptimalkan ARM64/RISC-V; meningkatkan malloc; mempercepat VDSO. |
|
libc++ |
Dasar |
15.0.7 |
17.0.6 |
Optimasi C++20 dan fitur C++23 baru; optimasi kontainer dan formatting. |
|
libstdc++ |
Dasar |
10.2.1 |
12.3.0 |
Optimasi C++20 dan dukungan awal C++23; penyesuaian thread-safety. |
|
libvirt |
Virtualisasi |
8.0.0 |
9.10.0 |
Stack virtualisasi ditingkatkan secara keseluruhan dan diintegrasikan dengan qemu yang lebih baru. |
|
qemu |
Virtualisasi |
6.2.0 |
8.2.0 |
Mendukung platform perangkat keras baru dan peningkatan virtio; nama paket diubah dari qemu-kvm menjadi qemu. |
|
GCC |
Kompiler |
8.5 |
12.3 |
Peningkatan C++20/23, static analyzer, dan set instruksi ISA baru. |
|
systemd |
Manajemen sistem |
239 |
254 |
cgroup v2 terpadu, Portable Services, Credential, BPF, Kebijakan OOM, dan lainnya. |
|
OpenSSL |
Keamanan |
1.1.1 |
3.0.12 |
FIPS 140-3, arsitektur provider, dan prioritas TLS 1.3. |
|
containerd |
Kontainer |
Tidak disediakan |
1.7.29 |
Menambahkan komponen containerd mandiri. |
|
moby |
Kontainer |
Tidak disediakan (hanya podman) |
28.3.3 |
Menambahkan moby (engine Docker open source). |
Fitur kernel baru utama
Penyimpanan
io_uring
Dibandingkan dengan kernel 5.10, kernel 6.6 terus meningkatkan framework IO asinkron io_uring:
|
Fitur |
Deskripsi |
|
Async buffered writes |
Menambahkan dukungan buffered write pada fast path, dengan peningkatan performa sekitar 3x dalam pengujian xfs. |
|
Task work lock contention |
Spin lock diubah menjadi daftar tanpa lock, meningkatkan performa task_work_add multi-threaded sekitar 20%. |
|
Multishot completion batching |
Event multishot completion menggunakan kembali IO_URING_F_COMPLETE_DEFER, meningkatkan RPS dari 8,3 juta/detik menjadi 19,3 juta/detik (sekitar 2,3x). |
|
Optimasi caching SQ/CQ |
Mikro benchmark nop io_uring meningkat sekitar 9%. |
|
Kemampuan baru |
multishot accept/recvmsg/timeout, zero-copy jaringan, passthrough, driver blok userspace ublk, dan lainnya. |
ext4
Mencakup berbagai aspek, seperti alokasi Blok, pra-alokasi inode, konkurensi dan penguncian, serta skalabilitas:
|
Fitur |
Deskripsi |
|
Improve delalloc buffer write performance |
Menghapus operasi journal yang tidak perlu pada path write delalloc, meningkatkan UnixBench sekitar 73%. |
|
Speedup orphan file handling |
Memperkenalkan file orphan untuk menggantikan daftar berantai on-disk, mengurangi waktu operasi sekitar 40% dalam mikro benchmark 128-thread. |
|
Improve fast_commit performance |
ext4_fc_commit_dentry_updates dioptimalkan dari O(n²) menjadi O(n), meningkatkan performa sekitar 171x dalam skenario fs_mark multi-direktori file kecil. |
|
DIO shared inode lock covering preallocated blocks |
Operasi overwrite pada blok preallocated diubah agar dilindungi oleh i_data_sem, meningkatkan performa write DIO multi-threaded 4k sekitar 4x. |
|
Inode preallocation list → rbtree |
Kompleksitas pencarian dikurangi dari O(n) menjadi O(log n), meningkatkan write sparse sebesar 1x hingga 2x. |
|
Speed up delalloc append write |
Pada skenario append write, pembaruan i_disksize ditunda, meningkatkan append konkuren 32-thread sekitar 34%; throughput Kafka 2.6.2 terukur meningkat 10%. |
|
Enable large folio for regular files |
Merestrukturisasi folio pada mballoc/write_begin/writeback berbasis buffer heads, meningkatkan performa baca/tulis IO buffered hingga sekitar 1,2x. |
Memori
Subsistem memori mencakup optimasi biaya, manajemen memori besar, serta koordinasi perangkat lunak-perangkat keras.
Optimasi biaya memori
|
Fitur |
Deskripsi |
|
HVO (HugeTLB vmemmap optimization) |
Melepaskan struktur halaman ekor yang tidak digunakan pada huge page hugetlb, menghemat 16G memori untuk hugetlb 1G berukuran 1T. |
|
DAMON (Data Access Monitor) |
Secara proaktif mereklaim memori dingin berdasarkan sampling wilayah dan penyesuaian wilayah adaptif. |
|
MGLRU cold memory reclamation |
Solusi penuaan memori yang lebih ringan dan reklamasi memori dingin proaktif. |
|
tmpfs zero-page filling |
Menggunakan kembali zero page untuk file sparse tmpfs guna menghindari penggunaan memori fisik tambahan. |
Manajemen memori besar (Large folio + Skalabilitas Lock)
Pada skenario memori besar AI dan virtualisasi, kernel 6.6 mengaktifkan Large folio secara default, mendukung PTE kontigu ARM dan THP AMD untuk mengurangi TLB miss, serta menyelesaikan secara tuntas masalah skalabilitas mmap_lock yang sebelumnya hanya dapat diatasi dengan solusi sementara pada era kernel 5.10.
Optimasi koordinasi perangkat lunak-perangkat keras memori
|
Fitur |
Deskripsi |
|
Memory tiering |
Mendukung manajemen tiering otomatis hot/cold untuk memori heterogen CXL/PMEM. |
|
Migration batch TLB flushing |
Batching TLB IPI untuk mengoptimalkan performa jalur migrasi. |
|
NUMA balancing supports huge pages |
Large folio juga berpartisipasi dalam NUMA balancing, meningkatkan performa bisnis dengan mengakses huge page lokal. |
|
Code segment multiple replicas (duptext) |
Menyalin segmen kode dari node remote ke node lokal untuk menghindari akses cross-NUMA. |
Penjadwalan
|
Fitur |
Deskripsi |
|
EEVDF |
Penjadwalan berdasarkan tenggat waktu virtual. Dibandingkan dengan CFS, fitur ini memungkinkan respons lebih cepat untuk tugas sensitif latensi sambil mempertahankan throughput. |
|
sched_ext |
Menambahkan kelas penjadwalan ext, yang mengimplementasikan kebijakan penjadwalan kustom melalui program eBPF untuk menyesuaikan penjadwal optimal bagi berbagai skenario bisnis. |
|
PSI enhancements |
Sakelar statistik PSI per-cgroup, statistik beban irq/softirq, dan event psi poll tanpa hak istimewa. |
|
cgroup v2 cpuset isolation |
Menambahkan mode terisolasi (tanpa load balancing dalam rentang cpuset, cocok untuk skenario eksklusif seperti DPDK). |
|
Group Identity 2.0 |
Optimasi penjadwalan granular berdasarkan CFS/EEVDF, secara sederhana dan efisien menghindari kontensi hyper-threading. |
|
Group Balance 2.0 |
Solusi penjadwalan dinamis yang menyelesaikan masalah domain afinitas dan gangguan kontensi cache/TLB dalam mode berbagi CPU. |
Analisis terkategori komponen yang berbeda
Komponen yang tidak lagi disediakan oleh Alinux 4
Terdapat total 1.191 komponen, yang didistribusikan berdasarkan alasan pengenalannya sebagai berikut:
190 paket dukungan format multi-bahasa: Alinux 4 hanya mendukung bahasa Tionghoa dan Inggris; bahasa lain belum didukung.
108 paket Modul (DNF Modular): Alinux 4 saat ini tidak mendukung format paket modul.
36 komponen driver (kmod-*): Belum disediakan oleh Alinux 4; rencana tindak lanjut sedang dalam diskusi.
30 rantai alat kompilasi mingw: Alinux 4 tidak menyediakan lingkungan cross-compilation mingw.
42 toolchain multi-versi gcc: seperti gcc-toolset-12/13; Alinux 4 telah beralih ke versi gcc default baru.
34 paket dukungan OCaml: Alinux 4 tidak memperkenalkan ekosistem OCaml.
9 komponen produk Red Hat: Alinux 4 adalah produk proprietary dan tidak perlu memperkenalkan komponen tersebut.
806 komponen aplikasi lainnya: Belum dikategorikan secara jelas; pihak aplikasi perlu mengonfirmasi satu per satu.
Rekomendasi peningkatan: Sebelum migrasi, gunakan
rpm -qauntuk mengekspor daftar paket dari instans Alinux 3 yang ada dan bandingkan dengan kategori di atas. Jika Anda bergantung pada paket modul, toolchain multi-versi gcc, mingw, OCaml, kmod-*, atau komponen produk Red Hat, evaluasi alternatifnya terlebih dahulu.
Komponen yang berubah di Alinux 4
Total terdapat 40 komponen yang ada di Alinux 4 dengan kemampuan setara namun nama paket/penyedianya berbeda. Hubungan penggantian umum adalah sebagai berikut:
|
Komponen Alinux 3 asli |
Penyedia setara Alinux 4 |
Deskripsi |
|
SDL 1.2.15 |
sdl12-compat 1.2.68 |
Lapisan kompatibilitas SDL 1.2 → SDL 2 |
|
device-mapper-multipath 0.8.4 |
multipath-tools 0.9.5 |
Perubahan penyedia |
|
fipscheck 1.5.0 |
libkcapi-fipscheck 1.4.0 |
Verifikasi FIPS beralih ke libkcapi |
|
glassfish-annotation-api / servlet-api |
jakarta-annotations / jakarta-servlet |
Migrasi namespace JavaEE → Jakarta EE |
|
hardlink 1.3 |
util-linux-core 2.39.1 |
Digabung ke util-linux-core |
|
java-1.8.0/11/17-openjdk |
java-1.8.0/11/17-alibaba-dragonwell |
OpenJDK default diganti dengan Dragonwell |
|
seri python3.11-* (17 item) |
Paket python3-* yang sesuai |
Normalisasi nama paket |
|
qemu-kvm 6.2.0 |
qemu 8.2.0 |
Nama paket diubah dari qemu-kvm menjadi qemu |
|
shadow-utils 4.6 |
shadow 4.14.3 |
Penyesuaian nama paket |
|
system-lsb 4.1 |
lsb-release 3.2 |
Perubahan penyedia |
Komponen unik Alinux 4 (1109 item)
Komponen unik yang baru ditambahkan oleh Alinux 4 dibandingkan dengan Alinux 3 terutama tersebar di arah-arah berikut:
427 paket ekosistem bahasa Python: modul python3-* yang ditambahkan di sekitar runtime python 3.11 default.
257 paket ekosistem bahasa Perl: paket modul CPAN yang ditambahkan seiring peningkatan perl 5.36.
40 paket dukungan OCaml dan multi-versi gcc: toolchain yang lebih baru disediakan melalui cara lain.
385 paket ekosistem/strategi produk lainnya: dari ekspansi ekosistem Anolis 23 / Komunitas OpenAnolis.
Rekomendasi kompatibilitas dan migrasi
Evaluasi skenario yang berlaku
Kami merekomendasikan Anda memprioritaskan evaluasi peningkatan ke Alinux 4 pada skenario-skenario berikut:
|
Skenario bisnis |
Manfaat peningkatan |
|
Pelatihan/inferensi AI (model besar, vLLM, SGLang) |
Large folio 6.6, Uncached IO, Cachefs, profiling full-stack, dan optimasi inferensi terdistribusi. |
|
Perangkat keras heterogen/domestik (Hygon, Zhaoxin, Kunpeng, Phytium, GPU domestik) |
Alinux 4 adalah fondasi inti generasi berikutnya dari rute domestik Alibaba Cloud, dengan pengaktifan native. |
|
Instans generasi ke-9 dan seterusnya |
Set instruksi baru, driver platform, dan optimasi penjadwalan. |
|
Kontainer berskala besar/co-location |
cgroup v2 secara default, PSI per-cgroup, cpuset terisolasi, dan Group Identity/Balance 2.0. |
|
Kebutuhan kuat akan OpenSSL 3.0, Python 3.11, atau GCC 12+ |
Infrastruktur modern siap pakai. |
Item kompatibilitas berisiko tinggi
OpenSSL 3.0: Binari legacy
libssl.so.1.1tidak lagi disediakan secara default dan perlu dikompilasi ulang atau dipasang paket kompatibilitasnya.cgroup v2 secara default: Agen orkestrasi dan pemantauan kontainer yang bergantung pada path cgroup v1 perlu diadaptasi.
Java default menggunakan Dragonwell: Jika bisnis Anda sangat bergantung pada perilaku OpenJDK atau string vendor, Anda perlu secara eksplisit menentukan antara OpenJDK dan Dragonwell.
Python default menggunakan 3.11: Ekstensi C yang dikompilasi dengan Python 3.6 dan skrip legacy yang bergantung pada distutils perlu diadaptasi.
Paket modul tidak lagi didukung: Skrip deployment yang menggunakan DNF Modular perlu direfaktor.
Driver kmod-*: Beberapa driver perangkat keras (seperti ena, bnxt, dan hns3) saat ini tidak disediakan di Alinux 4, sehingga Anda perlu mengevaluasi dampaknya terhadap bisnis.
Perubahan nama paket: Migrasi namespace seperti
qemu-kvm → qemu,shadow-utils → shadow,system-lsb → lsb-release, danpython3.11-* → python3-*memerlukan pembaruan skrip deployment.
Jalur migrasi yang direkomendasikan
Inventarisasi: Pada instans Alinux 3, jalankan
rpm -qa > alinux3-pkglist.txtdan lakukan analisis perbedaan terhadap analisis terkategori komponen yang berbeda dalam topik ini.Ganti: Untuk komponen yang berubah, sesuaikan skrip deployment ke nama paket setara Alinux 4.
Evaluasi: Untuk komponen "perlu dikonfirmasi satu per satu (806 item)", verifikasi keperluannya di lingkungan pengujian.
Pilot: Prioritaskan uji coba Alinux 4 pada bisnis non-inti dalam skenario AI, co-location, dan perangkat keras domestik.
Skalakan: Setelah uji coba stabil, ganti bisnis inti secara bertahap, gunakan kontainerisasi sebagai transisi jika diperlukan.