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가 설치되어 있습니다.
프로세스
http수신자 입력 구성을 추가하도록ClusterLogForwarderCR을 수정합니다.ClusterLogForwarderCR의 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
ClusterLogForwarderCR에 변경 사항을 적용합니다.oc apply -f <filename>.yaml
$ oc apply -f <filename>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 수집기가 <
clusterlogforwarder_resource_name>-<input_name> 형식에 이름이 있는 서비스에서 수신 대기 중인지 확인합니다.oc get svc
$ oc get svcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
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
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 3m6sCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 예제에서 서비스 이름은
collector-http-receiver입니다.
검증
다음 명령을 실행하여 CA(인증 기관) 인증서 파일을 추출합니다.
oc extract cm/openshift-service-ca.crt -n <namespace>
$ oc extract cm/openshift-service-ca.crt -n <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고컬렉터가 변경 사항을 실행하는 클러스터의 CA가 변경되는 경우 CA 인증서 파일을 다시 추출해야 합니다.
예를 들어 다음 명령을 실행하여 로그를 보내
curl명령을 사용합니다.curl --cacert <openshift_service_ca.crt> https://collector-http-receiver.<namespace>.svc:8443 -XPOST -d '{"<prefix>":"<message>"}'$ curl --cacert <openshift_service_ca.crt> https://collector-http-receiver.<namespace>.svc:8443 -XPOST -d '{"<prefix>":"<message>"}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow <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가 설치되어 있습니다.
프로세스
다음 명령을 실행하여
collect-infrastructure-logs클러스터 역할을 서비스 계정에 부여합니다.바인딩 명령 예
oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z logcollector
$ oc adm policy add-cluster-role-to-user collect-infrastructure-logs -z logcollectorCopy to Clipboard Copied! Toggle word wrap Toggle overflow ClusterLogForwarderCR을 수정하여syslog수신자 입력 구성을 추가합니다.ClusterLogForwarderCR의 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1 2
- 이전 단계에서
collect-infrastructure-logs권한이 부여된 서비스 계정을 사용합니다. - 3
- 입력 수신자의 이름을 지정합니다.
- 4
- 입력 수신자 유형을
syslog로 지정합니다. - 5
- 선택 사항: 입력 수신자가 수신 대기하는 포트를 지정합니다.
1024~65535 사이의 값이어야합니다. - 6
- TLS 구성이 설정되지 않은 경우 기본 인증서가 사용됩니다. 자세한 내용은
oc explain clusterlogforwarders.spec.inputs.receiver.tls명령을 실행합니다. - 7
- 입력 수신자에 대한 파이프라인을 구성합니다.
다음 명령을 실행하여
ClusterLogForwarderCR에 변경 사항을 적용합니다.oc apply -f <filename>.yaml
$ oc apply -f <filename>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 수집기가 <
clusterlogforwarder_resource_name>-<input_name> 형식에 이름이 있는 서비스에서 수신 대기 중인지 확인합니다.oc get svc
$ oc get svcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
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
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 2m20sCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 예제 출력에서 서비스 이름은
collector-syslog-receiver입니다.
검증
다음 명령을 실행하여 CA(인증 기관) 인증서 파일을 추출합니다.
oc extract cm/openshift-service-ca.crt -n <namespace>
$ oc extract cm/openshift-service-ca.crt -n <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고컬렉터가 변경 사항을 실행하는 클러스터의 CA가 변경되는 경우 CA 인증서 파일을 다시 추출해야 합니다.
예를 들어 다음 명령을 실행하여 로그를 보내
curl명령을 사용합니다.curl --cacert <openshift_service_ca.crt> collector-syslog-receiver.<namespace>.svc:10514 “test message”
$ curl --cacert <openshift_service_ca.crt> collector-syslog-receiver.<namespace>.svc:10514 “test message”Copy to Clipboard Copied! Toggle word wrap Toggle overflow <openshift_service_ca.crt>를 추출된 CA 인증서 파일로 바꿉니다.