Обновление кластера Milvus с помощью Helm Chart
В этом руководстве описано, как обновить кластер Milvus с версии v2.5.x до v3.0-beta с помощью Helm Chart.
Перед началом
Что нового в версии v3.0-beta
Обновление с Milvus 2.5.x до версии 3.0-beta сопряжено со значительными изменениями в архитектуре:
- Объединение координаторов: Устаревшие отдельные координаторы (
dataCoord,queryCoord,indexCoord) были объединены в одинmixCoord - Новые компоненты: введение потокового узла (Streaming Node) для усовершенствованной обработки данных
- Удаление компонентов: удален и объединен
indexNode
Этот процесс обновления обеспечивает правильный переход на новую архитектуру. Для получения дополнительной информации об изменениях в архитектуре см. «Обзор архитектуры Milvus».
Требования
Системные требования:
- Версия Helm >= 3.14.0
- Версия Kubernetes >= 1.20.0
- Кластер Milvus, развернутый с помощью Helm Chart
Требования к совместимости:
- Milvus v2.6.0-rc1 несовместим с v3.0-beta. Прямое обновление с кандидатских версий не поддерживается.
- Если вы в настоящее время используете версию v2.6.0-rc1 и хотите сохранить свои данные, ознакомьтесь с этим руководством сообщества, чтобы получить помощь по миграции.
- Перед обновлением до версии v3.0-beta необходимо выполнить обновление до версии v2.5.16 или более поздней с включенной функцией «
mixCoordinator».
Ограничения, связанные сочередью сообщений: при обновлении до Milvus v3.0-beta необходимо сохранить текущий выбор системы очереди сообщений. Переключение между различными системами очередей сообщений во время обновления не поддерживается. Поддержка смены систем очередей сообщений будет доступна в будущих версиях.
--reset-then-reuse-values при каждом использовании команды helm upgrade.
Процесс обновления
Шаг 1: Обновление диаграммы Helm
Сначала обновите диаграмму Milvus Helm до версии 5.0.22:
helm repo add zilliztech https://zilliztech.github.io/milvus-helm
helm repo update zilliztech
https://milvus-io.github.io/milvus-helm/ был заархивирован. Для версий диаграмм 4.0.31 и более поздних используйте новый репозиторий https://zilliztech.github.io/milvus-helm/.
Чтобы проверить совместимость версии диаграммы Helm с версиями Milvus:
helm search repo zilliztech/milvus --versions
В данном руководстве предполагается, что вы устанавливаете последнюю версию. Если вам необходимо установить конкретную версию, укажите соответствующий параметр --version.
Шаг 2: Обновление до версии v2.5.16 с помощью mixCoordinator
Проверьте, использует ли ваш кластер в настоящее время отдельные координаторы:
kubectl get pods
Если вы видите отдельные поды координаторов (datacoord, querycoord, indexcoord), обновитесь до версии v2.5.16 и включите mixCoordinator:
helm upgrade my-release zilliztech/milvus \
--set image.all.tag="v2.5.16" \
--set mixCoordinator.enabled=true \
--set rootCoordinator.enabled=false \
--set indexCoordinator.enabled=false \
--set queryCoordinator.enabled=false \
--set dataCoordinator.enabled=false \
--reset-then-reuse-values \
--version=4.2.58
Если ваш кластер уже использует mixCoordinator, просто обновите образ:
helm upgrade my-release zilliztech/milvus \
--set image.all.tag="v2.5.16" \
--reset-then-reuse-values \
--version=4.2.58
Дождитесь завершения обновления:
# Verify all pods are ready
kubectl get pods
Шаг 3: Обновление до версии v3.0-beta
Как только версия v2.5.16 начнет успешно работать с mixCoordinator, обновите систему до версии v3.0-beta:
helm upgrade my-release zilliztech/milvus \
--set image.all.tag="v3.0-beta" \
--set streaming.enabled=true \
--set indexNode.enabled=false \
--reset-then-reuse-values \
--version=5.0.22
Проверьте обновление
Убедитесь, что ваш кластер работает под управлением новой версии:
# Check pod status
kubectl get pods
# Verify Helm release
helm list
Для получения дополнительной поддержки обратитесь к документации Milvus или форуму сообщества.