RPM Kubernetes versi di Fedora

Bradley G Smith, Versi F41,rawhide Last review: 2025-09-10

Halaman ini membahas sumber perangkat lunak pihak ketiga yang tidak secara resmi berafiliasi atau didukung oleh Proyek Fedora. Gunakan sumber-sumber ini dengan pertimbangan Anda sendiri. Fedora merekomendasikan penggunaan perangkat lunak bebas dan sumber terbuka serta menghindari perangkat lunak yang terikat oleh paten.

Ringkasan

RPM Kubernetes versi (misalnya kubernetes1.34.rpm, kubernetes1.33.rpm) diperkenalkan di Fedora 41 dan menjadi standar yang digunakan untuk Kubernetes di semua rilis Fedora.

Karena RPM versi merupakan paket berbeda yang berisi kumpulan berkas yang sama, maka dianggap saling bertentangan oleh rpm. Perubahan yang diperlukan pada proses pembaruan paket untuk menangani konflik ini dijelaskan di bawah ini.

Keterbatasan bahasa Go

Setiap versi Kubernetes (pada level minor, misalnya Kubernetes v1.31) dibangun dengan versi bahasa Go tertentu. Setiap rilis Fedora dipasangkan dengan versi Go tertentu. Misalnya, Go 1.22 tersedia di Fedora 40 dan Go 1.23 tersedia di Fedora 41.

Versi Kubernetes baru mungkin dibangun dengan versi Go yang tidak tersedia di rilis Fedora yang lebih lama sehingga menghalangi pembuatan paket versi Kubernetes tersebut untuk rilis Fedora tertentu. Jika versi Go diperbarui, maka versi Kubernetes yang sebelumnya terblokir akan tersedia selama versi Kubernetes tersebut masih didukung.

RPM Kubernetes di Fedora

Tabel di bawah ini mencantumkan RPM Kubernetes yang tersedia untuk setiap rilis Kubernetes, isi dari RPM tersebut, serta catatan tentang tujuan dan peringatan atau pembatasan yang berlaku.

Tabel 1. RPM Kubernetes versi di Fedora 41 (dan yang lebih baru)
Nama RPM Isi Catatan

kubernetes

kubelet

Kubelet adalah runtime Kubernetes pada sebuah node.

kubernetes-kubeadm

kubeadm

Kubeadm menginisialisasi kluster dan menambahkan node baru ke kluster. RPM ini bersifat opsional tetapi direkomendasikan oleh tim Kubernetes. Pasang di setiap node jika digunakan.

kubernetes-client

kubectl

Klien baris perintah Kubernetes. Direkomendasikan pada setiap node yang dikonfigurasi sebagai control plane karena memungkinkan administrator mengelola kluster melalui sesi SSH pada control plane. Pasang pada mesin yang dapat terhubung ke kluster melalui jaringan.

kubernetes-systemd

kube-apiserver, kube-controller-manager, kube-proxy, kube-scheduler

Layanan systemd untuk control-plane dan/atau node Kubernetes. Tidak diperlukan untuk sebagian besar instalasi karena kubeadm akan memasang komponen ini sebagai pod statis. Jika digunakan, pasang di semua node. Gunakan systemctl untuk mengaktifkan kube-proxy di semua node. Aktifkan kube-apiserver, kube-controller-manager, dan kube-scheduler pada node control plane.

Rekomendasi pemasangan RPM versi

Untuk sebagian besar kluster Kubernetes modern, pasang kubernetes, kubernetes-kubeadm, dan kubernetes-client di setiap mesin dalam kluster. Jika ruang penyimpanan terbatas, cukup pasang kubernetes-client pada mesin control plane.

# menggunakan kubernetes 1.34 sebagai contoh
sudo dnf install kubernetes1.34 kubernetes1.34-kubeadm kubernetes1.34-client

Jika melakukan pemasangan Kubernetes secara manual (lihat Kubernetes The Hard Way) maka pasang semua RPM Kubernetes kecuali kubernetes-kubeadm.

# menggunakan kubernetes 1.34 sebagai contoh
sudo dnf install kubernetes1.34 kubernetes1.34-client kubernetes1.34-systemd

Rekomendasi pembaruan RPM versi

Karena rpm menganggap kubernetes1.34 sebagai aplikasi yang berbeda dari kubernetes1.31, namun kedua rpm tersebut menginstal berkas yang sama di lokasi yang sama. Oleh karena itu, kedua rpm tersebut bertentangan dan perintah dnf update biasa tidak akan berhasil mengganti v1.34 dengan v1.31. Ada dua opsi yang tersedia saat menggunakan dnf: hapus/instal atau ganti.

Proses penghapusan dan pemasangan menggunakan perintah dnf standar untuk terlebih dahulu menghapus satu versi Kubernetes dan kemudian menggantinya dengan versi berikutnya. Kedua perintah dnf tersebut juga akan menghapus/memasang semua dependensi yang terkait.

Catatan Penting – ini hanya diperlukan saat mengganti versi minor, yaitu mengganti v1.34 dengan v1.31. Pembaruan pada level patch seperti v1.34.2 ke v1.34.3 menggunakan perintah dnf update

# Menghapus dan mengganti dengan kubernetes 1.34 dan 1.31 sebagai contoh
sudo dnf remove kubernetes1.34 kubernetes1.34-kubeadm kubernetes1.34-client
sudo dnf install kubernetes1.31 kubernetes1.31-kubeadm kubernetes1.31-client

Perintah dnf swap juga dapat digunakan untuk beralih dari satu rilis Kubernetes ke rilis berikutnya. Penggunaan swap menghindari instalasi ulang dependensi, tetapi spesifikasi paket dnf kubernetes1.31* akan menginstal semua paket RPM yang cocok dari repositori, bukan hanya paket RPM yang dihapus oleh spesifikasi paket awal kubernetes1.34*.:w

# Menghapus dan mengganti dengan kubernetes 1.34 dan 1.31 sebagai contoh
sudo dnf swap kubernetes1.34* kubernetes1.31*

Kebijakan penghentian RPM versi

Proyek Kubernetes merilis versi (minor) baru setiap 4 bulan yang kemudian didukung selama satu (1) tahun.

Pembaruan patch untuk setiap versi minor dirilis setiap bulan.

Dua bulan setelah suatu versi Kubernetes mencapai akhir masa dukungannya, RPM yang bersangkutan akan dihentikan di Rawhide mengikuti Proses Penghentian Paket. Paket untuk versi CRI-O dan CRI-Tools yang bersesuaian juga akan dihentikan.