Pada panduan hari ini, Anda akan belajar cara menginstal Kubernetes Cluster pada AlmaLinux 9 langkah demi langkah.
Kubernetes, juga dikenal sebagai K8s, adalah platform orkestrasi kontainer sumber terbuka. Cloud Native Computing Foundation (CNCF) saat ini bertanggung jawab atas pemeliharaannya setelah dikembangkan oleh Google. Banyak bisnis dan organisasi mengandalkan Kubernetes untuk menjalankan aplikasi berbasis cloud mereka.
Kubernetes Cluster terutama terdiri dari satu node master dan banyak node pekerja. Node pekerja bertanggung jawab atas pengoperasian kontainer dan menyelesaikan tugas yang diberikan oleh node master.
Node master bertanggung jawab atas menjalankan tugas seperti penjadwalan dan penskalaan aplikasi, menjaga status cluster, dan menerapkan pembaruan ke dalam tindakan.
Selain itu, Kubernetes dibangun di atas serangkaian primitif atau blok bangunan, seperti layanan, pod, penempatan, dan sebagainya. Blok bangunan ini menjelaskan bagaimana kontainer Anda dalam cluster dikelompokkan, dijadwalkan, diekspos, dan diperbarui.
Alat dan Bahan
- Instal dua server AlmaLinux, satu untuk node master dan satu lagi untuk node pekerja.
- Minimal 2 GB RAM, 2 vCPU, dan 20 GB ruang disk pada kedua server.
- Hak sudo atau root.
- Koneksi internet.
Menginstal Kubernetes Cluster pada AlmaLinux
Instalasi Kubernetes melibatkan penyiapan sistem operasi dan mendapatkan dependensi yang diperlukan untuk konfigurasi cluster. Langkah-langkah dalam tutorial ini menjelaskan bagaimana mempersiapkan workstation AlmaLinux Anda untuk penyebaran cluster Kubernetes.
Catatan: Lakukan setiap langkah dalam panduan ini pada kedua node yang ingin Anda tambahkan ke dalam cluster Kubernetes.
Langkah 1: Konfigurasi Nama Host dan Berkas Host
Node cluster Kubernetes harus memiliki nama host yang berbeda. Ubah nama host mesin master dan pekerja Anda dengan melakukan dua prosedur di bawah ini pada setiap node:
Jalankan perintah hostnamectl untuk mengatur nama host untuk kedua node:
$ sudo hostnamectl set-hostname [nama-host]
Selanjutnya, buka file /etc/hosts dan tambahkan parameter berikut:
[ip-node-master] [nama-host-node-master]
[ip-node-pekerja] [nama-host-node-pekerja]
Untuk menghindari kebingungan di masa depan, pastikan pola penamaan logis. Pengaturan di bawah ini, misalnya, menunjukkan nama dan IP masing-masing untuk node master dan node pekerja:
Langkah 2: Konfigurasi SELinux dan Firewall
Konfigurasikan izin SELinux dan tambahkan port yang diperlukan ke daftar pengecualian firewall untuk mengaktifkan lalu lintas jaringan tanpa gangguan antara node cluster.
Untuk memulai, atur mode SELinux menjadi permissive pada setiap node dengan menggunakan perintah berikut:
$ sudo setenforce 0
$ sudo sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/sysconfig/selinux
Untuk mengonfirmasi perubahan dalam SELinux, jalankan:
$ sudo sestatus
Izinkan port berikut dalam firewall pada node master.
$ sudo firewall-cmd --permanent --add-port={6443,2379,2380,10250,10251,10252,10257,10259,179}/tcp
$ sudo firewall-cmd --permanent --add-port=4789/udp
$ sudo firewall-cmd --reload
Pada node pekerja, izinkan port berikut dalam firewall.
$ sudo firewall-cmd --permanent --add-port={179,10250,30000-32767}/tcp
$ sudo firewall-cmd --permanent --add-port=4789/udp
$ sudo firewall-cmd --reload
Langkah 3: Nonaktifkan Memori Swap pada Setiap Node
Menjalankan node dengan swap yang diaktifkan berdampak pada kinerja cluster. Nonaktifkan memori swap pada AlmaLinux dengan menjalankan perintah berikut, seperti yang ditunjukkan:
$ sudo swapoff -a
$ sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
Langkah 4: Tambahkan Modul Kernel dan Aktifkan IP forwarding
Untuk instalasi Kubernetes yang berhasil, kita harus menambahkan modul kernel overlay dan br_netfilter pada setiap node. Buat file containerd.conf dengan konten berikut agar modul-modul ini dimuat secara otomatis saat reboot.
$ sudo tee /etc/modules-load.d/containerd.conf <<EOF
overlay
br_netfilter
EOF
Selanjutnya, muat modul-modul menggunakan perintah modprobe berikut.
$ sudo modprobe overlay
$ sudo modprobe br_netfilter
Sekarang, aktifkan IP forwarding dan bridge-nf-call-iptables pada setiap node. Buat file berikut dan tambahkan konten di bawah ini.
$ sudo vi /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
Simpan dan keluar dari file. Untuk menerapkan perubahan di atas, jalankan perintah sysctl berikut.
$ sudo sysctl --system
Langkah 5: Instalasi Runtime Containerd
Kubernetes Cluster membutuhkan runtime kontainer, dan containerd adalah salah satu opsi paling umum. Namun, ini tidak tersedia dalam repositori paket default AlmaLinux; oleh karena itu, tambahkan repositori Docker berikut ke setiap node.
$ sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.rep
Sekarang, gunakan utilitas perintah dnf untuk menginstal containerd pada setiap node.
$ sudo dnf install containerd.io -y
Selanjutnya, konfigurasikan containerd agar dapat menggunakan driver systemdgroup. Untuk mencapai itu, jalankan perintah berikut pada kedua node:
$ containerd config default | sudo tee /etc/containerd/config.toml >/dev/null 2>&1
$ sudo sed -i 's/SystemdCgroup \= false/SystemdCgroup \= true/g' /etc/containerd/config.toml
Aktifkan dan restart layanan containerd menggunakan perintah di bawah ini:
$ sudo systemctl restart containerd
$ sudo systemctl enable containerd
Untuk memeriksa apakah layanan containerd berjalan, jalankan
$ sudo systemctl status containerd
Langkah 6: Instalasi Alat Kubernetes
Kubernetes berisi tiga alat utama, termasuk kubeadm, yang mencakup alat inisialisasi cluster: agen node utama, kubelet, dan alat baris perintah Kubernetes, kubectl.
Alat-alat ini tidak tersedia dalam repositori paket default AlmaLinux 9. Jadi, instal alat-alat ini dengan menambahkan repositori berikut ke setiap node.
$ cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.28.3/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.28.3/rpm/repodata/repomd.xml.key
exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
EOF
Catatan: Pada saat penulisan, Kubernetes 1.28 tersedia, itulah mengapa saya sebutkan v1.28 saat menambahkan repo.
Kemudian, jalankan perintah dnf untuk menginstal alat-alat Kubernetes:
$ sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
Sekarang, aktifkan layanan alat Kubernetes pada setiap node agar dapat memulai saat boot:
$ sudo systemctl enable --now kubelet
Langkah 7: Menginstal Kubernetes Cluster pada Alma Linux 9
Sekarang kita dapat menyiapkan cluster Kubernetes. Jalankan perintah kubeadm dari node master untuk memulai cluster Kubernetes.
$ sudo kubeadm init --control-plane-endpoint=master.alma-k8s.com
Selanjutnya, selesaikan konfigurasi cluster pada node master dengan menjalankan perintah berikut:
$ mkdir -p $HOME/.kube
$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
Sekarang, mari gabungkan node pekerja ke dalam cluster. Untuk mencapai itu, jalankan perintah kubeadm dari node pekerja seperti yang ditunjukkan:
$ sudo kubeadm join master.alma-k8s.com:6443 --token b8sf4t.1412n5xxj7xy79jk --discovery-token-ca-cert-hash sha256:018cfa8e18602cfd6670f81be7095605d2ba90c6793b7469e945dbb4
Izinkan node bergabung ke dalam cluster sementara Anda menunggu. Ketika proses selesai, pesan pop akan muncul, menunjukkan node telah bergabung ke dalam cluster.
Langkah 8: Instalasi Ekstensi Jaringan Calico
Calico Network adalah ekstensi yang diperlukan pada cluster Kubernetes untuk mengaktifkan konektivitas pod, membuat layanan DNS berinteraksi dengan cluster, dan menetapkan status node menjadi Siap.
Jalankan perintah berikut hanya dari node master untuk menginstal Calico CNI (Container Network Interface).
$ sudo kubectl apply -f https://raw.githubusercontent.com/projectcalico/calico/v3.26.4/manifests/calico.yaml
Periksa status pod calico:
$ sudo kubectl get pods -n kube-system -l k8s-app=calico-node
Selanjutnya, periksa status node; kali ini, status node harus menunjukkan Siap.
Kesimpulan
Ini menyimpulkan tutorial komprehensif kami tentang menginstal Kubernetes Cluster pada AlmaLinux 9. Kami harap tutorial kami informatif dan telah memberi Anda pemahaman yang diperlukan tentang cara menggunakan node master dan pekerja untuk menyiapkan dan memelihara cluster Kubernetes.
0 komentar:
Posting Komentar