8e5b17cf13
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
89 lines
3.2 KiB
YAML
89 lines
3.2 KiB
YAML
# please keep this file synchronized with cluster/saltbase/salt/fluentd-gcp/fluentd-gcp.yaml
|
|
apiVersion: extensions/v1beta1
|
|
kind: DaemonSet
|
|
metadata:
|
|
name: fluentd-gcp-v1.31
|
|
namespace: kube-system
|
|
labels:
|
|
k8s-app: fluentd-gcp
|
|
kubernetes.io/cluster-service: "true"
|
|
version: v1.31
|
|
spec:
|
|
template:
|
|
metadata:
|
|
labels:
|
|
k8s-app: fluentd-gcp
|
|
kubernetes.io/cluster-service: "true"
|
|
version: v1.31
|
|
spec:
|
|
containers:
|
|
- name: fluentd-gcp
|
|
image: gcr.io/google_containers/fluentd-gcp:1.32
|
|
# If fluentd consumes its own logs, the following situation may happen:
|
|
# fluentd fails to send a chunk to the server => writes it to the log =>
|
|
# tries to send this message to the server => fails to send a chunk and so on.
|
|
# Writing to a file, which is not exported to the back-end prevents it.
|
|
# It also allows to increase the fluentd verbosity by default.
|
|
command:
|
|
- '/bin/sh'
|
|
- '-c'
|
|
- '/run.sh $FLUENTD_ARGS 2>&1 >>/var/log/fluentd.log'
|
|
resources:
|
|
limits:
|
|
memory: 200Mi
|
|
requests:
|
|
cpu: 100m
|
|
memory: 200Mi
|
|
volumeMounts:
|
|
- name: varlog
|
|
mountPath: /var/log
|
|
- name: varlibdockercontainers
|
|
mountPath: /var/lib/docker/containers
|
|
readOnly: true
|
|
- name: libsystemddir
|
|
mountPath: /host/lib
|
|
# Liveness probe is aimed to help in situarions where fluentd
|
|
# silently hangs for no apparent reasons until manual restart.
|
|
# The idea of this probe is that if fluentd is not queueing or
|
|
# flushing chunks for 5 minutes, something is not right. If
|
|
# you want to change the fluentd configuration, reducing amount of
|
|
# logs fluentd collects, consider changing the threshold or turning
|
|
# liveness probe off completely.
|
|
livenessProbe:
|
|
initialDelaySeconds: 600
|
|
periodSeconds: 60
|
|
exec:
|
|
command:
|
|
- '/bin/sh'
|
|
- '-c'
|
|
- >
|
|
LIVENESS_THRESHOLD_SECONDS=${LIVENESS_THRESHOLD_SECONDS:-300};
|
|
STUCK_THRESHOLD_SECONDS=${LIVENESS_THRESHOLD_SECONDS:-900};
|
|
if [ ! -e /var/log/fluentd-buffers ];
|
|
then
|
|
exit 1;
|
|
fi;
|
|
LAST_MODIFIED_DATE=`stat /var/log/fluentd-buffers | grep Modify | sed -r "s/Modify: (.*)/\1/"`;
|
|
LAST_MODIFIED_TIMESTAMP=`date -d "$LAST_MODIFIED_DATE" +%s`;
|
|
if [ `date +%s` -gt `expr $LAST_MODIFIED_TIMESTAMP + $STUCK_THRESHOLD_SECONDS` ];
|
|
then
|
|
rm -rf /var/log/fluentd-buffers;
|
|
exit 1;
|
|
fi;
|
|
if [ `date +%s` -gt `expr $LAST_MODIFIED_TIMESTAMP + $LIVENESS_THRESHOLD_SECONDS` ];
|
|
then
|
|
exit 1;
|
|
fi;
|
|
nodeSelector:
|
|
alpha.kubernetes.io/fluentd-ds-ready: "true"
|
|
terminationGracePeriodSeconds: 30
|
|
volumes:
|
|
- name: varlog
|
|
hostPath:
|
|
path: /var/log
|
|
- name: varlibdockercontainers
|
|
hostPath:
|
|
path: /var/lib/docker/containers
|
|
- name: libsystemddir
|
|
hostPath:
|
|
path: /usr/lib64
|