Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> SQL

Kubernetes पर PostgreSQL तैनात करें: विश्वसनीय, स्केलेबल डेटाबेस के लिए चरण-दर-चरण गाइड

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 कमांड के साथ मॉनिटर करें।

  1. CSS3 फ्लेक्सिबल बॉक्स लेआउट्स CSS3 फ्लेक्सिबल बॉक्स लेआउट्स

    CSS3 एक लेआउट मोड फ्लेक्सिबल बॉक्स प्रदान करता है, जिसे आमतौर पर फ्लेक्सबॉक्स कहा जाता है। फ्लेक्सबॉक्स (फ्लेक्सिबल बॉक्स) CSS3 का एक लेआउट मोड है। इस मोड का उपयोग करके, आप जटिल एप्लिकेशन्स और वेब पेजेज़ के लिए आसानी से लेआउट बना सकते हैं। इसमें कंटेनर, फ्लेक्स आइटम्स आदि शामिल हैं। कंटेनर में निम्न

  1. C++ में खोखला पिरामिड और डायमंड पैटर्न प्रिंट करने का प्रोग्राम C++ में खोखला पिरामिड और डायमंड पैटर्न प्रिंट करने का प्रोग्राम

    खोखला पिरामिडपिरामिड में पहली लाइन पर एक स्टार प्रिंट होगा, और अंतिम लाइन पर n संख्या में स्टार। अन्य लाइनों के लिए यह लाइन के शुरू और अंत में ठीक दो स्टार प्रिंट करेगा, और इन दो स्टार के बीच कुछ खाली स्थान होंगे। उदाहरण कोड#include <iostream> using namespace std; int main() { int n, i, j

  1. HTML DOM Input Week min प्रॉपर्टी HTML DOM Input Week min प्रॉपर्टी

    HTML DOM Input Week min प्रॉपर्टी इनपुट वीक के min एट्रिब्यूट को प्राप्त/सेट करती है। सिंटैक्स निम्नलिखित सिंटैक्स है: स्ट्रिंग मान प्राप्त करना inputWeekObject.min min को स्ट्रिंग मान पर सेट करना inputWeekObject.min = YYYY-Www स्ट्रिंग मान (String Values) यहां YYYY-Www निम्नलिखित हो सकते हैं: