Karena CentOS 7 telah mencapai akhir masa pakai (EOL), Anda dapat bermigrasi dari CentOS 7 ke Alibaba Cloud Linux 3. Topik ini menjelaskan perbedaan utama antara Alibaba Cloud Linux 3 dan CentOS 7.
Untuk informasi tentang rencana EOL CentOS, lihat CentOS.
Untuk informasi tentang rencana EOL berbagai sistem operasi, lihat Siklus hidup sistem operasi.
Perbedaan kernel dan toolchain inti
Komponen | CentOS 7 x86 | Alibaba Cloud Linux 3 x86 | Alibaba Cloud Linux 3 Arm64 | Deskripsi |
gcc | 4.8.5_44.el7 | 10.2.1_3.8.al8 | 10.2.1-3.5.al8 | Setelah CentOS 7 dimigrasikan ke Alibaba Cloud Linux 3, aplikasi Anda harus dikompilasi ulang untuk menyesuaikan dengan pustaka tautan dinamis (DLL) yang digunakan di Alibaba Cloud Linux 3 guna mencegah kegagalan dalam mengidentifikasi file DLL. |
glibc | 2.17_326.el7_9 | 2.32_1.16.al8 | 2.32-1.12.al8 | |
Kernel | 3.10.0-1160.114.2.el7 | 5.10.134-16.1.al8 | Untuk informasi lebih lanjut tentang perbedaan kernel, lihat bagian Perbedaan Kernel dari topik ini. | |
binutils | 2.27_44.base.el7_9.1 | 2.35_12.2.al8 | Tidak ada. | |
systemd | 219_78.el7_9.9 | 239_74.0.3.al8 | Tidak ada. | |
grub2 | 2.02_0.87.0.2.el7.centos.14 | 2.02-148.0.1.al8.1 | Tidak ada. | |
Perbedaan komponen sistem penting
Jika Anda mengompilasi dan menginstal versi komponen yang lebih baru di CentOS 7 alih-alih menggunakan versi yang tersedia di repositori Yellowdog Updater Modified (YUM), Anda mungkin tidak dapat masuk ke sistem atau menjalankan aplikasi setelah memigrasikan CentOS 7 ke Alibaba Cloud Linux 3. Untuk menyelesaikan masalah tersebut, Anda harus mengompilasi komponen di Alibaba Cloud Linux 3 atau mendapatkan komponen dari repositori YUM Alibaba Cloud Linux 3.
Komponen | CentOS 7 x86 | Alibaba Cloud Linux 3 x86 dan Arm64 | Deskripsi |
Python | Python 2, Python 3.4, dan Python 3.6 | Python 2, Python3.6, Python 3.8, dan Python 3.11 | Secara default, baris |
java-1.8.0-alibaba-dragonwell | Tidak ada | 3:8.15.16.372-2.al8 | Secara default, ketika Anda menjalankan perintah |
java-1.8.0-openjdk | 1:1.8.0.412.b08-1.el7_9 | 1:1.8.0.412.b08-2.0.1.1.al8 | |
golang | 1.20.12-1.el7 | 1.20.12-8.0.1.al8 | Tidak ada. |
nginx | 1:1.20.1-10.el7 | 1:1.20.1-1.0.3.al8 | Tidak ada. |
php | 5.4.16-48.el7 | 7.4.33-1.0.1.al8 | Tidak ada. |
mysql | Tidak ada | 8.0.36-1.0.1.1.al8 | Secara default, ketika Anda menjalankan perintah |
mariadb | 5.5.68-1.el7 | 3:10.5.22-1.0.1.al8 | |
postgresql | 9.2.24-9.el7_9 | 13.14-1.0.1.al8 | Tidak ada. |
redis | 3.2.12-2.el7 | 6.2.7-1.0.2.al8 | Tidak ada. |
openssl | 1.0.2k_26.el7_9 | 1.1.1k_12.0.1.al8 | Tidak ada. |
Perbedaan komponen sistem penting
Komponen | CentOS 7 x86 | Alibaba Cloud Linux 3 x86 dan Arm64 |
Manajemen paket | yum | dnf |
Kerangka kerja penyaringan paket jaringan | iptables | nftables |
Komponen kontainer | docker | podman Catatan Anda juga dapat memperkenalkan Docker Community Edition (CE) untuk penyebaran mandiri. |
Perbedaan port
Distribusi | Protokol | Port | Layanan |
CentOS 7 | TCP/UDP | 111 | rpcbind |
TCP | 22 | SSH | |
TCP | 25 | smtp | |
UDP | 68 Catatan Port ini didengarkan oleh proses NetworkManager. | dhcp | |
UDP/UDP6 | 323 | chronyd | |
Alibaba Cloud Linux 3 | TCP/UDP/TCP6/UDP6 | 111 | rpcbind |
TCP | 22 | SSH | |
UDP | 68 Catatan Port ini didengarkan oleh proses dhclient. | dhcp | |
UDP/UDP6 | 323 | chronyd | |
TCP/UDP | 5355 | systemd-resolve |
Perbedaan kernel
Parameter sistem sysctl
Tabel berikut menjelaskan perbedaan hanya pada parameter sysctl penting.
Opsi konfigurasi yang diubah
Parameter sistem sysctl | CentOS 7 x86 | Alibaba Cloud Linux 3 x86 dan Arm64 | Deskripsi | Informasi patch komunitas Linux | ||
Nilai | Izin baca dan tulis | Nilai | Izin baca dan tulis | |||
kernel.panic | 0 | rw | 1 | rw | Perilaku default antara CentOS 7 dan Alibaba Cloud Linux 3 berbeda. Opsi ini mengontrol apakah kernel menunggu selama n detik (nilai sysctl) untuk secara otomatis memulai ulang jika terjadi panic. Nilai valid untuk n:
| Tidak ada |
kernel.watchdog_thresh | 10 | rw | 50 | rw | Periode timeout watchdog (dalam detik) antara kedua versi berbeda. Tautan cloud lebih kompleks. Nilai parameter ini diubah di Alibaba Cloud Linux untuk mengurangi kemungkinan peringatan palsu. | Tidak ada |
kernel.nmi_watchdog | 1 | rw | 0 | rw | Status deteksi hard lockup antara kedua versi berbeda. Non-Maskable Interrupts (NMIs) tidak didukung di Elastic Compute Service (ECS), sehingga fitur deteksi hard lockup tidak diperlukan. Jika Anda menggunakan perangkat bare metal dan membutuhkan fitur deteksi hard lockup, Anda dapat mengaktifkannya secara manual. | Tidak ada |
kernel.hung_task_timeout_secs | 120 | rw | 240 | rw | Periode timeout (dalam detik), di mana proses dalam keadaan D (TASK_UNINTERRUPTIBLE) tidak dijadwalkan, antara kedua versi berbeda. Tautan cloud lebih kompleks. Nilai parameter ini diubah di Alibaba Cloud Linux untuk mengurangi kemungkinan peringatan palsu. | Tidak ada |
vm.drop_caches | 0 | rw | Tidak ada | -w | Izin baca dan tulis antara kedua versi berbeda. Opsi ini mendukung perilaku membaca nilai terakhir yang ditulis di CentOS 7, yang menyesatkan pengguna bahwa opsi ini adalah untuk menentukan mode tanpa cache, alih-alih memulai tugas untuk membersihkan cache. Untuk mencegah kesalahpahaman, izin baca dihapus dari Alibaba Cloud Linux 3. |
|
vm.dirty_ratio | 30 | rw | 40 | rw | Nilai opsi ini bervariasi berdasarkan profil atau mode yang digunakan untuk penyetelan kinerja. Di CentOS 7, nilai opsi ini diatur ke 30 ketika daemon tuneD menggunakan profil virtual-guest untuk penyetelan kinerja. Nilai opsi ini diatur ke 40 di Alibaba Cloud Linux ketika mode ECS-performance digunakan untuk penyetelan kinerja. | Tidak ada |
vm.numa_zonelist_order | default | rw | Node | rw | Opsi menjadi tidak valid selama iterasi versi komunitas Linux. Opsi ini mengontrol urutan pemilihan dari setiap node&zone selama alokasi memori sistem. Karena iterasi versi komunitas Linux, kontrol manual tidak lagi diperlukan. |
|
net.ipv4.tcp_mem | Tidak ada | rw | Tidak ada | rw | Opsi ini terdiri dari nilai integer berikut:
Nilai default opsi ini bervariasi berdasarkan ukuran memori sistem. Namun, untuk spesifikasi memori yang sama, ukuran buffer di Alibaba Cloud Linux 3 sekitar setengah dari ukuran buffer di CentOS 7. Hal ini karena algoritma inisialisasi untuk nilai default dimodifikasi selama iterasi versi komunitas Linux. |
|
net.ipv4.tcp_fastopen | 0 | rw | 1 | rw | Nilai default bervariasi berdasarkan versi komunitas Linux. Opsi ini mengontrol apakah sistem dapat mengirim dan menerima pesan terkait TCP Fast Open. Nilai valid:
|
|
net.ipv4.tcp_fack | 1 | rw | 0 | rw | Opsi menjadi tidak valid selama iterasi versi komunitas Linux. Opsi ini digunakan untuk mendukung fitur TCP Forward Acknowledgment (FACK). Fitur FACK digantikan oleh fitur Recent Acknowledgment (RACK). Akibatnya, opsi ini menjadi tidak valid di Alibaba Cloud Linux 3. |
|
net.core.somaxconn | 128 | rw | 4.096 | rw | Nilai default bervariasi berdasarkan versi komunitas Linux. Opsi ini digunakan untuk menentukan panjang maksimum antrian mendengarkan soket. Panjang maksimum antrian mendengarkan soket diubah dari 128 menjadi 4.096 untuk memenuhi persyaratan server. |
|
net.core.default_qdisc | pfifo_fast | rw | fq_codel | rw | Model Disiplin Antrian (qdiscs) default antara kedua versi berbeda. Nilai qdiscs diatur ke Fair Queuing Controlled Delay (FQ_Codel) di Alibaba Cloud Linux 3, yang dapat mencegah masalah bufferbloat. | Tidak ada |
Opsi konfigurasi yang dihapus
Tabel berikut menjelaskan opsi konfigurasi yang digunakan di CentOS 7 tetapi dihapus dari Alibaba Cloud Linux 3.
Parameter sistem sysctl | Nilai | Izin baca dan tulis | Deskripsi | Informasi patch komunitas Linux |
kernel.panic_on_stackoverflow | 0 | rw | Opsi dihapus selama iterasi versi komunitas Linux. Opsi ini digunakan untuk mengontrol deteksi overflow tumpukan kernel. Dalam iterasi versi kernel berikutnya, tumpukan kernel memiliki fitur halaman penjaga untuk melakukan deteksi secara default. Oleh karena itu, opsi ini tidak valid. |
|
kernel.random.read_wakeup_threshold | 64 | rw | Opsi dihapus selama iterasi versi komunitas Linux. |
|
kernel.compat-log | 1 | rw | Opsi dihapus selama iterasi versi komunitas Linux. Mode Virtual 8086 tidak didukung pada arsitektur x86 64-bit. Jika opsi ini dikonfigurasi, log peringatan dicetak saat vm86old() dan vm86() dipanggil. Log peringatan yang tidak perlu dihapus. Opsi ini juga dihapus. |
|
kernel.numa_balancing_settle_count | 4 | rw | Opsi dihapus selama iterasi versi komunitas Linux. Linux menggunakan metrik yang lebih ilmiah untuk membedakan beban untuk berbagai jenis tugas. Oleh karena itu, opsi ini tidak lagi digunakan untuk mengontrol ambang frekuensi. |
|
kernel.sched_shares_window_ns | 10.000.000 | rw | Opsi dihapus selama iterasi versi komunitas Linux. Fitur ini tidak valid di CentOS 7. |
|
kernel.sched_time_avg_ms | 1.000 | rw | Opsi dihapus selama iterasi versi komunitas Linux. Linux menggunakan algoritma pelacakan beban entitas per (PELT) untuk kelas penjadwalan real-time (RT). Algoritma pendahulu dan parameter terkait termasuk opsi tidak lagi digunakan. |
|
vm.enormouspages_treat_as_movable | 0 | rw | Opsi dihapus selama iterasi versi komunitas Linux. Opsi ini dimaksudkan untuk mengizinkan alokasi halaman besar non-migratable dari area ZONE_MOVABLE untuk mengurangi fragmentasi memori. Fitur ini sangat memengaruhi fitur hot swap memori dan oleh karena itu dihapus. |
|
vm.nr_pdflush_threads | 0 | r- | Opsi dihapus selama iterasi versi komunitas Linux. Fitur ini tidak valid di CentOS 7. |
|
net.ipv4.tcp_tw_recycle | 0 | rw | Opsi dihapus selama iterasi versi komunitas Linux. Opsi ini mengizinkan sistem untuk dengan cepat mereklaim soket dalam keadaan TIME-WAIT. Fitur ini diimplementasikan berdasarkan kondisi bahwa cap waktu alamat jarak jauh yang sama meningkat secara monoton, sedangkan fitur drift acak cap waktu NAT dan TCP bertentangan dengan kondisi tersebut. Akibatnya, opsi net.ipv4.tcp_tw_recycle dihapus karena tidak dapat digunakan. |
|
net.ipv4.tcp_thin_dupack | 0 | rw | Opsi ini dihapus selama iterasi versi komunitas Linux. Fitur ini digantikan oleh fitur TCP RACK. |
|
net.ipv4.tcp_max_ssthresh | 0 | rw | Opsi dihapus selama iterasi versi komunitas Linux. Opsi ini dimaksudkan untuk mengubah kecepatan slow start TCP dan sekarang digantikan oleh metode yang lebih efektif dan otomatis. Oleh karena itu, opsi ini dihapus. |
|
fs.negative-dentry-limit | 0 | rw | Opsi ini adalah fitur internal yang dikembangkan di CentOS 7 dan bukan fitur umum dari komunitas Linux. Opsi ini dihapus dari CentOS 8. | Mengapa parameter sysctl negative-dentry-limit tidak tersedia di Red Hat Enterprise Linux 8? |
fs.may_detach_mounts | 0 | rw | Opsi ini adalah fitur internal yang dikembangkan di CentOS 7 dan bukan fitur umum dari komunitas Linux. Opsi ini dihapus dari CentOS 8. | Apa itu parameter fs.may_detach_mounts pada Red Hat Enterprise Linux 7? |
Parameter /sys/
Path | CentOS 7 x86 | Alibaba Cloud Linux 3 x86 dan Arm64 | Deskripsi |
/sys/block/<blk>/queue/read_ahead_kb | 128 | 4.096 |
|
/sys/module/virtio_net/parameters/napi_tx | Tidak ada | Diaktifkan |
|
Parameter cmdline kernel
Parameter cmdline | CentOS 7 x86 | Alibaba Cloud Linux 3 x86 dan Arm64 | Deskripsi |
cgroup.memory=nokmem | Tidak dikonfigurasi | Dikonfigurasi | Parameter ini digunakan untuk menonaktifkan akuntansi memori kernel (CONFIG_MEMCG_KMEM) untuk cgroups. Menonaktifkan akuntansi memori kernel membantu meningkatkan kinerja sistem. Untuk informasi lebih lanjut, kunjungi komunitas OpenAnolis.
|
crashkernel=auto | Dikonfigurasi | Tidak dikonfigurasi | Parameter ini digunakan untuk menghitung ukuran memori yang dicadangkan untuk layanan Kdump kernel secara otomatis.
|
net.ifnames=0 | Dikonfigurasi | Dikonfigurasi | Parameter ini digunakan untuk mengembalikan mode warisan seperti eth0 dan eth1 untuk fitur penamaan antarmuka jaringan dan menonaktifkan fitur penamaan antarmuka jaringan yang dapat diprediksi dari systemd. Secara default, parameter ini dikonfigurasi di CentOS dan Alibaba Cloud Linux. Catatan Perubahan penamaan antarmuka jaringan dapat dengan mudah memengaruhi kompatibilitas. Untuk informasi lebih lanjut, lihat Apa yang harus saya lakukan jika pesan kesalahan "Unsupported network configuration" muncul? |
Parameter Kconfig kernel
Tabel berikut menjelaskan perbedaan hanya pada parameter Kconfig kernel penting.
Parameter Kconfig | CentOS 7 x86 | Alibaba Cloud Linux 3 x86 | Alibaba Cloud Linux 3 Arm64 | Deskripsi |
CONFIG_NR_CPUS | 5.120 | 1.024 | 1.024 | Jumlah maksimum inti CPU yang didukung. Tidak ada instans dengan lebih dari 1.024 inti yang ada di Alibaba Cloud. Perbedaan parameter ini antara kedua versi tidak memiliki dampak apa pun. |
CONFIG_NODES_SHIFT | 10 | 6 | 6 | Jumlah maksimum node non-uniform memory access (NUMA) yang didukung. Tidak ada instans dengan lebih dari 64 node NUMA yang ada di Alibaba Cloud. Perbedaan parameter ini antara kedua versi tidak memiliki dampak apa pun. |
CONFIG_PREEMPT_NONE | Tidak disetel | y | Tidak disetel | Mode preemption kernel. Mode tanpa preemption memberikan kinerja yang lebih baik di cloud, tetapi mode ini dinonaktifkan di Alibaba Cloud Linux 3 untuk Arm64 karena alasan historis. Mulai dari versi kernel 5.10.134-17 di Alibaba Cloud Linux 3, parameter cmdline dapat digunakan untuk mengubah mode preemption default secara dinamis. |
CONFIG_PREEMPT_VOLUNTARY | y | Tidak disetel | y | |
CONFIG_BTRFS_FS | m | Tidak disetel | Tidak disetel | Alibaba Cloud Linux 3 mendukung sistem file Ext4 dan XFS, tetapi tidak mendukung sistem file b-tree (Btrfs). |