2.3. 입력 수신자 구성


Red Hat OpenShift Logging Operator는 구성된 각 입력 수신자에 대한 서비스를 배포하여 클라이언트가 컬렉터에 쓸 수 있도록 합니다. 이 서비스는 입력 수신자에 지정된 포트를 노출합니다. 로그 전달자 ClusterLogForwarder CR 배포의 경우 서비스 이름은 < clusterlogforwarder_resource_name>-<input_name > 형식으로 되어 있습니다.

2.3.1. 감사 로그를 HTTP 서버로 수신하도록 수집기 구성

ClusterLogForwarder CR(사용자 정의 리소스)에서 http 를 수신자 입력으로 지정하여 HTTP 연결만 수신 대기하도록 로그 수집기를 구성할 수 있습니다.

중요

HTTP 수신자 입력은 다음 시나리오에서만 지원됩니다.

  • 로깅은 호스팅된 컨트롤 플레인에 설치됩니다.
  • Red Hat OpenShift Logging Operator와 동일한 클러스터에 설치된 Red Hat 지원 제품에서 로그가 시작된 경우 예를 들면 다음과 같습니다.

    • OpenShift Virtualization

사전 요구 사항

  • 관리자 권한이 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • Red Hat OpenShift Logging Operator가 설치되어 있습니다.

프로세스

  1. http 수신자 입력 구성을 추가하도록 ClusterLogForwarder CR을 수정합니다.

    ClusterLogForwarder CR의 예

    apiVersion: observability.openshift.io/v1
    kind: ClusterLogForwarder
    metadata:
      name: <clusterlogforwarder_name> 
    1
    
      namespace: <namespace>
    # ...
    spec:
      serviceAccount:
        name: <service_account_name>
      inputs:
      - name: http-receiver 
    2
    
        type: receiver
        receiver:
          type: http 
    3
    
          port: 8443 
    4
    
          http:
            format: kubeAPIAudit 
    5
    
      outputs:
      - name: <output_name>
        type: http
        http:
          url: <url>
      pipelines: 
    6
    
        - name: http-pipeline
          inputRefs:
            - http-receiver
          outputRefs:
            - <output_name>
    # ...

    1
    ClusterLogForwarder CR의 이름을 지정합니다.
    2
    입력 수신자의 이름을 지정합니다.
    3
    입력 수신자 유형을 http 로 지정합니다.
    4
    선택 사항: 입력 수신자가 수신 대기하는 포트를 지정합니다. 1024 ~65535 사이의 값이어야 합니다. 이 값이 지정되지 않은 경우 기본값은 8443 입니다.
    5
    현재는 http 입력 수신자에 대해 kube-apiserver 웹 후크 형식만 지원됩니다.
    6
    입력 수신자에 대한 파이프라인을 구성합니다.
  2. 다음 명령을 실행하여 ClusterLogForwarder CR에 변경 사항을 적용합니다.

    $ oc apply -f <filename>.yaml
  3. 다음 명령을 실행하여 수집기가 < clusterlogforwarder_resource_name>-<input_name > 형식에 이름이 있는 서비스에서 수신 대기 중인지 확인합니다.

    $ oc get svc

    출력 예

    NAME                      TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)            AGE
    collector                 ClusterIP   172.30.85.239    <none>        24231/TCP          3m6s
    collector-http-receiver   ClusterIP   172.30.205.160   <none>        8443/TCP           3m6s

    이 예제에서 서비스 이름은 collector-http-receiver 입니다.

검증

  1. 다음 명령을 실행하여 CA(인증 기관) 인증서 파일을 추출합니다.

    $ oc extract cm/openshift-service-ca.crt -n <namespace>
    참고

    컬렉터가 변경 사항을 실행하는 클러스터의 CA가 변경되는 경우 CA 인증서 파일을 다시 추출해야 합니다.

  2. 예를 들어 다음 명령을 실행하여 로그를 보내 curl 명령을 사용합니다.

    $ curl --cacert <openshift_service_ca.crt> https://collector-http-receiver.<namespace>.svc:8443 -XPOST -d '{"<prefix>":"<message>"}'

    <openshift_service_ca.crt>를 추출된 CA 인증서 파일로 바꿉니다.

