36.11. 집계된 로깅 드라이버 변경
집계된 로깅의 경우 json-file
로그 드라이버를 사용하는 것이 좋습니다.
json-file
드라이버를 사용하는 경우 Docker 버전 docker-1.12.6-55.gitc4618fb.el7_4를 사용 중인지 확인합니다.
Fluentd는 /etc/docker/ daemon.json 및 /etc/sysconfig/docker 파일을 확인하여 Docker가 사용 중인 드라이버를 결정합니다.
Docker info
명령과 함께 사용 중인 드라이버를 확인할 수 있습니다.
docker info | grep Logging
# docker info | grep Logging
Logging Driver: journald
json-file
로 변경하려면 다음을 수행합니다.
/etc/sysconfig/docker 또는 /etc/docker/daemon.json 파일을 수정합니다.
예를 들면 다음과 같습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Docker 서비스를 다시 시작하십시오.
systemctl restart docker
systemctl restart docker
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Fluentd를 다시 시작합니다.
주의12개 이상의 노드에서 Fluentd를 한 번에 다시 시작하면 Kubernetes 스케줄러에 큰 부하가 생성됩니다. 다음 지침을 사용하여 Fluentd를 다시 시작할 때 주의하십시오.
Fluentd를 다시 시작하는 방법은 두 가지가 있습니다. 단일 노드 또는 노드 세트에서 Fluentd를 다시 시작하거나 모든 노드에서 시작할 수 있습니다.
다음 단계에서는 노드 또는 노드 세트에서 Fluentd를 다시 시작하는 방법을 보여줍니다.
Fluentd가 실행 중인 노드를 나열합니다.
oc get nodes -l logging-infra-fluentd=true
$ oc get nodes -l logging-infra-fluentd=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 각 노드에 대해 라벨을 제거하고 Fluentd를 종료합니다.
oc label node $node logging-infra-fluentd-
$ oc label node $node logging-infra-fluentd-
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Fluentd가 꺼져 있는지 확인합니다.
oc get pods -l component=fluentd
$ oc get pods -l component=fluentd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 각 노드에 Fluentd를 다시 시작합니다.
oc label node $node logging-infra-fluentd=true
$ oc label node $node logging-infra-fluentd=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다음 단계에서는 Fluentd 모든 노드를 다시 시작하는 방법을 보여줍니다.
모든 노드에서 Fluentd를 끕니다.
oc label node -l logging-infra-fluentd=true --overwrite logging-infra-fluentd=false
$ oc label node -l logging-infra-fluentd=true --overwrite logging-infra-fluentd=false
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Fluentd가 꺼져 있는지 확인합니다.
oc get pods -l component=fluentd
$ oc get pods -l component=fluentd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 모든 노드에서 Fluentd를 다시 시작합니다.
oc label node -l logging-infra-fluentd=false --overwrite logging-infra-fluentd=true
$ oc label node -l logging-infra-fluentd=false --overwrite logging-infra-fluentd=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Fluentd가 있는지 확인합니다.
oc get pods -l component=fluentd
$ oc get pods -l component=fluentd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow