이것은 K8Ssandra의 Kubernetes 연산자입니다.
문서 사이트
K8Ssandra-Operator는 Kubernetes에서 Apache Cassandra 및 DSE를 관리하는 턴키 솔루션입니다. Apache Cassandra는 프리미어 와이드 칼럼 NOSQL 데이터 저장소로, 낮은 대기 시간, 지리적 복제 및 페타 바이트의 데이터를 저장하는 용량을 제공합니다. Apache Cassandra는 Fortune 500의 90%에서 일부 용량으로 사용되고 있습니다.
DATASTAX ENTERPRISE, DSE는 Apache Cassandra의 DataStax 배포판으로, Advanced Security, Search 및 Graph와 같은 추가 기능뿐만 아니라 Cassandra와 같은 기능을 제공하지 않은 기능을 생성 AI 애플리케이션에 대한 벡터 검색으로 아직 사용할 수 없습니다.
K8SSANDRA-OPERATOR는 여러 Kubernetes 클러스터에 걸쳐있는 여러 Apache Cassandra 데이터 센터를 배치 할 수 있습니다. 이 아키텍처의 의도는 지리적 복제를 제공하여 (데이터가 최종 사용자에게 더 가깝게 이동함으로써) 대기 시간을 향상시키고 (데이터 센터 실패 또는 네트워크 파티션의 경우 여러 데이터 센터에게 요청을 제공함으로써) 가용성을 제공하는 것입니다.
Apache Cassandra는 랙 및 실패 영역 인식 데이터 복제를 제공하며, 이는 성능 및 보호를 위해 복제 및 샤드를 모두 제공합니다.
다음 기능을 통합합니다.
Apache Cassandra는 별도의 지역 또는 가용성/실패 영역에서 여러 데이터 센터에 배치 될 수 있습니다. K8ssandra-operator는 여러 Kubernetes 클러스터 간의 통신을 가능하게하고 Cassandra 데이터 센터를 배포하여이를 가능하게합니다.
이것은 K8SSANDRA 운영기를 CASS-OPERATOR (K8SSANDRA-OPERATOR 내에서 내부적으로 사용)와 다중 지역 배치를 자동화하지 않습니다.
제어 평면 클러스터의 단일 K8SSANDRA 운영자 인스턴스는 여러 Kubernetes 클러스터에서 많은 데이터 평면 DC를 관리하고 여러 Cassandra 클러스터를 통해 분리 할 수 있습니다. 최대 1000 개의 노드 클러스터가 테스트되고 잘 수행되는 것으로 확인되었습니다.
CDC (Change Data Capture)와 같은 고급 Cassandra 기능은 지원되며 Kubernetes 매니페스트를 사용하여 구성 할 수 있습니다.
모니터링은 모든 분산 시스템에서 중요한 서비스이며 K8Ssandra-Operator는 Cassandra JVM에 추가 된 에이전트를 통해 풍부한 Apache Cassandra 지표 제품군을 제공합니다.
k8ssandra-operator를 사용하면 벡터와 통합하여 기존 Prometheus 또는 Mimir 인스턴스를 포함하여 메트릭이 사용자가 선택한 위치로 흐를 수 있습니다. AMQP, Elasticsearch, Kafka 또는 Redis와 같은 다양한 다른 프로토콜 및 시스템 (전체 통합 목록은 여기 참조)도 지원됩니다.
메트릭 파이프 라인은 Kubernetes 사용자 정의 리소스를 사용하여 구성 할 수 있으므로 여러 클러스터에서 다양한 사용 사례를 지원할 수있는 여러 파이프 라인을 생성 할 수 있습니다.
전체 쿼리 로깅과 같은 Cassandra 감사 및 모니터링 기능은 지원되며 K8Ssandracluster Manifest에서 직접 구성 할 수 있습니다.
Apache Cassandra는 클러스터 전체에서 데이터를 일관되게 복제 할 수 있도록 정기적 인 유지 보수가 필요합니다. K8SSANDRA-OPERATOR는 K8SSANDRA 팀이 유지 관리하는 Cassandra의 반 중심 수리를위한 널리 채택 된 솔루션 인 Reaper를 사용하여 정기적 인 스케줄로 수리를 통해이 프로세스를 자동화합니다.
K8Ssandra-Operator를 사용하여 Kubernetes Manifests를 사용하여 많은 Cassandra 데이터 센터 및 클러스터에서 수리 일정의 성공을 구성하고 모니터링 할 수 있습니다.
K8SSANDRA-OPERATOR는 MEDUSA를 사용하여 S3 버킷, GC 및 Azure Storage와 같은 클라우드 스토리지 위치로 Cassandra의 sstables를 백업 할 수 있습니다.
백업 및 복원 일정은 Kubernetes Manifests를 사용하여 구성 할 수 있으므로 백업 및 복원 프로세스의 선언적이고 감사 가능한 관리가 가능합니다.
Apache Cassandra의 Stargate는 Node.js, GraphQL 및 REST 용 Mongoose 객체 모델링 프레임 워크와의 통합을 포함한 고급 API를 제공합니다. 또한 일부 클러스터 토폴로지에서 Cassandra의 기본 CQL 성능을 향상시킬 수 있습니다.
K8SSANDRA 운영기를 사용하여 Stargate는 간단한 Kubernetes Manifests를 통해 배포 및 구성 할 수 있습니다.
이 문서는 설치 세부 사항, 배포 된 구성 요소, 구성 참조 및 가이드 결과 기반 작업의 모든 내용을 다룹니다.
k8ssandra-operator를 설치하려면 [here] ({<relref "install/">}}).
Github에 별을 남겨 두십시오!
K8SSANDRA 운영자는 먼저 멀티 클러스터 지원으로 개발되고 있습니다. 단일 클러스터 배포에서도 원활하게 사용할 수 있습니다.
K8SSANDRA 연산자는 제어 평면과 데이터 평면으로 구성됩니다. 제어 평면은 API 서버에만 존재하는 객체를 생성하고 관리합니다. 제어 평면은 포드를 배포하거나 관리하지 않습니다.
참고 : 제어 평면은 하나의 클러스터, 즉 제어 평면 클러스터로만 설치할 수 있습니다.
데이터 평면은 모든 클러스터에 설치할 수 있습니다. 제어 평면 클러스터는 또한 데이터 평면으로 기능 할 수 있습니다.
데이터 평면은 포드를 배포하고 관리합니다. 또한 데이터 평면은 관리되는 응용 프로그램과 직접 상호 작용할 수 있습니다. 예를 들어, 운영자는 Management-API를 호출하여 Cassandra에서 열쇠 공간을 만듭니다.
이 다이어그램에서는 멀티 클러스터 배포의 작은 예를 볼 수 있습니다.

Kubernetes 클러스터 사이에 경로가 가능한 POD IP가 필요합니다. 그러나이 요구 사항은 향후 완화 될 수 있습니다.
클라우드 제공 업체에서 실행중인 경우 동일한 VPC에 Kubernetes 클러스터를 설치하여 라우팅 가능한 IP를 얻을 수 있습니다.
여러 종류의 종류 클러스터를 로컬로 실행하면 일반적으로 경우와 동일한 Docker 네트워크에서 실행된다고 가정하면 Routable POD IPS가 있습니다. 우리는 멀티 클러스터 E2E 테스트에 대해 이것을 활용합니다.
설치 안내서를 참조하십시오.
K8SSANDRA에 대한 자세한 내용은 K8Ssandra 커뮤니티 페이지를 확인하십시오.
이 섹션의 나머지 부분은 운영자 자체의 개발에 중점을 둡니다.
K8SSANDRA.IO에서 전체 K8SSANDRA 문서를 확인하십시오.
Forum.k8ssandra.io에서 포럼 토론을 시작하거나 가입하십시오.
Discord에서 우리와 함께하십시오.
K8SSANDRA 1.X와 관련된 내용은 K8Ssandra Repo에서 문제를 작성하십시오.
개발 안내서를 참조하십시오.