sql >> Databasteknik >  >> NoSQL >> Redis

Hur distribuerar man en node.js med redis på kubernetes?

Jag tror att jag kom på en lösning (med hjälp av en distribution och en tjänst).

För min distribution använde jag två behållare (webapp + redis) inom en Pod, eftersom det inte är meningsfullt att en webbapp körs utan aktiv redis-instans, och dessutom ansluter den till redis när programmet startar. Jag kan ha fel i detta resonemang, så rätta mig gärna om du tycker något annat.

Här är min distribution:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app-deployment
spec:
  selector:
    matchLabels:
      app: my-app-deployment
  template:
    metadata:
      labels:
        app: my-app-deployment
    spec:
      containers:
      - name: redis
        image: redis:latest
        ports:
        - containerPort: 6379
        volumeMounts:
        - mountPath: /srv/www
          name: redis-storage
      - name: my-app
        image: my-app:latest
        imagePullPolicy: Never
        ports:
        - containerPort: 8080
      volumes:
      - name: redis-storage
        emptyDir: {}

Och här är tjänstdefinitionen:

apiVersion: v1
kind: Service
metadata:
  name: my-app-service
spec:
  ports:
  - port: 8080
    protocol: TCP
  type: NodePort
  selector:
    app: my-app-deployment

Jag skapar distributionen med:kubectl create -f deployment.yaml Sedan skapar jag tjänsten med kubectl create -f service.yaml Jag läser IP:n med minikube ip och extrahera porten från utdata från kubectl describe service my-app-service .



  1. Sparar numpy array i mongodb

  2. Hur ändrar man strukturen för MongoDB:s kartreducerande resultat?

  3. Bygg en reaktiv publikation med ytterligare fält i varje dokument

  4. MongoDB:Hur uppdaterar man flera dokument med ett enda kommando?