7.10. 레거시 syslog 방법을 사용하여 로그 전달
syslog RFC3164 프로토콜을 사용하여 구성 파일 및 구성 맵을 생성하여 OpenShift Container Platform 클러스터 외부의 대상으로 로그를 보낼 수 있습니다. OpenShift Container Platform에서 로그를 수신하도록 syslog 서버와 같은 외부 로그 수집기를 구성해야 합니다.
이 로그 전달 방법은 OpenShift Container Platform에서 더 이상 사용되지 않으며 향후 릴리스에서 제거됩니다.
syslog 프로토콜에는 두 가지 버전이 있습니다.
- out_syslog: UDP를 통해 통신하는 버퍼 없는 구현은 데이터를 버퍼링하지 않고 결과를 즉시 씁니다.
- out_syslog_buffered: TCP 및 버퍼를 통해 데이터를 청크로 통신하는 버퍼링된 구현입니다.
syslog 프로토콜을 사용하여 로그를 보내려면 로그를 전달하는 데 필요한 정보와 함께 syslog.conf
라는 구성 파일을 생성합니다. 그런 다음 해당 파일을 사용하여 OpenShift Container Platform에서 로그를 전달할 때 사용하는 openshift-logging
프로젝트에 syslog
라는 구성 맵을 생성합니다.
사전 요구 사항
- 지정된 프로토콜 또는 형식을 사용하여 로깅 데이터를 수신하도록 구성된 로깅 서버가 있어야 합니다.
샘플 syslog 구성 파일
<store> @type syslog_buffered remote_syslog rsyslogserver.example.com port 514 hostname ${hostname} remove_tag_prefix tag facility local0 severity info use_record true payload_key message rfc 3164 </store>
다음 syslog
매개변수를 구성할 수 있습니다. 자세한 내용은 syslog RFC3164를 참조하십시오.
기능: syslog 기능. 값은 10진수 정수 또는 대소문자를 구분하지 않는 키워드일 수 있습니다.
-
커널 메시지의 경우
0
또는kern
-
사용자 수준 메시지의 경우
1
또는user
, 기본값입니다. -
2
또는mail
시스템용 메일 -
시스템 데몬의 경우
3
또는daemon
-
보안/인증 메시지의 경우
4
또는auth
-
syslogd에 의해 내부적으로 생성된 메시지의 경우
5
또는syslog
-
라인 프린터 하위 시스템의 경우
6
또는lpr
-
네트워크 뉴스 서브 시스템의 경우
7
또는news
-
UUCP 하위 시스템의 경우
8
또는uucp
-
시계 데몬의 경우
9
또는cron
-
보안 인증 메시지의 경우
10
또는authpriv
-
FTP 데몬의 경우
11
또는ftp
-
NTP 하위 시스템의 경우
12
또는ntp
-
syslog 감사 로그의 경우
13
또는security
-
syslog 경고 로그의 경우
14
또는console
-
스케줄링 데몬의 경우
15
또는solaris-cron
-
로컬에서 사용되는 시설의 경우
16
–23
또는local0
–local7
-
커널 메시지의 경우
- payloadKey: syslog 메시지의 페이로드로 사용할 레코드 필드입니다.
- rfc: syslog를 사용하여 로그를 전송하는 데 사용할 RFC입니다.
심각도: 발신 syslog 레코드에 설정할 syslog 심각도 입니다. 값은 10진수 정수 또는 대소문자를 구분하지 않는 키워드일 수 있습니다.
-
시스템을 사용할 수 없음을 나타내는 메시지의 경우
0
또는Emergency
-
조치를 즉시 취해야 함을 나타내는 메시지의 경우
1
또는Alert
-
위험 상태를 나타내는 메시지의 경우
2
또는Critical
-
오류 상태를 나타내는 메시지의 경우
3
또는Error
-
경고 조건을 나타내는 메시지의 경우
4
또는Warning
-
정상이지만 중요한 조건을 나타내는 메시지의 경우
5
또는Notice
-
정보성 메시지를 나타내는 메시지의 경우
6
또는Informational
-
디버그 수준 메시지를 나타내는 메시지의 경우
7
또는Debug
, 기본값
-
시스템을 사용할 수 없음을 나타내는 메시지의 경우
- 태그: syslog 메시지에서 태그로 사용할 레코드 필드입니다.
- trimPrefix: 태그에서 제거할 접두사입니다.
절차
레거시 구성 방법을 사용하여 로그를 전달하도록 OpenShift Container Platform을 구성하려면 다음을 수행하십시오.
syslog.conf
라는 구성 파일을 생성하고<store>
스탠자에서 다음과 유사한 매개변수를 지정합니다.<store> @type <type> 1 remote_syslog <syslog-server> 2 port 514 3 hostname ${hostname} remove_tag_prefix <prefix> 4 facility <value> severity <value> use_record <value> payload_key message rfc 3164 5 </store>
- 1
- 사용할 프로토콜을
syslog
또는syslog_buffered
로 지정합니다. - 2
- syslog 서버의 FQDN 또는 IP 주소를 지정합니다.
- 3
- syslog 서버의 포트를 지정합니다.
- 4
- 선택 사항: 적절한 syslog 매개변수를 지정합니다. 예를 들면 다음과 같습니다.
-
syslog 접두사에서 지정된
태그
필드를 제거하기 위한 매개변수입니다. - 지정된 필드를 syslog 키로 설정하는 매개변수입니다.
- syslog 로그 기능 또는 소스를 지정하는 매개변수입니다.
- syslog 로그 심각도를 지정하는 매개변수입니다.
-
가능한 경우 레코드에서 심각도 및 기능을 사용하는 매개변수입니다.
true
인 경우container_name
,namespace_name
,pod_name
이 출력 콘텐츠에 포함됩니다. -
syslog 메시지의 페이로드를 설정하기 위한 키를 지정하는 매개변수입니다. 기본값은
message
입니다.
-
syslog 접두사에서 지정된
- 5
- 기존 syslog 방법을 사용하여
rfc
값으로3164
를 지정해야 합니다.
구성 파일에서
openshift-logging
프로젝트에syslog
라는 구성 맵을 생성합니다.$ oc create configmap syslog --from-file=syslog.conf -n openshift-logging
Red Hat OpenShift Logging Operator는 Fluentd Pod를 재배포합니다. Pod가 재배포되지 않으면 Fluentd Pod를 삭제하여 강제로 재배포할 수 있습니다.
$ oc delete pod --selector logging-infra=fluentd