728x90
반응형
1. Generations
- 세대(Generation)
- 클러스터 내 버킷 primary 복사본을 정의
- CM이 세대 ID를 부여
- 피어는 자신이 primary인지 추적
- 영향
- 어떤 인덱서가 복제에 참여 가능한지
- 어떤 인덱서가 검색 가능한지
- 어떤 인덱서가 포워더 수신에 준비됐는지
- Search Head
- 세대 기반으로 피어를 직접 고르지 않음
- 모든 피어에 요청 → 인덱서가 primary 여부를 판단 후 응답
2. Clustered Bucket 네이밍 규칙
| 비클러스터 | hot_v1_<localid> | db_<newest_time>_<oldest_time>_<localid> |
| 클러스터 원본 | hot_v1_<localid> | db_<newest_time>_<oldest_time>_<localid>_<guid> |
| 클러스터 복제본 | <localid>_<guid> | rb_<newest_time>_<oldest_time>_<localid>_<guid> |
- guid: 원본 인덱서의 고유 ID (etc/instance.cfg에 존재)
- 데이터 유입 시:
- 소스 인덱서 → hot bucket 생성 (originating copy)
- 다른 인덱서(target peers)로 스트리밍 복제본 생성
- hot → warm 전환 시, 복제본도 동일하게 warm으로 전환
3. Cluster Master에서 보는 버킷
- 버킷 식별 정보 = Index name + local ID + GUID
- REST API 확인: /services/cluster/master/buckets
- 0x000000000 → non-primary
- 0xffffffff → primary
4. Bucket Lifecycle
🔥 Hot
- 인덱서 → CM에 새로운 hot 버킷 생성 알림
- CM → 복제 타겟 인덱서 리스트 반환
- 원본 인덱서 → 타겟 인덱서로 데이터 복제
index=_internal source=*splunkd.log* component=CMMaster event=addBucket
❄️ Warm
- 인덱서 → CM에 hot → warm 롤오버 알림
- 타겟 인덱서도 동일하게 warm으로 전환
index=_internal source=*splunkd.log* component=CMPeer from=* to=Complete
🧊 Frozen
- 피어가 버킷 freeze 시 → CM에 알림
- CM은 해당 버킷에 대한 fix-up 중단
- freeze된 버킷은 해당 인스턴스에만 적용
- 누락되더라도 다른 피어에서 새 복제본 생성 ❌
- 만약 primary가 freeze됐다면 → 다른 복제본이 primary로 승격
728x90
반응형
'Splunk' 카테고리의 다른 글
| [Splunk] 인덱서 클러스터(Indexer Clustering) (2) | 2025.08.26 |
|---|---|
| [ Splunk ] Indexing Internals (1) | 2025.08.25 |
| [ Splunk ] Event Processing (2) | 2025.08.24 |
| [ Splunk ] 버킷 매니페스트(manifest) (0) | 2025.08.21 |
| [Splunk] LDAP 연동 이해하기 (0) | 2025.08.21 |