Cara Memulai Cluster Kubernetes Lokal Dengan Minikube

  • Post author:
  • Post category:Tutorial

Minikube adalah distribusi Kubernetes minimal yang dirancang untuk penggunaan pengembangan lokal. Ini dikembangkan sebagai bagian dari proyek Kubernetes dan mencakup implementasi semua fitur cluster utama.

Minikube berfungsi di host Linux, Mac, dan Windows. Itu dapat menggunakan wadah atau lingkungan mesin virtual untuk menjalankan cluster Anda dan beban kerjanya. Berikut adalah semua runtime yang didukung:

  • Docker
  • Podman
  • KVM
  • Hyper-V
  • Hyperkit
  • Parallels
  • VirtualBox
  • VMware

Pastikan Anda telah menginstal salah satu teknologi ini sebelum melanjutkan dengan panduan ini. Proses setup Minikube akan secara otomatis mendeteksi runtime yang tersedia dan menerapkan konfigurasi yang sesuai. Kami akan menunjukkan cara menyelesaikan penerapan dan mulai menggunakan Minikube.

Menginstal Minikube

Kami berfokus pada sistem Linux x86 dalam panduan ini. Jika Anda menggunakan Windows, Mac, atau platform CPU yang berbeda, lihat dokumentasi Minikube untuk mendapatkan informasi pengaturan paling detail. Setelah prosedur instalasi awal, penggunaan dasar Minikube identik di semua sistem yang didukung. Pengguna

Linux dapat memilih antara unduhan biner langsung atau paket Debian/RPM. Kami akan menggunakan unduhan biner dalam contoh ini.

$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 $ sudo install minikube-linux-amd64 /usr/local/ bin/minikube

Minikube sekarang akan diinstal dan siap digunakan.

Memulai Cluster Kubernetes Anda

Luncurkan cluster Minikube Anda dengan perintah minikube start:

$ minikube start
minikube v1.25.2 on Ubuntu 20.04
Automatically selected the docker driver. Other choices: kvm2, ssh
Starting control plane node minikube in cluster minikube
Pulling base image ...
Downloading Kubernetes v1.23.3 preload ...

Minikube akan secara otomatis mengunduh dan memulai rilis Kubernetes terbaru. Proses ini dapat memakan waktu beberapa menit untuk diselesaikan. Output perintah akan menunjukkan kemajuan dan menunjukkan tindakan yang diambil Minikube. Pada contoh di atas, Anda dapat melihat driver Docker telah dipilih untuk meng-host cluster Anda. Lihat dokumentasi driver Minikube jika platform container atau tumpukan virtualisasi Anda tidak terdeteksi secara otomatis.

Menggunakan Cluster Anda Dengan Kubectl

Minikube memodifikasi lingkungan Anda sehingga Anda dapat terhubung ke cluster Anda menggunakan instalasi Kubectl yang ada. Ini akan menambahkan konteks minikube ke file KUBECONFIG Anda yang menargetkan cluster Minikube Anda.

Minikube juga menyertakan versi paket Kubectl yang dapat Anda akses dengan perintah minikube kubectl. Ini berguna jika Anda belum menginstal Kubectl atau biner yang ada adalah versi yang berbeda dari cluster Minikube Anda.

# Menggunakan versi Kubectl yang dibundel dengan Minikube 
$ minikube kubectl get pods

Untuk sisa panduan ini, kami’ akan menampilkan perintah kubectl biasa dan menganggapnya menargetkan cluster Minikube Anda. Anda dapat mengatur alias shell untuk menggunakan Kubectl yang dibundel Minikube tanpa mengawalinya dengan minikube setiap kali:

$ alias kubectl="minikube kubectl"

Dengan Minikube live dan Kubectl tersedia, Anda sekarang dapat menambahkan aplikasi ke cluster Kubernetes Anda:

$ kubectl create deployment nginx --image=nginx:latest
deployment.apps/nginx created
$ kubectl expose deployment nginx --type=LoadBalancer --port=80
service/nginx exposed

Perintah layanan minikube menyediakan URL layanan yang terbuka:

$ service minikube nginx --url http://192.168.49.2:31599

Paste URL ke browser web Anda (atau jalankan perintah tanpa flag –url) untuk melihat layanan Anda.

Mengakses Dasbor Kubernetes

Minikube menyediakan dasbor Kubernetes sebagai fitur terintegrasi opsional. Jalankan perintah dasbor minikube untuk mengunduh komponen dasbor dan meluncurkan antarmuka di tab browser baru.

Anda dapat menggunakan dasbor untuk mengelola sumber daya dan memvisualisasikan aktivitasnya. Tetap jalankan perintah dasbor minikube di terminal Anda saat Anda berinteraksi dengan dasbor. Hentikan perintah dengan urutan tombol Ctrl+C setelah Anda selesai.

Mengaktifkan Image Registry

Minikube menyertakan registri gambar sebagai addon opsional. Ini memungkinkan Anda menyimpan gambar kontainer Anda di dalam Minikube, membuatnya tersedia untuk ditempatkan di dalam cluster.

Pertama mengaktifkan addon registri:

$ minikube addons enable registry

Berikutnya memberi tag gambar Anda sehingga merujuk ke registri Minikube. Registri mendengarkan pada port 5000 pada alamat IP yang disediakan oleh perintah ip minikube.

$ docker tag my-image:latest $(minikube ip):5000/my-image:latest

