Skip to content
This repository was archived by the owner on Aug 16, 2023. It is now read-only.

Commit add9957

Browse files
author
Bennu
authored
Add insight to Milvus helm (#258)
Signed-off-by: Bennu <yunmei.li@zilliz.com>
1 parent d478edc commit add9957

6 files changed

Lines changed: 183 additions & 2 deletions

File tree

charts/milvus/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: milvus
33
appVersion: "2.0.0-rc.8"
44
kubeVersion: "^1.10.0-0"
55
description: Milvus is an open-source vector database built to power AI applications and vector similarity search.
6-
version: 2.4.2
6+
version: 2.4.3
77
keywords:
88
- milvus
99
- elastic

charts/milvus/templates/_helpers.tpl

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,28 @@ We truncate at 63 chars because some Kubernetes name fields are limited to this
104104
{{ template "milvus.fullname" . }}-pulsar
105105
{{- end -}}
106106

107+
{/*
108+
Create a default fully qualified insight name.
109+
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
110+
*/}}
111+
{{- define "milvus.insight.fullname" -}}
112+
{{ template "milvus.fullname" . }}-insight
113+
{{- end -}}
114+
115+
{{/*
116+
Create milvus insight env name.
117+
*/}}
118+
{{- define "milvus.insight.env" -}}
119+
- name: HOST_URL
120+
{{- if .Values.insight.ingress.enabled }}
121+
value: https://{{ first .Values.insight.ingress.hosts }}
122+
{{- else }}
123+
value: http://{{ template "milvus.insight.fullname" .}}:3000
124+
{{- end }}
125+
- name: MILVUS_URL
126+
value: http://{{ template "milvus.fullname" .}}:19530
127+
{{- end -}}
128+
107129
{{/*
108130
Create chart name and version as used by the chart label.
109131
*/}}
@@ -125,4 +147,4 @@ app.kubernetes.io/managed-by: {{ .Release.Service }}
125147
{{- define "milvus.matchLabels" -}}
126148
app.kubernetes.io/name: {{ include "milvus.name" . }}
127149
app.kubernetes.io/instance: {{ .Release.Name }}
128-
{{- end -}}
150+
{{- end -}}
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
{{- if .Values.insight.enabled }}
2+
apiVersion: apps/v1
3+
kind: Deployment
4+
metadata:
5+
name: {{ template "milvus.insight.fullname" . }}
6+
labels:
7+
{{ include "milvus.labels" . | indent 4 }}
8+
component: "insight"
9+
spec:
10+
replicas: 1
11+
selector:
12+
matchLabels:
13+
{{ include "milvus.matchLabels" . | indent 6 }}
14+
component: "insight"
15+
template:
16+
metadata:
17+
labels:
18+
{{ include "milvus.matchLabels" . | indent 8 }}
19+
component: "insight"
20+
spec:
21+
{{- if .Values.insight.image.pullSecrets }}
22+
imagePullSecrets:
23+
{{- range .Values.insight.image.pullSecrets }}
24+
- name: {{ . }}
25+
{{- end }}
26+
{{- end }}
27+
containers:
28+
- name: insight
29+
image: {{ .Values.insight.image.repository }}:{{ .Values.insight.image.tag }}
30+
imagePullPolicy: {{ .Values.insight.image.pullPolicy }}
31+
ports:
32+
- name: insight
33+
containerPort: 3000
34+
protocol: TCP
35+
env:
36+
{{ include "milvus.insight.env" . | indent 8}}
37+
resources:
38+
{{- toYaml .Values.insight.resources | nindent 10 }}
39+
{{- if and (.Values.affinity) (not .Values.insight.affinity) }}
40+
affinity:
41+
{{ toYaml .Values.affinity | indent 8 }}
42+
{{- end }}
43+
{{- if .Values.insight.affinity }}
44+
affinity:
45+
{{ toYaml .Values.insight.affinity | indent 8 }}
46+
{{- end }}
47+
{{- if and (.Values.tolerations) (not .Values.insight.tolerations) }}
48+
tolerations:
49+
{{ toYaml .Values.tolerations | indent 8 }}
50+
{{- end }}
51+
{{- if .Values.insight.tolerations }}
52+
tolerations:
53+
{{ toYaml .Values.insight.tolerations | indent 8 }}
54+
{{- end }}
55+
{{- end }}
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
{{- if and .Values.insight.enabled .Values.insight.ingress.enabled }}
2+
{{- $insightServiceName := include "milvus.insight.fullname" . -}}
3+
{{- $insightServicePort := .Values.insight.service.port -}}
4+
apiVersion: extensions/v1beta1
5+
kind: Ingress
6+
metadata:
7+
name: {{ template "milvus.insight.fullname" . }}
8+
labels:
9+
{{ include "milvus.labels" . | indent 4 }}
10+
{{- if .Values.insight.ingress.labels }}
11+
{{ toYaml .Values.insight.ingress.labels | indent 4 }}
12+
{{- end }}
13+
{{- with .Values.insight.ingress.annotations }}
14+
annotations:
15+
{{ toYaml . | indent 4 }}
16+
{{- end }}
17+
spec:
18+
{{- if .Values.insight.ingress.tls }}
19+
tls:
20+
{{- range .Values.insight.ingress.tls }}
21+
- hosts:
22+
{{- range .hosts }}
23+
- {{ . | quote }}
24+
{{- end }}
25+
secretName: {{ .secretName }}
26+
{{- end }}
27+
{{- end }}
28+
backend:
29+
serviceName: {{ $insightServiceName }}
30+
servicePort: {{ $insightServicePort }}
31+
{{- if .Values.insight.ingress.hosts }}
32+
rules:
33+
{{- range $host := .Values.insight.ingress.hosts }}
34+
- host: {{ $host }}
35+
http:
36+
paths:
37+
- path: /
38+
pathType: Prefix
39+
backend:
40+
serviceName: {{ $insightServiceName }}
41+
servicePort: {{ $insightServicePort }}
42+
{{- end -}}
43+
{{- end -}}
44+
{{- end }}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
{{- if .Values.insight.enabled }}
2+
apiVersion: v1
3+
kind: Service
4+
metadata:
5+
name: {{ template "milvus.insight.fullname" . }}
6+
labels:
7+
{{ include "milvus.labels" . | indent 4 }}
8+
component: "insight"
9+
spec:
10+
{{- if (or (eq .Values.insight.service.type "ClusterIP") (empty .Values.insight.service.type)) }}
11+
type: ClusterIP
12+
{{- if .Values.insight.service.clusterIP }}
13+
clusterIP: {{ .Values.service.clusterIP }}
14+
{{- end }}
15+
{{- else if eq .Values.insight.service.type "LoadBalancer" }}
16+
type: LoadBalancer
17+
{{- if .Values.insight.service.loadBalancerIP }}
18+
loadBalancerIP: {{ .Values.service.loadBalancerIP }}
19+
{{- end }}
20+
{{- if .Values.insight.service.loadBalancerSourceRanges }}
21+
loadBalancerSourceRanges:
22+
{{ toYaml .Values.insight.service.loadBalancerSourceRanges | indent 4 }}
23+
{{- end -}}
24+
{{- else }}
25+
type: {{ .Values.insight.service.type }}
26+
{{- end }}
27+
ports:
28+
- name: insight
29+
protocol: TCP
30+
port: 3000
31+
targetPort: 3000
32+
selector:
33+
{{ include "milvus.matchLabels" . | indent 4 }}
34+
component: "insight"
35+
{{- end }}

charts/milvus/values.yaml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -377,6 +377,31 @@ knowhere:
377377
## ref: https://github.com/minio/charts/blob/master/README.md
378378
##
379379

380+
insight:
381+
enabled: false
382+
name: insight
383+
image:
384+
repository: milvusdb/milvus-insight
385+
tag: latest
386+
pullPolicy: IfNotPresent
387+
service:
388+
type: ClusterIP
389+
port: 3000
390+
resources: {}
391+
ingress:
392+
enabled: true
393+
annotations: {}
394+
# Annotation example: set nginx ingress type
395+
# kubernetes.io/ingress.class: nginx
396+
labels: {}
397+
hosts:
398+
- milvus-insight.local
399+
tls: []
400+
# - secretName: chart-insight-tls
401+
# hosts:
402+
# - milvus-insight.local
403+
404+
380405
minio:
381406
enabled: true
382407
name: minio

0 commit comments

Comments
 (0)