Skip to content

Commit

Permalink
[milvus-4.1.18] Enabling High Availability for Milvus (#68)
Browse files Browse the repository at this point in the history
* rolling deployment

Signed-off-by: Rachit Chaudhary - r0c0axe <Rachit.Chaudhary@walmart.com>

* Check for activeStandby enabled

Signed-off-by: Rachit Chaudhary - r0c0axe <Rachit.Chaudhary@walmart.com>

---------

Signed-off-by: Rachit Chaudhary - r0c0axe <Rachit.Chaudhary@walmart.com>
Co-authored-by: Rachit Chaudhary - r0c0axe <Rachit.Chaudhary@walmart.com>
  • Loading branch information
Rachit-Chaudhary11 and Rachit Chaudhary - r0c0axe authored Mar 6, 2024
1 parent 75bc174 commit 79653e2
Show file tree
Hide file tree
Showing 8 changed files with 74 additions and 14 deletions.
2 changes: 1 addition & 1 deletion charts/milvus/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: milvus
appVersion: "2.3.10"
kubeVersion: "^1.10.0-0"
description: Milvus is an open-source vector database built to power AI applications and vector similarity search.
version: 4.1.21
version: 4.1.22
keywords:
- milvus
- elastic
Expand Down
26 changes: 13 additions & 13 deletions charts/milvus/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -370,15 +370,15 @@ The following table lists the configurable parameters of the Milvus Root Coordin
| `rootCoordinator.profiling.enabled` | Whether to enable live profiling | `false` |
| `rootCoordinator.activeStandby.enabled` | Whether to enable active-standby | `false` |
| `rootCoordinator.extraEnv` | Additional Milvus Root Coordinator container environment variables | `[]` |
| `rootCoordinator.service.type` | Service type | `ClusterIP` |
| `rootCoordinator.service.port` | Port where service is exposed | `19530` |
| `rootCoordinator.service.annotations` | Service annotations | `{}` |
| `rootCoordinator.service.labels` | Service custom labels | `{}` |
| `rootCoordinator.service.clusterIP` | Internal cluster service IP | `unset` |
| `rootCoordinator.service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `unset` |
| `rootCoordinator.service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to lb (if supported) | `[]` |
| `rootCoordinator.service.externalIPs` | Service external IP addresses | `[]` |

| `rootCoordinator.service.type` | Service type | `ClusterIP` |
| `rootCoordinator.service.port` | Port where service is exposed | `19530` |
| `rootCoordinator.service.annotations` | Service annotations | `{}` |
| `rootCoordinator.service.labels` | Service custom labels | `{}` |
| `rootCoordinator.service.clusterIP` | Internal cluster service IP | `unset` |
| `rootCoordinator.service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `unset` |
| `rootCoordinator.service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to lb (if supported) | `[]` |
| `rootCoordinator.service.externalIPs` | Service external IP addresses | `[]` |
| `rootCoordinator.strategy` | Deployment strategy configuration | RollingUpdate |
### Milvus Query Coordinator Deployment Configuration

The following table lists the configurable parameters of the Milvus Query Coordinator component and their default values.
Expand All @@ -402,7 +402,7 @@ The following table lists the configurable parameters of the Milvus Query Coordi
| `queryCoordinator.service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `unset` |
| `queryCoordinator.service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to lb (if supported) | `[]` |
| `queryCoordinator.service.externalIPs` | Service external IP addresses | `[]` |

| `queryCoordinator.strategy` | Deployment strategy configuration | RollingUpdate |
### Milvus Query Node Deployment Configuration

The following table lists the configurable parameters of the Milvus Query Node component and their default values.
Expand Down Expand Up @@ -444,7 +444,7 @@ The following table lists the configurable parameters of the Milvus Index Coordi
| `indexCoordinator.service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `unset` |
| `indexCoordinator.service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to lb (if supported) | `[]` |
| `indexCoordinator.service.externalIPs` | Service external IP addresses | `[]` |

| `indexCoordinator.strategy` | Deployment strategy configuration | RollingUpdate |
### Milvus Index Node Deployment Configuration

The following table lists the configurable parameters of the Milvus Index Node component and their default values.
Expand Down Expand Up @@ -486,7 +486,7 @@ The following table lists the configurable parameters of the Milvus Data Coordin
| `dataCoordinator.service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `unset` |
| `dataCoordinator.service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to lb (if supported) | `[]` |
| `dataCoordinator.service.externalIPs` | Service external IP addresses | `[]` |

| `dataCoordinator.strategy` | Deployment strategy configuration | RollingUpdate |
### Milvus Data Node Deployment Configuration

The following table lists the configurable parameters of the Milvus Data Node component and their default values.
Expand Down Expand Up @@ -526,7 +526,7 @@ The following table lists the configurable parameters of the Milvus Mixture Coor
| `mixCoordinator.service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `unset` |
| `mixCoordinator.service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to lb (if supported) | `[]` |
| `mixCoordinator.service.externalIPs` | Service external IP addresses | `[]` |

| `mixCoordinator.strategy` | Deployment strategy configuration | RollingUpdate |
### Pulsar Configuration

This version of the chart includes the dependent Pulsar chart in the charts/ directory.
Expand Down
9 changes: 9 additions & 0 deletions charts/milvus/templates/datacoord-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,18 @@ metadata:
{{ include "milvus.ud.annotations" . | indent 4 }}

spec:
{{- if ge (int .Values.dataCoordinator.replicas) 0 }}
replicas: {{ .Values.dataCoordinator.replicas }}
{{- end }}
{{- if .Values.dataCoordinator.activeStandby.enabled}}
{{- with .Values.dataCoordinator.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- else }}
strategy:
type: Recreate
{{- end }}
selector:
matchLabels:
{{ include "milvus.matchLabels" . | indent 6 }}
Expand Down
9 changes: 9 additions & 0 deletions charts/milvus/templates/indexcoord-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,18 @@ metadata:
{{ include "milvus.ud.annotations" . | indent 4 }}

spec:
{{- if ge (int .Values.indexCoordinator.replicas) 0 }}
replicas: {{ .Values.indexCoordinator.replicas }}
{{- end }}
{{- if .Values.indexCoordinator.activeStandby.enabled}}
{{- with .Values.indexCoordinator.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- else }}
strategy:
type: Recreate
{{- end }}
selector:
matchLabels:
{{ include "milvus.matchLabels" . | indent 6 }}
Expand Down
9 changes: 9 additions & 0 deletions charts/milvus/templates/mixcoord-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,18 @@ metadata:
{{ include "milvus.ud.annotations" . | indent 4 }}

spec:
{{- if ge (int .Values.mixCoordinator.replicas) 0 }}
replicas: {{ .Values.mixCoordinator.replicas }}
{{- end }}
{{- if .Values.mixCoordinator.activeStandby.enabled}}
{{- with .Values.mixCoordinator.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- else }}
strategy:
type: Recreate
{{- end }}
selector:
matchLabels:
{{ include "milvus.matchLabels" . | indent 6 }}
Expand Down
9 changes: 9 additions & 0 deletions charts/milvus/templates/querycoord-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,18 @@ metadata:
{{ include "milvus.ud.annotations" . | indent 4 }}

spec:
{{- if ge (int .Values.queryCoordinator.replicas) 0 }}
replicas: {{ .Values.queryCoordinator.replicas }}
{{- end }}
{{- if .Values.queryCoordinator.activeStandby.enabled}}
{{- with .Values.queryCoordinator.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- else }}
strategy:
type: Recreate
{{- end }}
selector:
matchLabels:
{{ include "milvus.matchLabels" . | indent 6 }}
Expand Down
9 changes: 9 additions & 0 deletions charts/milvus/templates/rootcoord-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,18 @@ metadata:
{{ include "milvus.ud.annotations" . | indent 4 }}

spec:
{{- if ge (int .Values.rootCoordinator.replicas) 0 }}
replicas: {{ .Values.rootCoordinator.replicas }}
{{- end }}
{{- if .Values.rootCoordinator.activeStandby.enabled}}
{{- with .Values.rootCoordinator.strategy }}
strategy:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- else }}
strategy:
type: Recreate
{{- end }}
selector:
matchLabels:
{{ include "milvus.matchLabels" . | indent 6 }}
Expand Down
15 changes: 15 additions & 0 deletions charts/milvus/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -273,6 +273,9 @@ rootCoordinator:
enabled: false # Enable live profiling
activeStandby:
enabled: false # Enable active-standby when you set multiple replicas for root coordinator
# Deployment strategy, default is RollingUpdate
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#rolling-update-deployment
strategy: {}

