mein Container Gesetzt fluentd genannt wird, würde ich diesen Befehl erwarten die Config neu zu laden:Reload containerisierter fluentd Konfiguration
sudo docker kill -s HUP fluentd
Stattdessen tötet sie den Behälter.
scheint es einige Laich von wenigen Prozesse vom Einstiegspunkt ist:
PID USER TIME COMMAND
1 root 0:00 {entrypoint.sh} /usr/bin/dumb-init /bin/sh /bin/entrypoint.sh /bin/sh -c fluentd -c /fluentd/etc/${FLUENTD_CONF} -p /fluentd/pl
5 root 0:00 /bin/sh /bin/entrypoint.sh /bin/sh -c fluentd -c /fluentd/etc/${FLUENTD_CONF} -p /fluentd/plugins $FLUENTD_OPT
13 fluent 0:00 /bin/sh -c fluentd -c /fluentd/etc/${FLUENTD_CONF} -p /fluentd/plugins $FLUENTD_OPT
14 fluent 0:00 {fluentd} /usr/bin/ruby /usr/bin/fluentd -c /fluentd/etc/fluentd.conf -p /fluentd/plugins
16 fluent 0:00 {fluentd} /usr/bin/ruby /usr/bin/fluentd -c /fluentd/etc/fluentd.conf -p /fluentd/plugins
HUPping Versuchte aus dem Inneren des Behälters pid 13 und es scheint zu funktionieren.
Docker sendet das Signal an den Eingangspunkt. Wenn ich die State.Pid inspizieren, sehe ich 4450 Hier ist der Host-ps:
root 4450 4432 0 18:30 ? 00:00:00 /usr/bin/dumb-init /bin/sh /bin/entrypoint.sh /bin/sh -c fluentd -c
/fluentd/etc/${FLUENTD_CONF} -p /fluentd/plugins $FLUENTD_OPT
root 4467 4450 0 18:30 ? 00:00:00 /bin/sh /bin/entrypoint.sh /bin/sh -c fluentd -c /fluentd/etc/${FLUENTD_CONF} -p /fluentd/plugins $FLUENTD_OPT
ubuntu 4475 4467 0 18:30 ? 00:00:00 /bin/sh -c fluentd -c /fluentd/etc/${FLUENTD_CONF} -p /fluentd/plugins $FLUENTD_OPT
ubuntu 4476 4475 0 18:30 ? 00:00:00 /usr/bin/ruby /usr/bin/fluentd -c /fluentd/etc/fluentd.conf -p /fluentd/plugins
ubuntu 4478 4476 0 18:30 ? 00:00:00 /usr/bin/ruby /usr/bin/fluentd -c /fluentd/etc/fluentd.conf -p /fluentd/plugins
Irgendwelche Ideen, wie Sie laden Sie die conf ohne benutzerdefinierten Skript das richtige Verfahren HUP zu finden? Getestet habe ich es auf den Schlaf-Befehl innerhalb fluentd Container
Senden von '-1 -x sh' funktioniert. Die fluentd Prozesse sind anscheinend die niedrigsten Kinder, also müssen Sie ihre Eltern bekommen. –
So ist Ihr Problem gelöst? –
Auf den zweiten Blick wählt das sh zwei Prozesse, den Einstiegspunkt und das Kind, und das Senden der hup zu beiden funktioniert nicht. Kann eine schicke Arbeit machen, die versucht, das Kind mit grep und awk und so auszuwählen, aber es lohnt sich nicht. Ich starte den Container einfach neu. –