কম্পিউটার টিউটোরিয়াল

Kubernetes-এ PostgreSQL ডিপ্লয়: নির্ভরযোগ্য, স্কেলেবল ডেটাবেসের জন্য ধাপে ধাপ গাইড

PostgreSQL একটি ওপেন-सোর্স RDBMS যা জটিল ডেটাসেট হ্যান্ডেল করার জন্য পরিচিত। Kubernetes কন্টেইনারাইজড অ্যাপ্লিকেশনের ডিপ্লয়মেন্ট, স্কেলিং, এবং ম্যানেজমেন্ট অটোমেট করে। Kubernetes-এ PostgreSQL ডিপ্লয় করলে অটোমেটেড স্কেলিং, রোলিং আপডেট, এবং রেপ্লিকা ও ফেইলওভারের মাধ্যমে উন্নত নির্ভরযোগ্যতা मिलে।

ডিপ্লয়মেন্ট ধাপগুলো

Cluster Image Manifest Deploy Monitor

ধাপ ১: Kubernetes ক্লাস্টার সেটআপ করুন

একটি ক্লাউড প্রোভাইডার ব্যবহার করুন (AWS EKS, GCP GKE, Azure AKS) বা Minikube দিয়ে লোকালি সেটআপ করুন। kubectl ইনস্টল করুন এবং ঐচ্ছিকভাবে Helm।

ধাপ ২: ডিপ্লয়মেন্ট ম্যানিফেস্ট তৈরি করুন

PostgreSQL ডিপ্লয়মেন্ট একটি YAML ফাইলে ডিফাইন করুন এনভায়রনমেন্ট ভেরিয়েবল, ভলিউম, এবং পোর্টের সাথে:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: postgres
spec:
  replicas: 1
  selector:
    matchLabels:
      app: postgres
  template:
    metadata:
      labels:
        app: postgres
    spec:
      containers:
      - name: postgres
        image: postgres:16
        ports:
        - containerPort: 5432
        env:
        - name: POSTGRES_USER
          value: "admin"
        - name: POSTGRES_PASSWORD
          value: "secretpass"
        - name: POSTGRES_DB
          value: "mydb"
        volumeMounts:
        - mountPath: /var/lib/postgresql/data
          name: postgres-storage
      volumes:
      - name: postgres-storage
        persistentVolumeClaim:
          claimName: postgres-pvc
---
apiVersion: v1
kind: Service
metadata:
  name: postgres-svc
spec:
  selector:
    app: postgres
  ports:
  - port: 5432
    targetPort: 5432
    type: ClusterIP

ধাপ ৩: ডিপ্লয় এবং মনিটর করুন

# Deploy
kubectl apply -f postgres-manifest.yaml
# Check pod status
kubectl get pods
# View logs
kubectl logs 
# Monitor resources
kubectl top pods

ধাপ ৪: স্কেল এবং ব্যাকআপ

# Scale replicas
kubectl scale deployment postgres --replicas=3
# Backup using pg_dump
kubectl exec  -- pg_dump -U admin mydb > backup.sql

উপসংহার

Kubernetes-এ PostgreSQL ডিপ্লয় করা রবাস্ট ডেটাবেস ম্যানেজমেন্টকে কন্টেইনার অর্কেস্ট্রেশনের সুবিধাগুলোর সাথে কম্বাইন করে: অটোমেটেড স্কেলিং, রোলিং আপডেট, পার্সিস্টেন্ট স্টোরেজ, এবং ফেইলওভার। আপনার ডিপ্লয়মেন্ট YAML ম্যানিফেস্টে ডিফাইন করুন, kubectl apply দিয়ে ডিপ্লয় করুন, এবং স্ট্যান্ডার্ড Kubernetes কমান্ড দিয়ে মনিটর করুন।

Kubernetes-এ PostgreSQL ডিপ্লয়: নির্ভরযোগ্য, স্কেলেবল ডেটাবেসের জন্য ধাপে ধাপ গাইড
  1. HTML এবং জাভাস্ক্রিপ্ট দিয়ে লেংথ কনভার্টার তৈরি

  2. জাভাস্ক্রিপ্টে map বা forEach ব্যবহার করে অন্য একটি অবজেক্টের ভেতরের অবজেক্টের অ্যারে পার্স করা

  3. Next.js-এ Auth.js এবং Upstash Redis ব্যবহার করে নিরাপদ ইউজার অথেন্টিকেশন

  4. পাওয়ারশেল হেল্প কমান্ড কীভাবে ব্যবহার করবেন