Sebelum Anda dapat mendorong, Docker perlu dikonfigurasi untuk menerima URL sebagai registri tidak aman. Tambahkan ke bidang insecure-registries di dalam file /etc/docker/daemon.json Anda sehingga Docker mengizinkan akses HTTP.

{ "insecure-registries": ["192.168.49.2:5000"] }

Ganti alamat IP dengan yang ditunjukkan oleh perintah ip minikube Anda. Mulai ulang Docker dengan perintah systemctl restart docker.

Sekarang Anda dapat memasukkan image Anda ke dalam registri Minikube:

$ docker push $(minikube ip):5000/my-image:latest

Langkah terakhir diperlukan sebelum Pod di cluster Anda dapat menggunakan image ini. Runtime container Minikube juga harus dikonfigurasi untuk memungkinkan akses tidak aman ke registri. Anda dapat mengaktifkan ini dengan menyertakan flag –insecure-registry saat Anda menjalankan minikube start. Alamat IP harus mengacu pada IP cluster default dari instalasi Minikube Anda. Anda bisa mendapatkannya dengan menjalankan kubectl get services dan melihat CLUSTER-IP untuk layanan kubernetes. Kemudian hentikan Minikube dan restart dengan flag ekstra.

$ kubectl get service
NAME              TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
kubernetes        ClusterIP      10.96.0.1       <none>        443/TCP          63m

$ minikube stop
$ minikube start --insecure-registry 10.96.0.1/24

Mengubah Versi Kubernetes

Minikube default untuk menggunakan rilis Kubernetes terbaru yang tersedia. Untuk beralih ke versi tertentu, sertakan flag –kubernetes-version saat Anda memulai cluster:

$ minikube start --kubernetes-version=v1.23.0

Anda dapat menjalankan beberapa cluster secara bersamaan, masing-masing dengan versi Kubernetes yang berbeda, dengan membuat beberapa profil yang berbeda. Bendera –profile memilih profil yang akan ditargetkan untuk perintah tertentu.

$ minikube start --profile v1.22 --kubernetes-version=v1.22.0
$ minikube start --profile v1.23 --kubernetes-version=v1.23.0
$ minikube --profile v1.22 kubectl get pods

Menggunakan Beberapa Nodes

Minikube mendukung beberapa Node virtual. Ini memungkinkan Anda menguji bagaimana skala aplikasi Anda di seluruh Node yang tersedia tanpa menggunakan perangkat keras fisik baru.

Contoh ini membuat cluster dengan tiga Node:

$ minikube start --nodes 3

Anda dapat memverifikasi bahwa beberapa Node tersedia dengan mendaftarkannya dengan Kubectl:

$ kubectl get nodes
NAME           STATUS   ROLES                  AGE   VERSION
minikube       Ready    control-plane,master   71m   v1.23.3
minikube-m02   Ready    <none>                 71m   v1.23.3
minikube-m03   Ready    <none>                 71m   v1.23.3

Mengaktifkan Remote Access

Minikube tidak menerima lalu lintas masuk secara default. Ini dirancang untuk penggunaan lokal dan tidak dikeraskan untuk melayani permintaan eksternal. Anda masih dapat mengaktifkan akses jarak jauh ke beban kerja di cluster Anda dengan mengubah alamat mendengarkan bidang kontrol. Lakukan ini hanya setelah menilai risiko sepenuhnya – jaringan Anda akan terpapar ke dunia luar.

$ minikube start --listen-address=0.0.0.0

Port forwarding adalah solusi yang lebih aman ketika Anda perlu membuka akses ke layanan tertentu. Gunakan perintah port-forward Kubectl untuk membuat rute dari port host ke salah satu layanan Anda:

$ kubectl port-forward service/nginx 8080:80

Anda sekarang dapat mengunjungi localhost:8080 untuk mengakses layanan NGINX yang dibuat sebelumnya dalam panduan ini. Port 8080 pada host Anda terikat dengan port layanan 80.

Menghapus Minikube

Salah satu kelebihan Minikube adalah kemudahan penghapusannya. Jika Anda memutuskan Minikube bukan untuk Anda, jalankan perintah delete untuk menghapus semua yang ditambahkan ke sistem Anda:

$ minikube delete

Opsi yang tidak terlalu merusak adalah minikube stop yang akan menghentikan cluster Anda tetapi membiarkan semua sumber daya tetap utuh. Anda dapat memulai ulang cluster Anda menggunakan perintah minikube start.

Kesimpulan

Minikube adalah distribusi Kubernetes mandiri yang menggunakan container atau virtualisasi untuk menjalankan cluster di mesin lokal Anda. Ini didukung oleh proyek Kubernetes hulu. Minikube adalah implementasi Kubernetes dengan fitur lengkap yang menggabungkan dasbor Kubernetes, dukungan jaringan, penyimpanan persisten, dan runtime container yang dapat dipertukarkan.

Anda dapat mempelajari lebih lanjut tentang Minikube di dokumentasi resmi. Atau, mulai gunakan perintah Kubectl yang sudah dikenal untuk mengelola cluster Anda dan menerapkan beban kerja baru. Anda sekarang memiliki lingkungan Kubernetes lokal yang berfungsi penuh untuk membangun dan menguji aplikasi Anda.

Itulah berita seputar Cara Memulai Cluster Kubernetes Lokal Dengan Minikube, semoga bermanfaat. Disadur dari HowToGeek.com.