📋 Table of Contents
- কেন একটি হোম ল্যাব নির্মাণ?
- হার্ডওয়্যার: আপনার আসলে যা প্রয়োজন
- ধাপ 1: Proxmox VE ইনস্টল করুন
- আপনার VM লেআউট তৈরি করার আগে পরিকল্পনা করুন। এখানে একটি কঠিন শুরু আর্কিটেকচার:
- প্রতিটি উবুন্টু ভিএম-এ আপনি কন্টেইনার চালাতে চান:
- k3s
- |||| ব্যবহার করে আপনার নিজস্ব GitHub + GitHub অ্যাকশন সমতুল্য স্ব-হোস্ট করুন৷ গীতা
- 📋 কপি
- 📋 কপি
- Essential Projects to Build
- DevOps হোম ল্যাবের জন্য আমার কোন হার্ডওয়্যার দরকার?
- কেন একটি হোম ল্যাব নির্মাণ?
- হার্ডওয়্যার: আপনার আসলে যা প্রয়োজন
- ধাপ 1: Proxmox VE ইনস্টল করুন
- ধাপ 2: আপনার প্রথম VM তৈরি করুন
- ধাপ 3: ডকার এবং ডকার কম্পোজ ইনস্টল করুন
- ধাপ 4: k3s এর সাথে Kubernetes স্থাপন করুন
- ধাপ 5: CI/CD সেট আপ করুন (Gitea + Woodpecker)
- ধাপ 6: প্রমিথিউস + গ্রাফানার সাথে পর্যবেক্ষণ
- ধাপ 7: একটি বিপরীত প্রক্সি যোগ করুন (Traefik)
- নির্মাণের জন্য প্রয়োজনীয় প্রকল্পগুলি
- FAQ
কেন একটি হোম ল্যাব নির্মাণ?
2026 সালে, DevOps হল প্রযুক্তিতে সর্বোচ্চ অর্থপ্রদানকারী ভূমিকাগুলির মধ্যে একটি — মধ্যম বেতন মার্কিন যুক্তরাষ্ট্রে $140,000–$180,000৷ কিন্তু ব্রেক-ইন করার জন্য কুবারনেটস, সিআই/সিডি, অবকাঠামো-এ-কোড, এবং পর্যবেক্ষণের অভিজ্ঞতা প্রয়োজন। ক্লাউড মুক্ত স্তরগুলি ক্যাপ করা হয়েছে৷ আপনি বিলিং সীমাতে আঘাত করলে টিউটোরিয়ালগুলি বাষ্পীভূত হয়।
একটি হোম ল্যাব এটি সমাধান করে:একটি সর্বদা-চালু, খরচ-ক্যাপড পরিবেশ যেখানে আপনি অবাধে জিনিসগুলি ভাঙেন এবং যেকোনো কোর্সের চেয়ে দ্রুত শিখেন।
হার্ডওয়্যার: আপনার আসলে যা প্রয়োজন
আপনার ব্যয়বহুল সার্ভার হার্ডওয়্যারের প্রয়োজন নেই। এখানে তিনটি বাজেটের স্তর রয়েছে:
| স্তর | হার্ডওয়্যার | খরচ | জন্য সেরা |
|---|---|---|---|
| স্টার্টার | আপনার বিদ্যমান পিসি/ল্যাপটপ (ডুয়াল বুট বা ভিএম) | $0 | ডকার বেসিক শেখা |
| মাঝামাঝি | Beelink SER5 (Ryzen 5 5560U, 32GB RAM, 500GB SSD) | ~$250–300 | সম্পূর্ণ k3s ক্লাস্টার + CI/CD |
| উন্নত | ব্যবহৃত Dell PowerEdge R720 বা HP DL380 (128GB RAM, একাধিক ড্রাইভ) | $200-500 | মাল্টি-নোড k8s, Ceph স্টোরেজ |
বেশিরভাগ লোকের জন্য প্রস্তাবিত:32GB RAM এবং 1TB SSD NVMe সহ একটি সংস্কার করা মিনি পিসি৷ Beelink SER5 Pro বা Intel NUC 12 Pro মিষ্টি স্পট হিট. আপনি যদি পরে মাল্টি-নোড নেটওয়ার্কিং চান তাহলে একটি সস্তা TP-Link TL-SG108 সুইচ ($20) যোগ করুন।
ধাপ 1: Proxmox VE ইনস্টল করুন
প্রক্সমক্স ভিই(ভার্চুয়াল এনভায়রনমেন্ট) হল একটি বিনামূল্যের, ওপেন-সোর্স হাইপারভাইজার যা আপনাকে একটি মেশিনে একাধিক VM এবং LXC কন্টেইনার চালাতে দেয়। এটিকে আপনার ব্যক্তিগত ভিএমওয়্যার হিসাবে ভাবুন – তবে বিনামূল্যে এবং লিনাক্স-ভিত্তিক।
- প্রক্সমক্স আইএসও ডাউনলোড করুনথেকে proxmox.com/downloads
- একটি USB ড্রাইভে ফ্ল্যাশ করুন:
dd if=proxmox-ve_*.iso of=/dev/sdX bs=1M status=progress - USB থেকে বুট করুন, আপনার NVMe SSD এ ইনস্টল করুন
- |||| এ ওয়েব UI অ্যাক্সেস করুন৷ 📋 কপি
https://YOUR_IP:8006
# After install — disable subscription nag (optional)
sed -i.bak "s/NotFound/Active/" /etc/apt/sources.list.d/pve-enterprise.list || true
echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" >> /etc/apt/sources.list.d/pve-no-subscription.list
apt-get update && apt-get dist-upgrade -y
আপনার VM লেআউট তৈরি করার আগে পরিকল্পনা করুন। এখানে একটি কঠিন শুরু আর্কিটেকচার:
ভিএম নাম
| RAM | OS | উদ্দেশ্য | k3s-মাস্টার |
|---|---|---|---|
| উবুন্টু 24.04 | 4GB | কুবারনেটস কন্ট্রোল প্লেন | k3s-কর্মী-1 |
| উবুন্টু 24.04 | 4GB | কুবারনেটস ওয়ার্কলোড নোড | k3s-কর্মী-2 |
| উবুন্টু 24.04 | 4GB | কুবারনেটস ওয়ার্কলোড নোড | gitea |
| উবুন্টু 24.04 | 2GB | গিট সার্ভার + CI/CD | পর্যবেক্ষণ |
| উবুন্টু 24.04 | 2GB | প্রমিথিউস + গ্রাফানা | প্রক্সমক্সে, প্রতিটি ভিএম তৈরি করুন: ক্লিক করুন |
ভিএম তৈরি করুন, আপনার ISO (Ubuntu 24.04) নির্বাচন করুন, উপরে সংস্থানগুলি সেট করুন এবং আরও ভাল পরিচালনার জন্য QEMU এজেন্ট সক্ষম করুন৷ধাপ 3: ডকার এবং ডকার কম্পোজ ইনস্টল করুন
প্রতিটি উবুন্টু ভিএম-এ আপনি কন্টেইনার চালাতে চান:
📋 কপি
# Install Docker Engine (official method)
curl -fsSL https://get.docker.com | sh
# Add your user to docker group (avoid sudo)
usermod -aG docker $USER
newgrp docker
# Install Docker Compose v2 (built-in plugin)
apt-get install -y docker-compose-plugin
# Verify
docker --version # Docker version 27.x
docker compose version # Docker Compose version v2.x
📋 কপি
# docker-compose.yml — Nginx + Portainer (container management UI)
services:
portainer:
image: portainer/portainer-ce:latest
restart: always
ports:
- "9000:9000"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
nginx:
image: nginx:alpine
restart: always
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html:ro
volumes:
portainer_data:
docker compose up -d
# Access Portainer at http://YOUR_IP:9000
k3s
এটি একটি প্রত্যয়িত, লাইটওয়েট কুবারনেটস ডিস্ট্রিবিউশন — একটি একক 70MB বাইনারিতে সমস্ত বাস্তব Kubernetes API। হোম ল্যাব জন্য পারফেক্ট.📋 কপি
# On k3s-master VM:
curl -sfL https://get.k3s.io | sh -
# Get the join token for worker nodes
cat /var/lib/rancher/k3s/server/node-token
# On each k3s-worker VM (replace with your master IP and token):
export K3S_MASTER_IP="192.168.1.100"
export K3S_TOKEN="your-token-here"
curl -sfL https://get.k3s.io | K3S_URL="https://${K3S_MASTER_IP}:6443" K3S_TOKEN="${K3S_TOKEN}" sh -
# On master — verify cluster
kubectl get nodes
# NAME STATUS ROLES AGE VERSION
# k3s-master Ready control-plane,master 1m v1.31.x
# k3s-worker-1 Ready <none> 45s v1.31.x
# k3s-worker-2 Ready <none> 30s v1.31.x
📋 কপি
# nginx-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:alpine
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
type: LoadBalancer
selector:
app: nginx
ports:
- port: 80
targetPort: 80
kubectl apply -f nginx-deployment.yaml
kubectl get pods -o wide # see pods spread across worker nodes
kubectl get svc nginx-service # get the external IP
|||| ব্যবহার করে আপনার নিজস্ব GitHub + GitHub অ্যাকশন সমতুল্য স্ব-হোস্ট করুন৷ গীতা
(Git সার্ভার) এবংকাঠঠোকরা সিআই(পাইপলাইন রানার)।📋 কপিস্বয়ংক্রিয় বিল্ডগুলি ট্রিগার করতে যেকোন Gitea রেপোতে একটি পাইপলাইন ফাইল তৈরি করুন:
# docker-compose.yml on the 'gitea' VM
services:
gitea:
image: gitea/gitea:latest
environment:
- USER_UID=1000
- USER_GID=1000
restart: always
ports:
- "3000:3000" # Web UI
- "222:22" # SSH git
volumes:
- gitea_data:/data
woodpecker-server:
image: woodpeckerci/woodpecker-server:latest
restart: always
ports:
- "8080:8000"
environment:
- WOODPECKER_OPEN=true
- WOODPECKER_GITEA=true
- WOODPECKER_GITEA_URL=http://gitea:3000
- WOODPECKER_AGENT_SECRET=supersecret123
depends_on:
- gitea
woodpecker-agent:
image: woodpeckerci/woodpecker-agent:latest
restart: always
environment:
- WOODPECKER_SERVER=woodpecker-server:9000
- WOODPECKER_AGENT_SECRET=supersecret123
- WOODPECKER_BACKEND=docker
volumes:
- /var/run/docker.sock:/var/run/docker.sock
depends_on:
- woodpecker-server
volumes:
gitea_data:
ধাপ 6: প্রমিথিউস + গ্রাফানার সাথে পর্যবেক্ষণ
# .woodpecker.yml — in your app repo
steps:
test:
image: python:3.12-slim
commands:
- pip install -r requirements.txt
- python -m pytest tests/ -v
build:
image: docker
commands:
- docker build -t myapp:$CI_COMMIT_SHA .
when:
branch: main
deploy:
image: bitnami/kubectl:latest
commands:
- kubectl set image deployment/myapp myapp=myapp:$CI_COMMIT_SHA
when:
branch: main
📋 কপি
Grafana ক্লাস্টার CPU, মেমরি, পড হেলথ, নেটওয়ার্ক I/O, এবং ক্রমাগত ভলিউম ব্যবহারের জন্য ড্যাশবোর্ডের সাথে প্রি-লোড করা হয়।
# Install Helm
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
# Add Prometheus community charts
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
# Install the full monitoring stack (Prometheus + Grafana + Alertmanager)
helm install monitoring prometheus-community/kube-prometheus-stack --namespace monitoring --create-namespace --set grafana.adminPassword=admin123
# Access Grafana
kubectl port-forward -n monitoring svc/monitoring-grafana 3000:80
# Browse to http://localhost:3000 (admin / admin123)
ডজন ডজন পোর্ট নম্বর মনে রাখার পরিবর্তে, হোস্টনাম দ্বারা সমস্ত পরিষেবা রুট করতে Traefik ব্যবহার করুন:
📋 কপি
📋 কপি
# Install Traefik via Helm
helm repo add traefik https://helm.traefik.io/traefik
helm install traefik traefik/traefik --namespace traefik --create-namespace
# IngressRoute for Gitea (Traefik CRD)
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: gitea
namespace: default
spec:
entryPoints:
- web
routes:
- match: Host(`gitea.lab.local`)
kind: Rule
services:
- name: gitea
port: 3000
নির্মাণের জন্য প্রয়োজনীয় প্রকল্পgitea.lab.local, grafana.lab.local, etc. resolve to your Traefik IP. No more port numbers.
Essential Projects to Build
এখন যেহেতু আপনার ল্যাব চলছে, নিয়োগকর্তারা যে দক্ষতাগুলি চান সেগুলিকে শক্তিশালী করতে এই প্রকল্পগুলি তৈরি করুন: ||||৷ একটি ফুল-স্ট্যাক অ্যাপ স্থাপন করুন
- — ক্রমাগত ভলিউম সহ k3s-এ ফ্রন্টএন্ড + API + ডাটাবেসস্বয়ংক্রিয় ব্যাকআপ
- — CronJob যা একটি সাম্বা NAS বা S3-সামঞ্জস্যপূর্ণ স্টোরেজে (MinIO) ডাটাবেস ব্যাক আপ করেকোড হিসাবে পরিকাঠামো
- — টেরাফর্ম + স্ক্র্যাচ থেকে উত্তর দিয়ে আপনার সম্পূর্ণ ল্যাব পুনরায় তৈরি করুনArgoCD এর সাথে GitOps
- – ম্যানুয়াল kubectl কমান্ড প্রতিস্থাপন; সমস্ত পরিবর্তন গিট দিয়ে যায়নিরাপত্তা কঠোরকরণ
- — Falco যোগ করুন (রানটাইম নিরাপত্তা), নেটওয়ার্ক নীতি, RBAC ভূমিকাদুর্যোগ পুনরুদ্ধারের মহড়া
- – একটি নোড মুছুন, স্বয়ংক্রিয়ভাবে পুনরুদ্ধার করুন। আপনার অনুমান পরীক্ষা করুন.🎯 পোর্টফোলিও টিপ:
আপনার হোম ল্যাব হল DevOps আয়ত্তের দ্রুততম পথ। এটি চালু হয়ে গেলে, আমাদের গাইডের সাথে আপনার লিনাক্স দক্ষতাগুলিকে সমতল করুন
লিনাক্স টিউটোরিয়াল, এবং অন্বেষণ করুনক্লাউড কম্পিউটিং গাইডকিভাবে উৎপাদন পরিকাঠামো আপনার হোম নেটওয়ার্কের বাইরে চলে তা বুঝতে।প্রায়শই জিজ্ঞাসিত প্রশ্ন
DevOps হোম ল্যাবের জন্য আমার কোন হার্ডওয়্যার দরকার?
16GB+ RAM সহ যেকোনো মেশিন দিয়ে শুরু করুন। 32GB RAM এবং 1TB NVMe SSD (~$250–300) সহ একটি সংস্কারকৃত মিনি PC (Beelink SER5, Intel NUC) হল Proxmox + k3s + CI/CD একই সাথে চালানোর জন্য একটি মিষ্টি জায়গা।
আমি কি আমার বাড়ির ল্যাবে ডকার বা কুবারনেটস ব্যবহার করব?
উভয়. কন্টেইনার বেসিক শিখতে ডকার দিয়ে শুরু করুন, তারপর k3s যোগ করুন (হালকা কুবারনেটস)। 2026 সালে, বেশিরভাগ DevOps ভূমিকার জন্য k8s জ্ঞান প্রয়োজন — আপনার হোম ল্যাব k3s অভিজ্ঞতা সরাসরি অনুবাদ করে।
Proxmox কি এবং কেন এটি ব্যবহার?
Proxmox VE হল একটি বিনামূল্যের, ওপেন সোর্স হাইপারভাইজার (যেমন VMware)। এটি আপনাকে একটি মেশিনে একাধিক VM চালাতে দেয় — একাধিক কম্পিউটার না কিনে একটি মাল্টি-নোড অবকাঠামো সিমুলেট করার জন্য উপযুক্ত।
আমি কিভাবে বাড়িতে CI/CD অনুশীলন করব?
একটি VM-এ Gitea (স্ব-হোস্টেড Git) + Woodpecker CI ইনস্টল করুন। প্রতিটি গিট পুশ একটি পাইপলাইন ট্রিগার করে — নির্মাণ, পরীক্ষা, k3s তে স্থাপন। এটি প্রকৃত কোম্পানিগুলি উত্পাদনে ঠিক কী করে তা প্রতিফলিত করে।
DevOps চাকরির জন্য কি একটি হোম ল্যাব প্রয়োজন?
কঠোরভাবে নয়, তবে এটি ক্যারিয়ারের সবচেয়ে বড় ত্বরণকারী। আপনি সীমাবদ্ধ অ্যাক্সেস, অবিরাম পরিবেশ, বাস্তব নেটওয়ার্কিং অনুশীলন এবং একটি আকর্ষণীয় সাক্ষাত্কারের গল্প পাবেন। বেশিরভাগ DevOps ইঞ্জিনিয়াররা তাদের হোম ল্যাব দ্বারা সিনিয়র ভূমিকা অবতরণের চাবিকাঠি হিসাবে শপথ করে।
Not strictly, but it’s the biggest career accelerator. You get unrestricted access, persistent environments, real networking practice, and a compelling interview story. Most DevOps engineers swear by their home lab as the key to landing senior roles.
🔗 Share this article
✍️ Leave a Comment