2.3.2. 연결을 syslog 서버로 수신 대기하도록 수집기 구성

ClusterLogForwarder 사용자 정의 리소스(CR)에서 syslog 를 수신자 입력으로 지정하여 저널 형식 인프라 로그를 수집하도록 로그 수집기를 구성할 수 있습니다.

중요

syslog 수신자 입력은 다음 시나리오에서만 지원됩니다.

  • 로깅은 호스팅된 컨트롤 플레인에 설치됩니다.
  • Red Hat OpenShift Logging Operator와 동일한 클러스터에 설치된 Red Hat 지원 제품에서 로그가 시작된 경우 예를 들면 다음과 같습니다.

    • Red Hat OpenStack Services on OpenShift(RHOSO)
    • OpenShift Virtualization

사전 요구 사항

  • 관리자 권한이 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.
  • Red Hat OpenShift Logging Operator가 설치되어 있습니다.

프로세스

  1. 다음 명령을 실행하여 collect-infrastructure-logs 클러스터 역할을 서비스 계정에 부여합니다.

    바인딩 명령 예

    $ oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z logcollector

  2. ClusterLogForwarder CR을 수정하여 syslog 수신자 입력 구성을 추가합니다.

    ClusterLogForwarder CR의 예

    apiVersion: observability.openshift.io/v1
    kind: ClusterLogForwarder
    metadata:
      name: <clusterlogforwarder_name> 
    1
    
      namespace: <namespace>
    # ...
    spec:
      serviceAccount:
        name: <service_account_name> 
    2
    
      inputs:
        - name: syslog-receiver 
    3
    
          type: receiver
          receiver:
            type: syslog 
    4
    
            port: 10514 
    5
    
      outputs:
      - name: <output_name>
        lokiStack:
          authentication:
            token:
              from: serviceAccount
          target:
            name: logging-loki
            namespace: openshift-logging
        tls: 
    6
    
          ca:
            key: service-ca.crt
            configMapName: openshift-service-ca.crt
        type: lokiStack
    # ...
      pipelines: 
    7
    
        - name: syslog-pipeline
          inputRefs:
            - syslog-receiver
          outputRefs:
            - <output_name>
    # ...

    1 2
    이전 단계에서 collect-infrastructure-logs 권한이 부여된 서비스 계정을 사용합니다.
    3
    입력 수신자의 이름을 지정합니다.
    4
    입력 수신자 유형을 syslog 로 지정합니다.
    5
    선택 사항: 입력 수신자가 수신 대기하는 포트를 지정합니다. 1024 ~65535 사이의 값이어야 합니다.
    6
    TLS 구성이 설정되지 않은 경우 기본 인증서가 사용됩니다. 자세한 내용은 oc explain clusterlogforwarders.spec.inputs.receiver.tls 명령을 실행합니다.
    7
    입력 수신자에 대한 파이프라인을 구성합니다.
  3. 다음 명령을 실행하여 ClusterLogForwarder CR에 변경 사항을 적용합니다.

    $ oc apply -f <filename>.yaml
  4. 다음 명령을 실행하여 수집기가 < clusterlogforwarder_resource_name>-<input_name > 형식에 이름이 있는 서비스에서 수신 대기 중인지 확인합니다.

    $ oc get svc

    출력 예

    NAME                        TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)            AGE
    collector                   ClusterIP   172.30.85.239    <none>        24231/TCP          33m
    collector-syslog-receiver   ClusterIP   172.30.216.142   <none>        10514/TCP          2m20s

    이 예제 출력에서 서비스 이름은 collector-syslog-receiver 입니다.

검증

  1. 다음 명령을 실행하여 CA(인증 기관) 인증서 파일을 추출합니다.

    $ oc extract cm/openshift-service-ca.crt -n <namespace>
    참고

    컬렉터가 변경 사항을 실행하는 클러스터의 CA가 변경되는 경우 CA 인증서 파일을 다시 추출해야 합니다.

  2. 예를 들어 다음 명령을 실행하여 로그를 보내 curl 명령을 사용합니다.

    $ curl --cacert <openshift_service_ca.crt> collector-syslog-receiver.<namespace>.svc:10514  “test message”

    <openshift_service_ca.crt>를 추출된 CA 인증서 파일로 바꿉니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

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

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

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

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동