Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Install Kubernetes Cluster Menggunakan Kubespray

Posted on March 13, 2023

Apakah Anda mencari panduan mudah tentang cara menginstal Kubernetes (k8s) menggunakan kubespray?

Panduan langkah demi langkah di halaman ini akan menunjukkan kepada Anda cara menginstal Kubernetes Cluster menggunakan kubespray pada sistem linux.

Kubesprayadalah alat sumber terbuka dan gratis yang menyediakan playbook yang memungkinkan untuk men-deploy dan mengelola cluster Kubernetes. Ini dirancang untuk menyederhanakan proses instalasi klaster Kubernetes di beberapa node, memungkinkan pengguna untuk menerapkan dan mengelola klaster Kubernetes siap produksi dengan cepat dan mudah.

Mendukung berbagai sistem operasi, termasuk Ubuntu, CentOS, Rocky Linux, dan Red Hat Enterprise Linux, dan dapat menerapkan Kubernetes pada berbagai platform, termasuk bare metal, cloud publik, dan cloud pribadi.

Dalam panduan ini, kami menggunakan lab berikut,
Ansible Node (Kubespray Node): Minimal menginstal Ubuntu 22.04 LTS (192.168. 1.240)3 Node Pengontrol: Rocky Linux 9 Terinstal Minimal (192.168.1.241/242/243)2 Node Pekerja: Rocky Linux 9 Terinstal Minimal (192.168.1.244/245)Persyaratan sistem minimum untuk kubesprayMaster Node: 1500 MB RAM, 2 CPU dan Ruang disk kosong 20 GB Node Pekerja: 1024 MB, 2 CPU, ruang disk kosong 20 GB Node yang Memungkinkan: 1024 MB, 1 CPU, dan ruang disk 20 GB Konektivitas internet pada setiap node Reguler dengan hak sudo admin
Tanpa penundaan lebih lanjut, mari d eep selami langkah-langkah instalasi,

Langkah 1) Konfigurasikan Kubespray Node

Login ke sistem Ubuntu 22.04 Anda dan instal yang memungkinkan. Jalankan rangkaian perintah berikut,
$ sudo apt update $ sudo apt install git python3 python3-pip -y $ git clone https://github.com/kubernetes-incubator/kubespray.git $ cd kubespray $ pip install -r requirements .txt

Verifikasi versi yang memungkinkan, run
$ ansible –version

Buat inventaris host, jalankan perintah di bawah dan jangan lupa untuk mengganti alamat IP yang sesuai dengan penerapan Anda.
$ cp -rfp inventarisasi/inventaris sampel/mycluster $ deklarasikan -a IPS =(192.168.1.241 192.168.1.241 192.168.1.242 192.168.1.243 192.168.1.244 192.168.1.245) $ CONFIG_FILE=inventaris/mycluster/hosts.yaml python3 contrib/inventory_builder/inventify@bfile.py. , setel 3 node kontrol dan 2 node pekerja
$ vi inventory/mycluster/hosts.yaml

Simpan dan tutup file

Review dan ubah parameter berikut dalam file “inventory/mycluster/group_vars/k8s_cluster/k8s-cluster.yml”.
kube_version: v1.26.2 kube_network_plugin: calico kube_p ods_subnet: 10.233.64.0/18 kube_service_addresses: 10.233.0.0/18 cluster_name: linuxtechi.local

Untuk mengaktifkan addons seperti dasbor kuberenetes dan pengontrol masuknya, atur parameter sebagai diaktifkan di file “inventory/mycluster/group_vars/k8s_cluster/addons.yml”
$ vi inventory/mycluster/group_vars/k8s_cluster/addons.yml ———– dashboard_enabled: true ingress_nginx_enabled: true ingress_nginx_host_network: true ———–

save dan keluar dari file.

Langkah 2) Salin kunci-SSH dari node yang memungkinkan ke semua node lain

Pertama buat kunci-ssh untuk pengguna lokal Anda di node yang memungkinkan,
$ ssh-keygen

Salin kunci-ssh menggunakan perintah ssh-copy-id,
$ ssh-copy -id [email protected] $ ssh-copy-id [email protected] $ ssh-copy-id [email protected] $ ssh-copy-id [email protected] $ ssh-copy-id [email protected]

Baca Juga: Cara untuk Mengatur Login SSH Tanpa Kata Sandi di Linux dengan Keys

Juga jalankan perintah berikut di setiap node.
$ echo “sysops SEMUA=(SEMUA) NOPASSWD:SEMUA” | sudo tee /etc/sudoers.d/sysops

Langkah 3) Nonaktifkan Firewall dan Aktifkan penerusan IPV4

Untuk menonaktifkan firewall di semua node, jalankan perintah berikut dari node yang memungkinkan,
$ cd kubespray $ ansible all -i inventory/mycluster/hosts.yaml – m shell -a “sudo systemctl stop firewalld && sudo systemctl disable firewalld”

Jalankan mengikuti perintah yang memungkinkan untuk mengaktifkan penerusan IPv4 dan menonaktifkan swap pada semua node,
$ memungkinkan semua -i inventori/mycluster/hosts.yaml -m shell -a ” echo ‘net.ipv4.ip_forward=1’ | sudo tee -a /etc/sysctl.conf” $ memungkinkan semua -i inventori/mycluster/hosts.yaml -m shell -a “sudo sed -i ‘/ swap / s/ ^(.*)$/#1/g’ /etc/fstab && sudo swapoff -a”

Langkah 4) Mulai penerapan Kubernetes

Sekarang, kita siap untuk memulai penerapan kluster Kubernetes, jalankan mengikuti playbook yang memungkinkan dari node yang memungkinkan,
$ cd kubespray $ ansible-playbook -i inventory/mycluster/hosts.yaml –become –become-user=root cluster.yml

Now pantau penerapan nt, mungkin diperlukan waktu 20 hingga 30 menit tergantung pada kecepatan internet dan sumber daya perangkat keras.

Setelah penerapan selesai, kita akan mendapatkan keluaran berikut di layar kita,

Bagus, keluaran di atas mengonfirmasi bahwa penerapan berhasil diselesaikan.

Langkah 5) Akses kluster Kubernetes

Login ke node master pertama, beralih ke pengguna root, jalankan perintah kubectl dari sana,
$ sudo su – # kubectl get nodes # kubectl get pods -A

Output,

Perfect, output di atas mengonfirmasi bahwa semua node dalam cluster dalam keadaan siap dan Pod dari semua namespace aktif dan berjalan. Ini menunjukkan bahwa klaster Kubernetes kita berhasil di-deploy.

Mari kita coba untuk men-deploy deployment berbasis nginx dan mengeksposnya sebagai nodeport, jalankan perintah kubectl berikut
$ kubectl create deployment demo-nginx-kubespray –image=nginx –replicas=2 $ kubectl expose deployment demo-nginx-kubespray –type NodePort –port=80 $ kubectl get  deployments.apps $ kubectl get pods $ kubectl get svc demo-nginx-kubespray

Output dari perintah di atas,

Sekarang coba akses aplikasi nginx ini menggunakan alamat IP dan node pekerja port (30050)

Gunakan perintah curl di bawah atau browser web untuk mengakses aplikasi ini.
$ curl 192.168.1.245:30050

Or

Sempurna, ini mengonfirmasi bahwa aplikasi dapat diakses di luar cluster kami.

Langkah 6) Dasbor Kubernetes (GUI)

Untuk mengakses dasbor Kubernetes , mari kita buat akun layanan terlebih dahulu dan tetapkan hak istimewa admin agar dapat mengakses dasbor menggunakan token.

Buat akun layanan dengan nama ‘ admin-user’ di kube-system namespace.
$ vi dashboard-adminuser.yml apiVersion: v1 kind: ServiceAccount metadata:   name: admin-user   namespace: kube-system

save dan tutup file.
$ kubectl apply -f dashboard-adminuser .yml serviceaccount/admin-user membuat $

Buat pengikatan peran kluster,
$ vi admin-role-binding.yml apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata:   name: admin-user roleRef:   apiGroup: rbac.authorization.k8s.io   kind: ClusterRole   name: cluster-admin subject: – kind: ServiceAccount   name: admin-user   namespace: kube-system

save dan keluar dari file.
$ kubectl apply -f admin-role-binding.yml clusterrolebinding .rbac.authorization.k8s.io/admin-user membuat $

Sekarang, buat token untuk admin-user,
$ kubectl -n kube-system buat token admin-user

Salin token ini dan letakkan di tempat yang aman karena kita akan menggunakan token untuk login Kubernetes dashboard.

Hubungkan ke node master pertama dari sistem Anda menggunakan perintah ssh berikut
$ ssh -L8001:localhost:8001 [email protected]

Catatan : Ganti alamat IP yang sesuai dengan env.

AndaSetelah masuk, alihkan ke pengguna root dan jalankan perintah ‘kubectl proxy’,
$ sudo su – # kubectl proxy Mulai melayani pada 127.0.0.1:8001

Buka browser web sistem Anda, atur pengaturan proxy seperti yang ditunjukkan di bawah ini,

Setelah Anda selesai dengan pengaturan proxy, rekatkan url berikut di browser,

http://localhost:8001/ api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#/logi

Pilih mekanisme login sebagai Token dan tempel token yang telah Anda buat di atas untuk admin-pengguna lalu klik ‘Masuk’

Sekian dari panduan ini, saya harap Anda menganggapnya informatif. Mohon kirimkan pertanyaan dan umpan balik Anda di bagian komentar di bawah.

