⏱️2 min read · 270 words

Kubernetes (K8s)2026 সালে স্কেলে কনটেইনারাইজড অ্যাপ্লিকেশন চালানোর জন্য মানক প্ল্যাটফর্ম। প্রতিটি প্রধান ক্লাউড প্রদানকারী পরিচালিত কুবারনেটস অফার করে: EKS (AWS), GKE (Google), AKS (Azure)। এই শিক্ষানবিস গাইড মূল ধারণাগুলি ব্যাখ্যা করে এবং আপনার প্রথম অ্যাপটি একটি ক্লাস্টারে চলছে৷
📋 Table of Contents
মূল ধারণা
- পড:সবচেয়ে ছোট স্থাপনযোগ্য ইউনিট — নেটওয়ার্ক/স্টোরেজ ভাগ করে নেওয়া এক বা একাধিক কন্টেইনার
- স্থাপনা:একাধিক পড প্রতিলিপি পরিচালনা করে, রোলিং আপডেট পরিচালনা করে
- সেবা:পডের সেটের জন্য স্থিতিশীল নেটওয়ার্ক এন্ডপয়েন্ট
- নামস্থান:সম্পদ বিচ্ছিন্নতার জন্য ভার্চুয়াল ক্লাস্টার
- কনফিগম্যাপ/সিক্রেট:কনফিগারেশন এবং সংবেদনশীল ডেটা ইনজেকশন
kubectl এবং Minikube ইনস্টল করুন (স্থানীয় পরীক্ষা)
# Install kubectl
curl -LO https://dl.k8s.io/release/$(curl -Ls https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl
chmod +x kubectl && sudo mv kubectl /usr/local/bin/
# Install Minikube (local cluster)
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
# Start cluster
minikube start --cpus 2 --memory 4096
kubectl cluster-info
আপনার প্রথম অ্যাপ স্থাপন করুন
# deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp
namespace: default
spec:
replicas: 3
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: myapp
image: myapp:1.0
ports:
- containerPort: 8000
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
# service.yaml
apiVersion: v1
kind: Service
metadata:
name: myapp-service
spec:
selector:
app: myapp
ports:
- port: 80
targetPort: 8000
type: LoadBalancer
kubectl apply -f deployment.yaml
kubectl apply -f service.yaml
# Check status
kubectl get pods
kubectl get services
kubectl describe pod <pod-name>
অপরিহার্য kubectl কমান্ড
# Get resources
kubectl get pods -n default
kubectl get deployments
kubectl get services
# View logs
kubectl logs <pod-name>
kubectl logs -f <pod-name> # follow
# Exec into pod
kubectl exec -it <pod-name> -- /bin/bash
# Scale deployment
kubectl scale deployment myapp --replicas=5
# Rolling update (zero downtime)
kubectl set image deployment/myapp myapp=myapp:2.0
# Rollback
kubectl rollout undo deployment/myapp
ConfigMaps এবং গোপনীয়তা
# configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: myapp-config
data:
DATABASE_HOST: postgres-service
APP_ENV: production
---
# secret.yaml
apiVersion: v1
kind: Secret
metadata:
name: myapp-secret
type: Opaque
stringData:
DATABASE_PASSWORD: supersecret
উপসংহার
কুবারনেটস জটিল কিন্তু মূল ধারণাগুলো সোজা। Master Pods, Deployments, and Services, তারপর রাউটিং এর জন্য Ingress এবং স্বয়ংক্রিয়-স্কেলিংয়ের জন্য HorizontalPodAutoscaler যোগ করুন। উৎপাদনের জন্য, নিয়ন্ত্রণ সমতল স্ব-হোস্ট করার পরিবর্তে একটি পরিচালিত পরিষেবা (EKS/GKE/AKS) ব্যবহার করুন।
🔗 Share this article
✍️ Leave a Comment