1.9. Splunk로 로그 전달


Splunk는 기능 세트를 사용하기 위해 잘 정의된 API가 있는 로그 집계 서비스입니다. ClusterLogForwarder 사용자 정의 리소스(CR)에서 Splunk로 로그를 전달할 수 있습니다.

1.9.1. Splunk HTTP 이벤트 수집기로 로그 전달

Splunk HTTP 이벤트 수집기(HEC)로 로그를 전달할 수 있습니다.

사전 요구 사항

  • Red Hat OpenShift Logging Operator 설치
  • Base64로 인코딩된 Splunk HEC 토큰을 가져왔습니다.

프로세스

  1. Base64로 인코딩된 Splunk HEC 토큰을 사용하여 시크릿을 생성합니다.

    $ oc -n openshift-logging create secret generic vector-splunk-secret --from-literal hecToken=<HEC_Token>
    Copy to Clipboard Toggle word wrap
  2. 아래 템플릿을 사용하여 ClusterLogForwarder 사용자 정의 리소스(CR)를 생성하거나 편집합니다.

    apiVersion: observability.openshift.io/v1
    kind: ClusterLogForwarder
    metadata:
      name: <log_forwarder_name>
      namespace: openshift-logging
    spec:
      serviceAccount:
        name: <service_account_name> 
    1
    
      outputs:
        - name: splunk-receiver 
    2
    
          type: splunk 
    3
    
          splunk:
            url: '<http://your.splunk.hec.url:8088>' 
    4
    
            authentication:
              token:
                secretName: splunk-secret
                key: hecToken 
    5
    
            index: '{.log_type||"undefined"}' 
    6
    
            source: '{.log_source||"undefined"}' 
    7
    
            indexedFields: ['.log_type', '.log_source'] 
    8
    
            payloadKey: '.kubernetes' 
    9
    
            tuning:
                compression: gzip 
    10
    
      pipelines:
        - name: my-logs
          inputRefs: 
    11
    
            - application
            - infrastructure
          outputRefs:
            - splunk-receiver 
    12
    Copy to Clipboard Toggle word wrap
    1
    서비스 계정의 이름입니다.
    2
    출력 이름을 지정합니다.
    3
    출력 유형을 splunk 로 지정합니다.
    5
    HEC 토큰이 포함된 시크릿의 이름을 지정합니다.
    4
    Splunk HEC의 포트를 포함한 URL을 지정합니다.
    6
    이벤트를 보낼 인덱스의 이름을 지정합니다. 인덱스를 지정하지 않으면 스플루크 서버 구성의 기본 인덱스가 사용됩니다. 이 필드는 선택적 필드입니다.
    7
    이 싱크로 전송할 이벤트 소스를 지정합니다. 이벤트별 동적 값을 구성할 수 있습니다. 이 필드는 선택 사항입니다. 값을 지정하지 않으면 필드의 값은 log_typelog_source 값으로 결정됩니다. 예를 들어 기본 Splunk 메타데이터 키 값을 참조하십시오.
    8
    Splunk 인덱스에 추가할 필드를 지정합니다. 이 필드는 선택 사항입니다. 값은 원시 이벤트 데이터와 함께 인덱스에 직접 저장되므로 해당 필드에 대한 검색 성능이 빨라집니다. 그러나 indexed_fields 필드는 스토리지 사용을 늘립니다. 중요한 검색 이점을 제공하는 높은 값 필드(예: 특정 필드에서 자주 쿼리가 포함된 대규모 데이터 집합)에만 사용하십시오. 복잡하고 중첩된 필드를 인덱싱된 필드로 사용할 수 있습니다. 이는 Splunk의 요구 사항을 충족하도록 자동 변환됩니다.
    9
    페이로드로 사용할 레코드 필드를 지정합니다. 기본적으로 payloadKey 필드는 설정되지 않으므로 전체 로그 레코드가 페이로드로 전달됩니다. payloadKey 필드를 신중하게 사용합니다. 페이로드로 단일 필드를 선택하면 로그의 다른 중요한 정보가 삭제되어 잠재적으로 일관되지 않거나 불완전한 로그 이벤트가 발생할 수 있습니다.
    10
    gzip 또는 none 중 하나일 수 있는 압축 구성을 지정합니다. 기본값은 none 입니다. 이 필드는 선택 사항입니다.
    11
    입력 이름을 지정합니다.
    12
    이 파이프라인으로 로그를 전달할 때 사용할 출력 이름을 지정합니다.

1.9.2. 기본 Splunk 메타데이터 키 값

Red Hat OpenShift Logging Operator는 ClusterLogForwarder 사용자 정의 리소스(CR)의 spec.output.splunk.source 필드에서 이러한 키를 구성하지 않는 경우 일부 Splunk 메타데이터 키에 대한 기본값을 설정합니다.

다음 표에서는 log_typelog_source 특성에 따라 Splunk 메타데이터에 사용할 기본값을 설명합니다.

Expand
표 1.2. 기본 메타데이터 키 값

인프라 저널

  • log_type:infrastructure
  • log_source:node

인프라 또는 애플리케이션 컨테이너

  • log_type: infrastructure, application
  • log_source:container

audit

  • log_type:audit
  • log_source: auditd, ovn, openshiftAPI , kubeAPI

참고

인덱스

   

기본적으로 구성되지 않습니다.

소스

SYSLOG_IDENTIFIER

ns_name_podName_containerName

.log_source

 

indexedFields

   

기본적으로 구성되지 않습니다.

sourceType

_JSON 또는 generic_single_line

_JSON 또는 generic_single_line

_JSON 또는 generic_single_line

최종 이벤트 페이로드 유형에 따라 자동으로 결정됩니다.

host

.hostname

.hostname

.hostname

구성 불가능.

payloadKey

   

기본적으로 구성되지 않습니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat