Компонентҳо ва захираҳо барои насб кардани барномаи Node.js дар платформаи Kubernetes чӣ гунаанд?
sobes.tech AI
Ҷавоб аз AI
Барои паҳн кардани барномаи Node.js дар Kubernetes, компонентҳо ва захираҳои зерин заруранд:
-
Расми Docker-и барнома — як контейнери бо барномаи Node.js-и шумо, ки дар Kubernetes иҷро мешавад.
-
Deployment — объекти Kubernetes, ки идора мекунад эҷод ва навсозии pod-ҳо бо барномаи шумо. Дар Deployment нишон дода мешавад:
- расми контейнер
- шумораи репликҳо
- тағирёбони муҳит
-
Service — объекти, ки дастрасиро ба pod-ҳо таъмин мекунад, одатан тавассути ClusterIP, NodePort ё LoadBalancer.
-
ConfigMap ва Secret — барои нигоҳдории конфигуратсияҳо ва маълумоти махфӣ (масалан, калидҳо, паролҳо).
-
PersistentVolume ва PersistentVolumeClaim (агар барнома ба диск доимӣ ниёз дошта бошад).
-
Ingress (ихтиёрӣ) — барои равон кардани трафики хориҷӣ ба хизматрасониҳо дар дохили кластер.
Масалан барои Deployment оддӣ барои Node.js:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nodejs-app
spec:
replicas: 3
selector:
matchLabels:
app: nodejs-app
template:
metadata:
labels:
app: nodejs-app
spec:
containers:
- name: nodejs-container
image: your-nodejs-image:latest
ports:
- containerPort: 3000
Ва барои дастрасӣ Service:
apiVersion: v1
kind: Service
metadata:
name: nodejs-service
spec:
selector:
app: nodejs-app
ports:
- protocol: TCP
port: 80
targetPort: 3000
type: LoadBalancer
Тавре ки мебинед, барои паҳн кардан, бояд контейнерро омода кунед, manifest-ҳои Deployment ва Service-ро тавсиф кунед ва дар сурати зарурӣ конфигуратсияҳо ва махфиро танзим кунед.