Sobes.tech
Junior — Middle

Компонентҳо ва захираҳо барои насб кардани барномаи Node.js дар платформаи Kubernetes чӣ гунаанд?

sobes.tech AI

Ҷавоб аз AI

Барои паҳн кардани барномаи Node.js дар Kubernetes, компонентҳо ва захираҳои зерин заруранд:

  1. Расми Docker-и барнома — як контейнери бо барномаи Node.js-и шумо, ки дар Kubernetes иҷро мешавад.

  2. Deployment — объекти Kubernetes, ки идора мекунад эҷод ва навсозии pod-ҳо бо барномаи шумо. Дар Deployment нишон дода мешавад:

    • расми контейнер
    • шумораи репликҳо
    • тағирёбони муҳит
  3. Service — объекти, ки дастрасиро ба pod-ҳо таъмин мекунад, одатан тавассути ClusterIP, NodePort ё LoadBalancer.

  4. ConfigMap ва Secret — барои нигоҳдории конфигуратсияҳо ва маълумоти махфӣ (масалан, калидҳо, паролҳо).

  5. PersistentVolume ва PersistentVolumeClaim (агар барнома ба диск доимӣ ниёз дошта бошад).

  6. 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-ро тавсиф кунед ва дар сурати зарурӣ конфигуратсияҳо ва махфиро танзим кунед.