Terbaru

  • Apa itu Negara Somaliland? Apa Hubungannya dengan Israel?
  • Apa itu Game TheoTown? Game Simulasi Jadi Diktator
  • Inilah Rekomendasi 4 HP Honor Terbaik – Prosesor Snapdragon Tahun 2026
  • Lagi Nyari HP Gaming Murah? Inilah 4 HP Asus RAM 8 GB yang Recomended
  • Ini Trik Main Game Merge Cats Road Trip Sampai Tarik Saldo ke DANA
  • Mau Jadi Digital Writer Pro? Ini Caranya Buat Portofolio Pakai Blog!
  • Ini Cara Login Banyak Akun FB & IG di Satu HP Tanpa Diblokir!
  • Inilah Cara Mengatasi Verval Siswa Silang Merah di RDM versi Hosting
  • HP Tertinggal? Inilah Caranya Login PDUM Langsung dari Laptop, Lebih Praktis!
  • Inilah Cara Tarik Dana dari APK Drama Rush
  • Inilah Cara Mudah Tarik Uang Kertas Biru di Merge Cats ke DANA dan OVO Tanpa Ribet!
  • Apakah Aplikasi Pinjaman KlikKami Penipu? Ada DC Penagih?
  • Kenapa Tentara Romawi Hanya Pakai Armor Kaki Saja?
  • Inilah Alasan Kenapa Beli Follower IG itu TIDAK AMAN!
  • EPIK! Kisah Mesin Bor Tercanggih Takluk di Proyek Terowongan Zojila Himalaya
  • Bingung Cari Lokasi Seseorang? Cek Cara Melacak Pemilik Nomor HP Tanpa Bayar Ini, Dijamin Akurat!
  • Apa itu Logis? Kenapa Logika Bisa Berbeda-beda?
  • Ini Alasan Kenapa Fitur Bing AI Sedang Trending dan Dicari Banyak Orang
  • Sejarah Kerajaan Champa: Bangsa Yang Hilang Tanpa Perang Besar, Kok Bisa?
  • Gini Caranya Dapat Weekly Diamond Pass Gratis di Event M7 Pesta, Ternyata Nggak Pake Modal!
  • Inilah Trik Rahasia Panen Token dan Skin Gratis di Event Pesta Cuan M7 Mobile Legends!
  • Apakah Apk Pinjaman Cepat Galaxy Pinjol Penipu?
  • Cara Tarik Saldo APK Game Clear Blast
  • Apakah APK Game Clear Blast Penipu? Ini Reviewnya
  • Inilah Perbedaan SEO dan GEO + Tips Konten Disukai Google dan AI!
  • Inilah Cara Download Video TikTok 2026 Tanpa Watermark
  • Belum Tahu? Ini Trik Nonton Doods Pro Bebas Iklan dan Cara Downloadnya
  • Misteri DNA Spanyol Terungkap: Jauh Lebih Tua dari Romawi dan Moor!
  • Kenapa Belut Listrik itu Sangat Mematikan
  • Apa itu Tesso Nilo dan Kronologi Konflik Taman Nasional
  • Tailwind’s Revenue Down 80%: Is AI Killing Open Source?
  • Building Open Cloud with Apache CloudStack
  • TOP 1% AI Coding: 5 Practical Techniques to Code Like a Pro
  • Why Your Self-Hosted n8n Instance Might Be a Ticking Time Bomb
  • CES 2026: Real Botics Wants to Be Your Best Friend, but at $95k, Are They Worth the Hype?
  • Inilah Cara Menguasai Tracing dan Evaluasi Aplikasi LLM Menggunakan LangSmith
  • Begini Cara Menggabungkan LLM, RAG, dan AI Agent untuk Membuat Sistem Cerdas
  • Cara Buat Sistem Moderasi Konten Cerdas dengan GPT-OSS-Safeguard
  • Inilah Cara Membuat Aplikasi Web Full-Stack Tanpa Coding dengan Manus 1.5
  • Inilah Cara Melatih AI Agent Agar Bisa Belajar Sendiri Menggunakan Microsoft Agent Lightning
  • Ini Kronologi & Resiko Kebocoran Data WIRED
  • Apa itu Grubhub Crypto Scam? Ini Pengertian dan Kronologi Penipuan yang Catut Nama Grubhub
  • Apa Itu CVE-2025-59374? Mengenal Celah Keamanan ASUS Live Update yang Viral Lagi
  • Apa itu RansomHouse Mario? Ini Pengertian dan Mengenal Versi Baru ‘Mario’ yang Makin Bahaya
  • Inilah Risiko Fatal yang Mengintai Kreator OnlyFans, Dari Doxxing sampai Penipuan!
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ

©2026 emka.web.id | Design: Newspaperly WordPress Theme