6장. RHEL 시스템 역할을 사용하여 로깅 구성


로깅 RHEL 시스템 역할을 사용하여 로컬 및 원격 호스트를 자동화된 방식으로 로깅 서버로 구성하여 많은 클라이언트 시스템에서 로그를 수집할 수 있습니다.

로깅 솔루션은 여러 로그 및 여러 로깅 출력을 읽는 방법을 제공합니다.

예를 들어 로깅 시스템은 다음과 같은 입력을 수신할 수 있습니다.

  • 로컬 파일
  • systemd/journal
  • 네트워크를 통한 다른 로깅 시스템

또한 로깅 시스템에는 다음과 같은 출력이 있을 수 있습니다.

  • /var/log/ 디렉터리의 로컬 파일에 저장된 로그
  • Elasticsearch 엔진에 전송된 로그
  • 다른 로깅 시스템으로 전달된 로그

로깅 RHEL 시스템 역할을 사용하면 입력 및 출력을 결합하여 시나리오에 적합할 수 있습니다. 예를 들어 저널 의 입력을 로컬 파일에 저장하는 로깅 솔루션을 구성할 수 있지만 파일에서 읽은 입력은 다른 로깅 시스템으로 전달되어 로컬 로그 파일에 저장됩니다.

6.1. 로깅 RHEL 시스템 역할을 사용하여 로컬 로그 메시지 필터링

로깅 RHEL 시스템 역할의 속성 기반 필터를 사용하여 다양한 조건에 따라 로컬 로그 메시지를 필터링할 수 있습니다. 예를 들어 다음을 수행할 수 있습니다.

  • 로그 명확성: 트래픽이 많은 환경에서 로그가 빠르게 증가할 수 있습니다. 오류와 같은 특정 메시지에 중점을 두면 문제를 보다 신속하게 식별하는 데 도움이 될 수 있습니다.
  • 최적화된 시스템 성능: 과도한 양의 로그는 일반적으로 시스템 성능 저하와 연결됩니다. 중요한 이벤트에 대해서만 선택적 로깅을 수행하면 리소스 소모를 방지할 수 있으므로 시스템이 더 효율적으로 실행될 수 있습니다.
  • 향상된 보안: 시스템 오류 및 실패한 로그인과 같은 보안 메시지를 통한 필터링은 관련 로그만 캡처하는 데 도움이 됩니다. 이는 위반을 탐지하고 규정 준수 표준을 준수하는 데 중요합니다.

사전 요구 사항

프로세스

  1. 다음 콘텐츠를 사용하여 플레이북 파일(예: ~/playbook.yml )을 생성합니다.

    ---
    - name: Deploy the logging solution
      hosts: managed-node-01.example.com
      tasks:
        - name: Filter logs based on a specific value they contain
          ansible.builtin.include_role:
            name: redhat.rhel_system_roles.logging
          vars:
            logging_inputs:
              - name: files_input
                type: basics
            logging_outputs:
              - name: files_output0
                type: files
                property: msg
                property_op: contains
                property_value: error
                path: /var/log/errors.log
              - name: files_output1
                type: files
                property: msg
                property_op: "!contains"
                property_value: error
                path: /var/log/others.log
            logging_flows:
              - name: flow0
                inputs: [files_input]
                outputs: [files_output0, files_output1]
    Copy to Clipboard Toggle word wrap

    예제 플레이북에 지정된 설정은 다음과 같습니다.

    logging_inputs
    로깅 입력 사전 목록을 정의합니다. 유형: 기본 옵션은 systemd 저널 또는 Unix 소켓의 입력을 다룹니다.
    logging_outputs
    로깅 출력 사전 목록을 정의합니다. type: files 옵션은 일반적으로 /var/log/ 디렉터리에 있는 로컬 파일에 로그 저장을 지원합니다. 속성: msg; property: contains; 및 property_value: 오류 옵션은 오류 문자열이 포함된 모든 로그가 /var/log/errors.log 파일에 저장되도록 지정합니다. 속성: msg; 속성: !contains; 및 property_value: 오류 옵션은 다른 모든 로그가 /var/log/others.log 파일에 저장되도록 지정합니다. 오류 값을 필터링할 문자열로 교체할 수 있습니다.
    logging_flows
    logging_inputslogging_outputs 간의 관계를 지정하는 로깅 흐름 사전 목록을 정의합니다. inputs: [files_input] 옵션은 로그 처리가 시작되는 입력 목록을 지정합니다. outputs: [files_output0, files_output1] 옵션은 로그가 전송되는 출력 목록을 지정합니다.

    플레이북에서 사용되는 모든 변수와 rsyslog 에 대한 자세한 내용은 제어 노드의 /usr/share/ansible/roles/rhel-system-roles.logging/README.md 파일 및 rsyslog.conf(5)syslog Cryostat 매뉴얼 페이지를 참조하십시오.

  2. 플레이북 구문을 확인합니다.

    $ ansible-playbook --syntax-check ~/playbook.yml
    Copy to Clipboard Toggle word wrap

    이 명령은 구문만 검증하고 잘못되었지만 유효한 구성으로부터 보호하지 않습니다.

  3. Playbook을 실행합니다.

    $ ansible-playbook ~/playbook.yml
    Copy to Clipboard Toggle word wrap

검증

  1. 관리 노드에서 /etc/rsyslog.conf 파일의 구문을 테스트합니다.

    # rsyslogd -N 1
    rsyslogd: version 8.1911.0-6.el8, config validation run...
    rsyslogd: End of config validation run. Bye.
    Copy to Clipboard Toggle word wrap
  2. 관리 노드에서 오류 문자열이 포함된 메시지를 로그에 전송하는지 확인합니다.

    1. 테스트 메시지를 보냅니다.

      # logger error
      Copy to Clipboard Toggle word wrap
    2. /var/log/errors.log 로그를 확인합니다. 예를 들면 다음과 같습니다.

      # cat /var/log/errors.log
      Aug  5 13:48:31 hostname root[6778]: error
      Copy to Clipboard Toggle word wrap

      여기서 hostname 은 클라이언트 시스템의 호스트 이름입니다. 로그에는 logger 명령을 입력한 사용자의 사용자 이름이 포함되어 있습니다(이 경우 root ).

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat