Жаңартылды: 2026-11-07 · 2 мин оқу
Толыққанды Kubernetes көп ресурс талап етеді, ал k3s — бір бинарлық файлдағы сертификатталған Kubernetes дистрибутиві — шағын серверлерде де жұмыс істейді. Оқу кластері үшін бір M сервері (4 vCPU, 8 ГБ RAM) жеткілікті, продакшен үшін үш сервер немесе VDS ұсынамыз.
Серверді орнату (control plane)
curl -sfL https://get.k3s.io | sh -
kubectl get nodes
k3s бірден containerd, Flannel желілік плагинін, Traefik ingress-контроллерін және жергілікті қойманы орнатады.
Жұмыс түйіндерін қосу
Бірінші серверде токенді алыңыз:
cat /var/lib/rancher/k3s/server/node-token
Әр келесі серверде бірінші сервердің IP-і мен токенді қойып, орындаңыз:
curl -sfL https://get.k3s.io | K3S_URL=https://10.0.0.1:6443 K3S_TOKEN=ТОКЕН sh -
6443-портты файрволда тек түйіндеріңіздің мекенжайлары үшін ашыңыз.
Ноутбуктан басқару
Конфигурацияны компьютеріңізге көшіріп, мекенжайды ауыстырыңыз:
scp root@203.0.113.24:/etc/rancher/k3s/k3s.yaml ~/.kube/config
sed -i 's/127.0.0.1/203.0.113.24/' ~/.kube/config
kubectl get nodes
Алғашқы қосымша
app.yaml файлы:
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello
spec:
replicas: 2
selector:
matchLabels: { app: hello }
template:
metadata:
labels: { app: hello }
spec:
containers:
- name: web
image: nginx:stable
ports: [{ containerPort: 80 }]
---
apiVersion: v1
kind: Service
metadata:
name: hello
spec:
selector: { app: hello }
ports: [{ port: 80 }]
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: hello
spec:
rules:
- host: app.example.kz
http:
paths:
- path: /
pathType: Prefix
backend:
service: { name: hello, port: { number: 80 } }
kubectl apply -f app.yaml
kubectl get pods,svc,ingress
app.example.kz DNS-жазбасын сервер IP-іне бағыттаңыз — Traefik 80-портта трафик қабылдай бастайды.
Әрі қарай
- HTTPS: cert-manager орнатып, Let's Encrypt сертификаттарын автоматты түрде шығарыңыз.
- Қойма: деректер үшін PersistentVolumeClaim, бэкаптар үшін бұлтты S3 қоймасын пайдаланыңыз.
- Мониторинг: Grafana бар kube-prometheus-stack.
Бөлінген ядролары бар бірнеше VDS кластері қажет пе? Бізге жазыңыз — конфигурацияны таңдаймыз.