Deploy Aplikasi Multi-tier di Kubernetes Cluster

Post kali ini saya akan share cara deploy multi-tier apps di Kubernetes.
Siapkan cluster k8s (kubernetes) di environment Anda, jika belum ada bisa melihat referensi yang sebelumnya saya post berikut.

  1. Deploy deployment MongoDB-nya terlebih dahulu.
    wget https://raw.githubusercontent.com/hamzahbd/nolsatu/master/rsvp-db.yaml
    kubectl create -f rsvp-db.yaml
    kubectl get deployments
  2. Selanjutnya, buat service MongoDB
    vim rsvp-db-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: mongodb
  labels:
    app: rsvpdb
spec:
  ports:
  - port: 27017
    protocol: TCP
  selector:
    appdb: rsvpdb
kubectl create -f rsvp-db-service.yaml
kubectl get services
  1. Kemudian create deployment rsvp frontend-nya

    wget https://raw.githubusercontent.com/hamzahbd/nolsatu/master/rsvp-web.yaml
    kubectl create -f rsvp-web.yaml
    kubectl get deployment
  2. Buat service rsvp frontendnya juga

    vim rsvp-web-service.yaml
    apiVersion: v1
    kind: Service
    metadata:
    name: rsvp
    labels:
    apps: rsvp
    spec:
    type: NodePort
    ports:
    - port: 80
    targetPort: web-port
    protocol: TCP
    selector:
    app: rsvp
    kubectl create -f rsvp-web-service.yaml
    kubectl get services
  3. Jika aplikasinya down, pastikan mempunyai backupnya juga. Scale frontendnya:

    kubectl get deployments
    kubectl scale --replicas=3 -f rsvp-web.yaml
    kubectl get deployments

    enter image description here

  4. Lalu, silakan akses aplikasinya dibrowser, kurang lebih tampilannya seperti berikut ini:
    enter image description here

Selamat mencoba.
Sekian dan terima kasih 🙂

Verified by MonsterInsights