Install Weaviate in Existing Helm-Chart

Description

I am trying to install weaviate as deployment in our existing helm-chart .
Previously I was able to set it up using docker-compose and it worked fine.
However I want to integrate weaviate into our existing kube cluster, within same helm-chart.

I see the documentation on weaviate for kubernetes as stand-alone helm-chart deployment, and could find information to support otherwise. Here is my deployment chat. Appreciate any help with this.

We already have a weaviate-deployment running on v3 client.I am trying to migrate to v4 and so testing out a deployment with different HTTP and GRPC ports

apiVersion: apps/v1
kind: Deployment
metadata:
  name: weaviate-v4
  labels:
    app: weaviate-v4
spec:
  replicas: 1
  selector:
    matchLabels:
      app: weaviate-v4
  template:
    metadata:
      labels:
        app: weaviate-v4
    spec:
      terminationGracePeriodSeconds: 5
      imagePullSecrets:
        - name: regcred
      containers:
        - name: weaviate-v4
          image: semitechnologies/weaviate:1.26.1
          command:
            - /bin/sh
            - -c
            - |
              /bin/weaviate \
              --host 0.0.0.0 \
              --port 4080 \
              --scheme http
              --read-timeout=600s
              --write-timeout=600s
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 4080
            - containerPort: 50052
          env:
           - name: RERANKER_INFERENCE_API
              value: 'http://vectorstore-reranker:8080'
            - name: TRANSFORMERS_INFERENCE_API
              value: "http://vectorstore-transformers:8080"
            - name: QUERY_DEFAULTS_LIMIT
              value: "25"
            - name: PERSISTENCE_DATA_PATH
              value: "/var/lib/weaviate"
            - name: DEFAULT_VECTORIZER_MODULE
              value: "text2vec-transformers"
            - name: ENABLE_MODULES
              value: "text2vec-transformers, text2vec-huggingface, reranker-transformers"
            - name: CLUSTER_HOSTNAME
              value: "node1"
          volumeMounts:
            - mountPath: /var/lib/weaviate
              name: vectorstore-vol
      volumes:
        - name: vectorstore-vol
          persistentVolumeClaim:
            claimName: vectorstore-pvc
---
apiVersion: v1
kind: Service
metadata:
  name: weaviate-v4
  labels:
    app: weaviate-v4
spec:
  type: ClusterIP
  clusterIP: None
  selector:
    app: weaviate-v4

Server Setup Information

  • Weaviate Server Version: 1.26.1
  • Deployment Method: k8s
  • Multi Node? Number of Running Nodes: 1
  • Client Language and Version: Python
  • Multitenancy?: No

Any additional Information

HI! We do have an official helm chart:

Maybe that can help you on customizing it?

1 Like

It worked with creating a separate docker-entrypoint instead of adding args and command in the chart itself to provide custom-configs. Thanks much

1 Like