#database #mongodb #kubernetes #high-availability
#База данных #mongodb #kubernetes #высокая доступность
Вопрос:
Я хочу запустить высокодоступную базу данных на модулях kubernetes. Я могу запустить mongodb, но после завершения развертывания нам нужно выполнить некоторые ручные шаги для масштабирования mongodb, и я не могу найти какой-либо способ автоматизировать это. Есть ли способ автоматизировать процесс, при котором 3 реплики в kubernetes запускаются как единая база данных HA? Также можно изменить выбор базы данных.
Ответ №1:
Вы могли бы рассмотреть возможность использования бессерверной базы данных, такой как Zetabase (https://zetabase.io ) или даже один из облачных продуктов Redis? Я нахожу, что с k8s это позволяет вам придерживаться гораздо ближе к основным парадигмам k8s без необходимости изменять правила, позволяющие управлять механизмами сохранения.
Если нет, я бы рекомендовал найти какой-либо другой способ избежать самостоятельного управления базой данных HA — это обязательно влечет за собой большую сложность, и проще переложить это на кого-то другого IMO.
Ответ №2:
Возможно, вы захотите проверить Crunchy оператор PostgreSQL
Его задача — упростить развертывание кластеров postgres в Kubernetes и управление ими. Вы можете легко создавать, масштабировать кластеры и среди любых других функций, которые у вас есть, обеспечивать высокую доступность.
Высокая доступность
Безопасный, автоматизированный переход на другой ресурс, поддерживаемый решением высокой доступности на основе распределенного консенсуса. Для повышения отказоустойчивости используется антиподность Pod; вы можете настроить, насколько агрессивным это может быть! Сбойные первичные файлы автоматически исправляются, что позволяет ускорить время восстановления.