Senin, 09 September 2024

KUBERNETES-add aplikasi

 

BELAJAR KUBERNETES DI LOCAL MENGGUNAKAN MINIKUBE

Bagaimana Cara Menjalankan Kubernetes Menggunakan Minikube di Local?

Belajar Kubernetes di Local Menggunakan Minikube

Daftar Isi:

Semakin cepat-nya perkembangan dunia cloud computing, semakin cepat juga perkembangan komponen atau tools pendukung didalam-nya, salah satu tools yang saat ini sedang populer adalah Kubernetes.

Apa itu Kubernetes?

Kubernetes adalah sebuah platform open-source yang digunakan untuk mengelola aplikasi containerized, Kubernetes memungkinkan kita untuk melakukan deployment, scaling, dan operasi aplikasi containerized secara otomatis.

Akan tetapi untuk belajar Kubernetes, kita tidak harus langsung menggunakan cloud provider seperti GCP, AWS, atau Azure, kita bisa menggunakan Minikube, Minikube adalah sebuah tools yang memungkinkan kita untuk menjalankan Kubernetes di local machine kita, dengan Minikube kita bisa belajar Kubernetes tanpa harus mengeluarkan biaya untuk menyewa server di cloud provider.

Baca lebih jauh apa itu Kubernetes

Apa Itu Minikube?

Minikube merupakan sebuah tools yang memungkinkan kita untuk menjalankan Kubernetes di local machine kita, Minikube akan membuat sebuah cluster Kubernetes yang terdiri dari satu node, dengan Minikube kita bisa belajar Kubernetes tanpa harus mengeluarkan biaya untuk menyewa server di cloud provider.

Minikube dikembangkan oleh Kubernetes Community dan saat ini sudah mendukung berbagai macam OS seperti Linux, MacOS, dan Windows. Secara fitur MiniKube memiliki fitur yang hampir sama dengan Kubernetes yang berjalan di cloud provider, hanya saja MiniKube hanya memiliki satu node saja. Salah satu tujuan-nya Minikube dapat digunakan untuk belajar Kubernetes, melakukan development, dan testing aplikasi di local machine kita.

Selain bisa diinstall di local machine, Minikube juga bisa diinstall di virtual machine, container, atau server fisik. Untuk container yang di-support oleh Minikube adalah Docker, Containerd, dan CRI-O.

Persyaratan Teknis atau Tech Prerequisites

Untuk melakukan instalasi Minikube, ada beberapa persyaratan teknis yang harus dipenuhi, berikut adalah persyaratan teknis yang harus dipenuhi:

  • OS yang didukung: Linux, MacOS, Windows
  • Spesifikasi Minimal:
    • 2 CPU
    • 2 GB RAM
    • 20 GB Disk Space
  • Sudah terinstall container atau virtual machine manager, seperti:
  • Koneksi internet yang stabil

Tahapan Instalasi Minikube

Apabila sudah memenuhi persyaratan teknis, berikut adalah tahapan instalasi Minikube:

  • Download binnary Minikube dari sini, sesuaikan dengan OS yang digunakan dan juga arsitektur CPU yang digunakan.
  • Extract file binnary Minikube yang sudah di download dan pindahkan ke folder yang sudah ada di PATH.
  • Jalankan perintah minikube version untuk memastikan Minikube sudah terinstall dengan benar.

Menjalankan Minikube Version

  • Jalankan perintah minikube start untuk menjalankan Minikube, perintah ini akan membuat sebuah cluster Kubernetes yang terdiri dari satu node. Pada kesempatan ini saya menggunakan Podman sebagai container runtime.

  • Jika sudah berhasil kita dapat mencoba menjalankan perintah kubectl get nodes untuk melihat node yang sudah berhasil dijalankan.

Menjalankan Kubectl Get Nodes

Untuk proses instalasi Minikube memakan kurang lebih waktu 5-10 menit, tergantung dari spesifikasi hardware yang digunakan dan konektivitas internet yang digunakan, kemudian untuk size file yang di download kurang lebih berukuran 1Gb.

Menjalankan Aplikasi di minikube

Seteleh Minikube berhasil diinstall, kita bisa menjalankan aplikasi di Minikube, berikut adalah contoh menjalankan aplikasi di Minikube, pada kesempatan ini saya akan menjalankan aplikasi nginx di Minikube.

Berikut untuk YAML file yang digunakan untuk menjalankan aplikasi nginx di Minikube:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  selector:
    matchLabels:
      app: nginx
  replicas: 2
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - name: nginx
          image: nginx:1.14.2
          ports:
            - containerPort: 80

Kemudian kita perlu menyiapkan service untuk aplikasi nginx, berikut adalah YAML file yang digunakan untuk service nginx:

apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  selector:
    app: nginx
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
  type: LoadBalancer

Sekarang kita bisa menjalankan aplikasi nginx di Minikube dengan menjalankan perintah berikut:

kubectl apply -f deployment.yaml
kubectl apply -f service.yaml

Dan kita bisa melihat aplikasi nginx yang sudah berjalan di Minikube dengan menjalankan perintah berikut:

kubectl get pods
kubectl get svc

Untuk mengaksesnya melalui browser kita bisa menjalankan perintah berikut:

kubectl port-forward service/nginx-service 8080:80

Menjalankan Nginx di MinikubeMengakses Nginx di Minikube

Kesimpulan

Minikube sangat membantu kita dalam belajar Kubernetes, dengan Minikube kita bisa menjalankan Kubernetes di local machine kita tanpa harus mengeluarkan biaya untuk menyewa server di cloud provider, selain itu Minikube juga sangat mudah untuk diinstall dan digunakan, kita hanya perlu menginstall Minikube dan menjalankan perintah minikube start untuk menjalankan Kubernetes di local machine kita.

Referensi

Tidak ada komentar:

Posting Komentar