service:
port: 53100
Expand All @@ -295,6 +298,9 @@ queryCoordinator:
enabled: false # Enable live profiling
activeStandby:
enabled: false # Enable active-standby when you set multiple replicas for query coordinator
# Deployment strategy, default is RollingUpdate
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#rolling-update-deployment
strategy: {}

service:
port: 19531
Expand Down Expand Up @@ -341,6 +347,9 @@ indexCoordinator:
enabled: false # Enable live profiling
activeStandby:
enabled: false # Enable active-standby when you set multiple replicas for index coordinator
# Deployment strategy, default is RollingUpdate
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#rolling-update-deployment
strategy: {}

service:
port: 31000
Expand Down Expand Up @@ -387,6 +396,9 @@ dataCoordinator:
enabled: false # Enable live profiling
activeStandby:
enabled: false # Enable active-standby when you set multiple replicas for data coordinator
# Deployment strategy, default is RollingUpdate
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#rolling-update-deployment
strategy: {}

service:
port: 13333
Expand Down Expand Up @@ -428,6 +440,9 @@ mixCoordinator:
enabled: false # Enable live profiling
activeStandby:
enabled: false # Enable active-standby when you set multiple replicas for Mixture coordinator
# Deployment strategy, default is RollingUpdate
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#rolling-update-deployment
strategy: {}

service:
annotations: {}
Expand Down

0 comments on commit 79653e2

Please sign in to comment.