PostgreSQL एक ओपन-सोर्स RDBMS है जो जटिल डेटासेट को संभालने के लिए जाना जाता है। Kubernetes कंटेनराइज्ड एप्लिकेशन की तैनाती, स्केलिंग और प्रबंधन को स्वचालित करता है। Kubernetes पर PostgreSQL तैनात करने से स्वचालित स्केलिंग, रोलिंग अपडेट, और रेप्लिका और फेलओवर के माध्यम से बेहतर विश्वसनीयता मिलती है।
तैनाती चरण
क्लस्टर → इमेज → मैनिफेस्ट → तैनात → मॉनिटर
चरण 1: Kubernetes क्लस्टर सेट अप करें
क्लाउड प्रदाता (AWS EKS, GCP GKE, Azure AKS) का उपयोग करें या Minikube के साथ स्थानीय रूप से सेट अप करें। kubectl और वैकल्पिक रूप से Helm इंस्टॉल करें।
चरण 2: तैनाती मैनिफेस्ट बनाएं
पर्यावरण चर, वॉल्यूम, और पोर्ट के साथ एक YAML फाइल में PostgreSQL तैनाती को परिभाषित करें:
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
चरण 3: तैनात करें और मॉनिटर करें
# तैनात करें kubectl apply -f postgres-manifest.yaml # पॉड स्थिति जांचें kubectl get pods # लॉग देखें kubectl logs# संसाधन मॉनिटर करें kubectl top pods
चरण 4: स्केल और बैकअप
# रेप्लिका स्केल करें kubectl scale deployment postgres --replicas=3 # pg_dump का उपयोग करके बैकअप kubectl exec-- pg_dump -U admin mydb > backup.sql
निष्कर्ष
Kubernetes पर PostgreSQL तैनात करना मजबूत डेटाबेस प्रबंधन को कंटेनर ऑर्केस्ट्रेशन लाभों के साथ जोड़ता है: स्वचालित स्केलिंग, रोलिंग अपडेट, लगातार भंडारण, और फेलओवर। अपनी तैनाती को YAML मैनिफेस्ट में परिभाषित करें, kubectl apply के साथ तैनात करें, और मानक Kubernetes कमांड के साथ मॉनिटर करें।