Last active
December 10, 2018 10:41
-
-
Save havlan/3b17ac346d9883ec584205827abdb9d9 to your computer and use it in GitHub Desktop.
Filebeat 6.5.2 autodiscover with hints example
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| apiVersion: v1 | |
| kind: ConfigMap | |
| metadata: | |
| name: filebeat-config | |
| namespace: kube-system | |
| labels: | |
| app: filebeat | |
| data: | |
| filebeat.yml: |- | |
| logging.level: info | |
| filebeat.autodiscover: | |
| providers: | |
| - type: kubernetes | |
| hints.enabled: true | |
| include_annotations: | |
| - "*" | |
| - "exampledomain.com/service" | |
| processors: | |
| - add_kubernetes_metadata: | |
| in_cluster: true | |
| #- drop_fields: | |
| # fields: ["host"] # for logstash compability, logstash adds its own host field in 6.3 (?) | |
| # This ensures that every log that passes has required fields | |
| - drop_event: | |
| when: | |
| not.has_fields: ['kubernetes.annotations.exampledomain.com/service'] | |
| output.logstash: | |
| hosts: ['${LOGSTASH_HOSTS}'] | |
| --- | |
| apiVersion: v1 | |
| kind: ConfigMap | |
| metadata: | |
| name: filebeat-inputs | |
| namespace: kube-system | |
| labels: | |
| app: filebeat | |
| data: | |
| kubernetes.yml: |- | |
| - type: docker | |
| containers.ids: | |
| - "*" | |
| processors: | |
| - add_kubernetes_metadata: | |
| in_cluster: true | |
| --- | |
| apiVersion: extensions/v1beta1 | |
| kind: DaemonSet | |
| metadata: | |
| name: filebeat | |
| namespace: kube-system | |
| labels: | |
| app: filebeat | |
| spec: | |
| template: | |
| metadata: | |
| labels: | |
| app: filebeat | |
| annotations: | |
| exampledomain.com/service: testservice55 | |
| spec: | |
| serviceAccountName: filebeat | |
| terminationGracePeriodSeconds: 30 | |
| containers: | |
| - name: filebeat | |
| image: docker.elastic.co/beats/filebeat:6.5.2 | |
| args: [ | |
| "-e", | |
| #"-v", | |
| #"-d", | |
| #"autodiscover,docker", | |
| "-c", | |
| "/etc/filebeat.yml", | |
| ] | |
| env: | |
| - name: LOGSTASH_HOSTS | |
| value: "10.0.2.2:5044" # minikube 10.0.2.2 | |
| - name: ELASTICSEARCH_HOST | |
| value: 10.0.2.2 | |
| - name: ELASTICSEARCH_PORT | |
| value: "9200" | |
| - name: LOG_LEVEL | |
| value: debug | |
| - name: CLUSTER_NAME | |
| value: my_cluster | |
| - name: FILEBEAT_HOST | |
| valueFrom: | |
| fieldRef: | |
| fieldPath: spec.nodeName | |
| securityContext: | |
| runAsUser: 0 | |
| resources: | |
| limits: | |
| memory: 200Mi | |
| requests: | |
| cpu: 100m | |
| memory: 100Mi | |
| volumeMounts: | |
| - name: config | |
| mountPath: /etc/filebeat.yml | |
| readOnly: true | |
| subPath: filebeat.yml | |
| - name: inputs | |
| mountPath: /usr/share/filebeat/inputs.d | |
| readOnly: true | |
| - name: data | |
| mountPath: /usr/share/filebeat/data | |
| - name: varlibdockercontainers | |
| mountPath: /var/lib/docker/containers | |
| readOnly: true | |
| - name: dockersock | |
| mountPath: /var/run/docker.sock | |
| volumes: | |
| - name: config | |
| configMap: | |
| defaultMode: 0600 | |
| name: filebeat-config | |
| - name: varlibdockercontainers | |
| hostPath: | |
| path: /var/lib/docker/containers | |
| - name: inputs | |
| configMap: | |
| defaultMode: 0600 | |
| name: filebeat-inputs | |
| # We set an `emptyDir` here to ensure the manifest will deploy correctly. | |
| # It's recommended to change this to a `hostPath` folder, to ensure internal data | |
| # files survive pod changes (ie: version upgrade) | |
| - name: data | |
| emptyDir: {} | |
| - name: dockersock | |
| hostPath: | |
| path: /var/run/docker.sock | |
| --- | |
| apiVersion: rbac.authorization.k8s.io/v1beta1 | |
| kind: ClusterRoleBinding | |
| metadata: | |
| name: filebeat | |
| subjects: | |
| - kind: ServiceAccount | |
| name: filebeat | |
| namespace: kube-system | |
| roleRef: | |
| kind: ClusterRole | |
| name: filebeat | |
| apiGroup: rbac.authorization.k8s.io | |
| --- | |
| apiVersion: rbac.authorization.k8s.io/v1beta1 | |
| kind: ClusterRole | |
| metadata: | |
| name: filebeat | |
| labels: | |
| app: filebeat | |
| rules: | |
| - apiGroups: [""] # "" indicates the core API group | |
| resources: | |
| - namespaces | |
| - pods | |
| verbs: | |
| - get | |
| - watch | |
| - list | |
| --- | |
| apiVersion: v1 | |
| kind: ServiceAccount | |
| metadata: | |
| name: filebeat | |
| namespace: kube-system | |
| labels: | |
| app: filebeat | |
| --- |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment