Docker और Kubernetes

Kubernetes परिचय

Frank Heilmann

Platform Architect and Freelance Instructor

Container Orchestration Tools

कंटेनर ऑर्केस्ट्रेशन टूल्स

  • आधुनिक सॉफ्टवेयर स्टैक्स में अक्सर हजारों कंटेनर होते हैं
  • इन सब को मैनेज करना Container Orchestration कहलाता है, कई container orchestration tools उपलब्ध हैं
  • Kubernetes का मार्केट शेयर अनुमानतः 95% से ऊपर है
Kubernetes परिचय

ऑर्केस्ट्रेशन के लिए Kubernetes

  • Kubernetes कंटेनर ऑर्केस्ट्रेशन की आम चुनौतियाँ हल करता है, जैसे,
    • scheduling और networking (कंटेनर कहाँ डिप्लॉय हों और उन्हें कैसे कनेक्ट करें)
    • कंटेनर से स्टोरेज कैसे जोड़ेँ
  • इसके लिए, Kubernetes Container Engines से इंटरेक्ट करता है।

Kubernetes और Docker

Kubernetes परिचय

Docker और Kubernetes का संबंध

  • अक्सर, Docker आपका पसंदीदा container engine होता है
  • Kubernetes कंटेनर शेड्यूल और मेंटेन करने के लिए Docker से engine की तरह इंटरेक्ट करता है
  • Docker प्रायः दो कामों में उपयोग होता है:
    • Docker images बनाना और अपडेट करना
    • ऐसी images से कंटेनर स्टार्ट करना
  • Kubernetes कभी Docker images नहीं बनाता, यह काम आप Docker से करते हैं
Kubernetes परिचय

Kubernetes Manifests

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 5
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.25.4
        ports:
        - containerPort: 80
  • Kubernetes ऑब्जेक्ट्स (जैसे, कंटेनर) को Kubernetes Manifests में वर्णित किया जाता है
  • Manifests YAML files होते हैं जो बताते हैं कि आपको कौन से ऑब्जेक्ट्स चाहिए, उन्हें कैसे कॉन्फ़िगर करना है, कहाँ शेड्यूल करना है, आदि
  • Manifests declarative होते हैं, यानी आप बताते हैं कि क्या चाहिए, या कौन सा state हासिल करना है
  • वे imperative नहीं हैं, आप यह नहीं बताते कि कैसे करना है
Kubernetes परिचय

kubectl

kubectl और Kubernetes

  • kubectl Kubernetes से इंटरेक्ट करने के लिए एक कमांड-लाइन टूल है
  • kubectl में कई कमांड्स और ऑप्शंस होते हैं
  • kubectl आपका Manifest पढ़ता है, उसे Kubernetes की API से भेजता है, और Kubernetes इच्छित state पाने के लिए क्या करना है, यह compute करता है
  • उच्चारण: "क्यूब कडल" ;-)
Kubernetes परिचय

अभ्यास करते हैं!

Kubernetes परिचय

Preparing Video For Download...