36.11. 集計されたロギングのドライバーの変更
集計されたロギングについては、json-file
ログドライバーの使用を推奨します。
json-file
ドライバーを使用する場合は、Docker バージョン docker-1.12.6-55.gitc4618fb.el7_4 now 以降を使用していることを確認してください。
Fluentd では、/etc/docker/daemon.json ファイルおよび /etc/sysconfig/docker ファイルをチェックして、Docker が使用しているドライバーを判別します。
docker info
コマンドを使用すると、Docker が使用しているドライバーを確認できます。
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 cat /etc/sysconfig/docker OPTIONS=' --selinux-enabled --log-driver=json-file --log-opt max-size=1M --log-opt max-file=3 --signature-verification=False' cat /etc/docker/daemon.json { "log-driver": "json-file", "log-opts": { "max-size": "1M", "max-file": "1" } }
# cat /etc/sysconfig/docker OPTIONS=' --selinux-enabled --log-driver=json-file --log-opt max-size=1M --log-opt max-file=3 --signature-verification=False' cat /etc/docker/daemon.json { "log-driver": "json-file", "log-opts": { "max-size": "1M", "max-file": "1" } }
Docker サービスを再起動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl restart docker
systemctl restart docker
Fluentd を再起動します。
警告13 以上のノードで一度に Fluentd を再起動すると、Kubernetes スケジューラーに大きな負荷が生成されます。以下の手順に従って Fluentd を再起動する場合は、細心の注意を払ってください。
Fluentd を再起動する方法は 2 つあります。1 つのノードまたはノードセット上で Fluentd を再起動するか、またはすべてのノードで Fluentd を再起動できます。
以下の手順は、1 つのノードまたはノードセット上で Fluentd を再起動する方法を示しています。
Fluentd が実行しているノードの一覧を表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get nodes -l logging-infra-fluentd=true
$ oc get nodes -l logging-infra-fluentd=true
各ノードについて、ラベルを削除して Fluentd をオフにします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc label node $node logging-infra-fluentd-
$ oc label node $node logging-infra-fluentd-
Fluentd がオフになっていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pods -l component=fluentd
$ oc get pods -l component=fluentd
各ノードについて Fluentd を再起動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc label node $node logging-infra-fluentd=true
$ oc label node $node logging-infra-fluentd=true
以下の手順は、すべてのノード上で Fluentd を再起動する方法を示しています。
すべてのノードで Fluentd をオフにします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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
Fluentd がオフになっていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pods -l component=fluentd
$ oc get pods -l component=fluentd
すべてのノードで Fluentd を再起動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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
Fluentd がオンになっていることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pods -l component=fluentd
$ oc get pods -l component=fluentd