Apache Cassandra 공유 책임 모델에 대한 Azure Managed Instance

소개

이 문서에서는 Apache Cassandra(Cassandra MI)에 Azure Managed Instance 사용할 때 Microsoft 고객과 고객 간의 책임 나누기를 정의합니다.

목표는 다음 사항에 대한 명확성을 제공하는 것입니다.

  • 운영상의 소유권 경계
  • 성능 및 가용성 기대치
  • 보안 및 규정 준수 책임

Important

  • 대기 시간 SLA가 없습니다. 성능은 선택한 SKU 및 워크로드 특성에 따라 달라집니다.
  • Microsoft API 수준 성능 또는 쿼리 대기 시간이 아니라 Cassandra 프로세스의 작동 시간을 보장합니다.
  • 리소스 포화(CPU, 디스크, 메모리, 네트워크)로 인한 문제를 고객이 조사하고 완화해야 합니다. Microsoft 이 분석을 지원하는 메트릭 및 로그를 제공합니다.

Microsoft의 책임

Microsoft Cassandra MI의 기본 인프라를 운영하고 관리합니다. 이 책임에는 다음이 포함됩니다.

인프라 및 플랫폼

  • Cassandra 클러스터, 데이터센터 및 노드의 프로비저닝
  • 운영 체제 관리, 패치 및 보안 업데이트
  • 하드웨어 및 호스트 인프라 수명 주기 관리
  • Azure VNet(Virtual Network)을 사용하여 네트워크 격리

가용성 및 SLA

  • 프로덕션 데이터센터에만 제공되는 SLA 보장 가용성
  • SLA는 다음에 적용됩니다.
    • OS
    • Cassandra 프로세스
    • 하드웨어 오류
  • SLA는 다음을 다루지 않습니다.
    • 리소스 소모(CPU, 디스크, 메모리, 네트워크)
    • 애플리케이션 또는 쿼리 수준 오류
  • 다음을 위한 SLA가 없습니다.
    • 프로덕션이 아니거나 할당 해제된 클러스터 또는 데이터 센터

크기 조정 및 버전 관리

  • Azure 포털 또는 API를 통해 트리거되는 노드 크기 조정(노드 추가 또는 제거)
  • 안정적인 OSS 릴리스 후 새 Cassandra 버전의 가용성
  • 프로비저닝 옵션에서 사용되지 않는 버전 제거

보안 및 암호화

  • 휴면 중 및 전송 중 암호화
  • TLS 또는 SSL에 대한 인증서 관리 및 회전
  • 지속적인 취약성 검사 및 수정

모니터링 및 지원

  • 로그 및 메트릭에 대한 Azure Monitor 통합
  • 플랫폼 수준 중단에 대한 사전 경고
  • 프로덕션에 영향을 주는 플랫폼 인시던트에 대한 RCA(근본 원인 분석)

백업 및 복원

  • 일정 및 보존 기본 설정에 따라 자동화된 온라인 백업
  • 지원 요청을 통한 백업 복원

메모

  • 고객 관리형 키(CMK)는 미사용 데이터에 대해 지원됩니다.
  • CMK는 현재 백업에 지원되지 않습니다.

고객 책임

모든 데이터, 스키마 및 애플리케이션 수준 작업을 담당합니다.

데이터 모델링 및 쿼리 디자인

  • 최적의 파티션 키 및 데이터 모델 디자인
  • 핫 파티션 및 비효율적인 쿼리 방지
  • 쿼리 튜닝 및 성능 최적화

스키마 및 구성

  • 키스페이스, 복제 요소 및 일관성 수준 관리
  • 스키마 변경 수행
  • 압축 및 가비지 수집(GC) 전략 조정
  • 필요한 경우 기본 Cassandra 구성 재정의

성능 및 모니터링

  • 모니터링:

    • CPU 사용량
    • 메모리 사용량
    • 디스크 사용률
    • IOPS 및 처리량
  • 다음을 사용하여 대기 시간 조사:

    • Azure Monitor
    • Prometheus
    • Cassandra 메트릭
  • 정정 및 예방 조치 수행

