Это оператор Kubernetes для K8SSANDRA.
Сайт документации
K8SSANDRA-Operator-это решение для управления Apache Cassandra и DSE на Kubernetes. Apache Cassandra-это хранилище данных NOSQL Premiere NoSQL, предлагающее низкую задержку, георепликацию и способность хранить петабайты данных. Apache Cassandra используется в 90% из списка Fortune 500 в некоторой мере.
DataStax Enterprise, DSE, представляет собой распределение DataStax Apache Cassandra, предлагающее дополнительные функции, такие как расширенная безопасность, поиск и график, а также функции, еще не доступные в Cassandra, такие как Vector Search для генеративных приложений искусственного интеллекта.
K8SSANDRA-Operator позволяет развернуть несколько обработчиков обработки данных Apache Cassandra, охватываемых несколькими кластерами Kubernetes. Намерение этой архитектуры состоит в том, чтобы обеспечить георепликацию для улучшения задержки (путем перемещения данных ближе к конечному пользователю) и доступности (предоставляя несколько обработчиков обработки данных для обслуживания запросов в случае сбоя обработки центров обработки данных или сетевого разделения).
Apache Cassandra предлагает репликацию данных, осведомленных о зоне сбоя и зоны сбоя, которая воспроизводится и заблокирована для производительности и защиты.
Он включает в себя следующую функциональность;
Apache Cassandra может быть развернута в нескольких обработках обработки данных в отдельных регионах или зонах доступности/сбоя. K8SSANDRA-Operator делает это возможным, обеспечивая связь между несколькими кластерами Kubernetes и внедряющим в них обратные данные Cassandra.
Это отличает K8SSSANDRA-оператор от CASS-оператора (который используется внутренне в пределах K8SSANDRA-Operator), который не автоматизирует мультирегионные развертывания.
Один экземпляр K8SSSANDRA-Operator в кластере плоскости управления может управлять многими DCS DATA PLANE DCS в нескольких кластерах Kubernetes и разделяется по нескольким кластерам Cassandra. Кластеры до 1000 узлов были проверены и подтверждены хорошо работать.
Поддерживаются расширенные функции Cassandra, такие как захват данных изменений (CDC), и могут быть настроены с использованием манифестов Kubernetes.
Мониторинг является критической службой в любой распределенной системе, а K8SSAndra-Operator предоставляет богатый набор метрик Apache Cassandra через агента, добавленного в Cassandra JVM.
Интегрируя с вектором, K8SSAndra-Operator позволяет метрикам переходить в местоположение по выбору пользователя, включая существующий экземпляр Prometheus или Mimir. Также поддерживаются множество других протоколов и систем, таких как AMQP, Elasticsearch, Kafka или Redis (см. Здесь для полного списка интеграций).
Метрические трубопроводы могут быть настроены с использованием пользовательских ресурсов Kubernetes, что позволяет создавать несколько трубопроводов для поддержки различных вариантов использования во многих кластерах.
Функции аудита и мониторинга Cassandra, такие как полное ведение журнала запросов, поддерживаются и могут быть настроены прямо из манифеста K8SSAndracluster.
Apache Cassandra требует регулярного технического обслуживания, чтобы гарантировать, что данные последовательно воспроизводятся по всему кластеру. K8SSSANDRA-Operator автоматизирует этот процесс, выполняя ремонт регулярного графика, используя Reaper, широко принятое решение для ремонта анти-энтропии в Кассандре, поддерживаемом командой K8SSANDRA.
Используя K8SSANDRA-Operator, вы можете использовать манифесты Kubernetes для настройки и мониторинга успеха графиков ремонта во многих образных обработках и кластерах Cassandra.
K8SSAndra-Operator использует Medusa, чтобы обеспечить резервную копию SSTALS Cassandra в облачных местах хранения, таких как ведра S3, GCS и лазурное хранилище.
Резервные и восстановительные графики могут быть настроены с использованием манифестов Kubernetes, что позволяет декларативному, проверенному управлению процессами резервного копирования и восстановления.
Stargate для Apache Cassandra предлагает расширенные API, включая интеграцию с структурой моделирования объекта Mongoose для Node.js, GraphQL и REST. Это также может улучшить производительность CQL CQL Cassandra в некоторых кластерных топологиях.
Используя K8SSAndra-Operator, Stargate может быть развернут и настроен с помощью простых манифестов Kubernetes.
Эта документация охватывает все, начиная с детали установки, развернутых компонентов, ссылок на конфигурацию и задач на основе результатов.
Чтобы установить k8ssandra-operator start [здесь] ({{<relref install/">}}).
Обязательно оставьте нам звезду на GitHub!
Оператор K8SSANDRA разрабатывается с помощью многокластерной поддержки в первую очередь. Его также можно использовать и в развертываниях с одним кластером.
Оператор K8SSANDRA состоит из плоскости управления и плоскости данных. Плоскость управления создает и управляет объектом, которые существуют только на сервере API. Плоскость управления не развертывает и не управляет стручками.
ПРИМЕЧАНИЕ. Плоскость управления может быть установлена только в одном кластере, т.е. кластера плоскости управления.
Плоскость данных может быть установлена на любое количество кластеров. Кластер плоскости управления также может функционировать как плоскость данных.
Плоскость данных развертывает и управляет стручками. Кроме того, плоскость данных может напрямую взаимодействовать с управляемыми приложениями. Например, оператор звонит руководству-API для создания клавиш в Кассандре.
На этой диаграмме вы можете увидеть небольшой пример мультикластерного развертывания.

Требуется иметь маршрутируемые IPS POD между кластерами Kubernetes; Однако это требование может быть расслаблено в будущем.
Если вы работаете в облачном провайдере, вы можете получить маршрутируемые IPS, установив кластеры Kubernetes в том же VPC.
Если вы запускаете несколько кластеров, у вас будут маршрутируемые IPS, предполагая, что они работают в той же сети Docker, которая обычно имеет место. Мы используем это для наших многокластерных тестов E2E.
Смотрите руководство по установке.
Для получения дополнительной информации о том, чтобы вступить в K8SSANDRA, пожалуйста, ознакомьтесь с страницей сообщества K8SSANDRA.
Остальная часть этого раздела посвящена разработке самого оператора.
Проверьте полные документы K8SSANDRA на k8ssandra.io.
Начните или присоединяйтесь к дискуссии на форуме на Forum.k8ssandra.io.
Присоединяйтесь к нам на Discord здесь.
Для чего -либо конкретного для K8SSANDRA 1.X, пожалуйста, создайте проблему в репо K8SSANDRA.
Смотрите Руководство по разработке.