용량 계획

  • 처리량 및 스토리지 증가 계획
  • 필요에 따라 데이터 센터 확장 또는 축소

메모

스토리지 크기 조정 제한 디스크 크기를 직접 수정할 수는 없습니다. 디스크 크기를 변경하려면 다음을 수행해야 합니다.

  • 원하는 디스크 크기를 사용하여 새 데이터 센터 만들기
  • 워크로드 마이그레이션

버전 업그레이드

  • 주 및 부 업그레이드 시작(예: Cassandra 3.x → 5.x)
  • 업그레이드하기 전에 애플리케이션 호환성 유효성 검사

메모

오래되었거나 더 이상 지원되지 않는 버전으로 인한 서비스 중단에 대해 귀하에게 책임이 있습니다.

Backup 전략

  • 백업 일정 및 보존 정책을 정의합니다.
  • DR(재해 복구) 전략 구현

Networking

  • 구성 중:

    • VNet, 서브넷 및 NSG
    • DNS 확인
    • 방화벽 규칙
  • 설정하기:

    • VPN/ExpressRoute(하이브리드인 경우)

보안 및 액세스

  • 데이터베이스 사용자 및 역할 관리
  • 애플리케이션 수준 암호화 구현(필요한 경우)
  • 규정 요구 사항 준수 보장

Operations

  • 애플리케이션 수준 문제 처리:

    • 쿼리 시간 제한
    • 삭제 표시 누적
    • 데이터 불일치
  • 승인된 도구 사용(SSH/JMX 액세스 없음)

  • 로그 검토 및 변칙에 대한 작업


공유 책임

일부 영역에서는 Microsoft 고객 간의 협업이 필요합니다.

보안 모니터링

  • Microsoft 로그 및 원격 분석을 제공합니다.
  • 고객은 다음을 수행해야 합니다.
    • 경고 검토하기
    • 변칙 조사
    • 수정 작업 수행

메모

mTLS(상호 TLS)가 사용되는 경우:

  • 클라이언트 쪽 인증서 수명 주기 및 갱신은 고객의 책임입니다.

하이브리드 배포

  • Microsoft Azure 호스트된 노드를 관리합니다.
  • 고객이 온-프레미스 Cassandra 노드를 관리합니다.
  • 환경 간의 연결은 공동의 책임입니다.

Compliance

  • 플랫폼 수준 규정 준수를 보장하는 Microsoft
  • 고객 소유:
    • 애플리케이션 수준 규정 준수
    • 데이터 거버넌스 정책

구성 지침

고객은 다음을 포함하여 Microsoft 권장 구성을 따라야 합니다.

  • 필수 아웃바운드 네트워크 규칙
  • 보안 및 네트워킹 모범 사례

책임 매트릭스

Task Microsoft Customer
인프라 프로비저닝 및 관리
OS 및 Cassandra 패치
Backup(플랫폼 관리)
장기 백업 예약
데이터 모델 디자인 및 최적화
버전 업그레이드
네트워크 구성
모니터링 및 경고 검토
규정 준수 및 거버넌스
가용성(플랫폼 SLA)
Security

대안: NoSQL API에 대한 Azure Cosmos DB

Azure Cosmos DB(NoSQL API)는 다음과 같은 추가적인 이점을 제공하는 완전히 관리되는 클라우드 네이티브 대안입니다.

Benefit Description
네이티브 SDK 가용성 Java, .NET, Python, Node.js용 SDK
엔터프라이즈급 지원 에스컬레이션 경로를 갖춘 24×7 Microsoft 지원
완전 관리형 환경 자동화된 패치, 백업, 규정 준수
보장 <10ms 대기 시간, 99.999% 가용성, 일관성 보장, Azure 서비스 수준 계약 참조
통합 보안 및 규정 준수 암호화, ID, 글로벌 규정 준수 인증
전역 배포 및 자동 크기 조정 다중 지역 복제 및 자동 크기 조정