Closed tombarnsley closed 6 years ago
Hi there,
I am really struggling to get data into the ES cluster from filebeats.
Here are the services in the namespace I have deployed them.
elasticsearch ClusterIP 10.254.136.171 9200/TCP elasticsearch-data ClusterIP None 9300/TCP elasticsearch-discovery ClusterIP 10.254.241.191 9300/TCP
Here is the file beats .yaml
apiVersion: v1 kind: ConfigMap metadata: name: filebeat-config namespace: vanti labels: k8s-app: filebeat kubernetes.io/cluster-service: "true" data: filebeat.yml: |- filebeat.config: prospectors: # Mounted `filebeat-prospectors` configmap: path: ${path.config}/prospectors.d/*.yml # Reload prospectors configs as they change: reload.enabled: true modules: path: ${path.config}/modules.d/*.yml # Reload module configs as they change: reload.enabled: true processors: - add_cloud_metadata: cloud.id: ${ELASTIC_CLOUD_ID} cloud.auth: ${ELASTIC_CLOUD_AUTH} output.elasticsearch: hosts: elasticsearch.vanti:9200 username: ${ELASTICSEARCH_USERNAME} password: ${ELASTICSEARCH_PASSWORD} --- apiVersion: v1 kind: ConfigMap metadata: name: filebeat-prospectors namespace: vanti labels: k8s-app: filebeat kubernetes.io/cluster-service: "true" k8s-app: filebeat kubernetes.io/cluster-service: "true" data: kubernetes.yml: |- - type: docker containers.ids: - "*" processors: - add_kubernetes_metadata: in_cluster: true --- apiVersion: extensions/v1beta1 kind: DaemonSet metadata: name: filebeat namespace: vanti labels: k8s-app: filebeat kubernetes.io/cluster-service: "true" spec: template: metadata: labels: k8s-app: filebeat kubernetes.io/cluster-service: "true" spec: serviceAccountName: filebeat terminationGracePeriodSeconds: 30 containers: - name: filebeat image: docker.elastic.co/beats/filebeat:6.1.2 args: [ "-c", "/etc/filebeat.yml", "-e", ] env: - name: ELASTICSEARCH_HOST value: elasticsearch - name: ELASTICSEARCH_PORT value: "9200" - name: ELASTICSEARCH_USERNAME value: "9200" - name: ELASTICSEARCH_USERNAME value: elastic - name: ELASTICSEARCH_PASSWORD value: changeme - name: ELASTIC_CLOUD_ID value: - name: ELASTIC_CLOUD_AUTH value: 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: prospectors mountPath: /usr/share/filebeat/prospectors.d readOnly: true - name: data mountPath: /usr/share/filebeat/data - name: varlibdockercontainers mountPath: /var/lib/docker/containers readOnly: true volumes: - name: config configMap: defaultMode: 0600 name: filebeat-config - name: varlibdockercontainers hostPath: path: /var/lib/docker/containers - name: prospectors configMap: defaultMode: 0600 configMap: defaultMode: 0600 name: filebeat-prospectors - name: data emptyDir: {} --- apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRoleBinding metadata: name: filebeat subjects: - kind: ServiceAccount name: filebeat namespace: vanti roleRef: kind: ClusterRole name: filebeat apiGroup: rbac.authorization.k8s.io --- apiVersion: rbac.authorization.k8s.io/v1beta1 kind: ClusterRole metadata: name: filebeat labels: k8s-app: filebeat rules: - apiGroups: [""] # "" indicates the core API group resources: - namespaces - pods verbs: - get - watch - list --- apiVersion: v1 kind: ServiceAccount metadata: name: filebeat namespace: vanti labels: namespace: vanti labels: k8s-app: filebeat ---``` Nothing is showing any errors in the logs whatsoever. However when I connect to the console of one of the containers in the namespace and run `curl -XGET 'elasticsearch.vanti:9200/_cat/indices?v&pretty'` I can see no indecies being created not does kibana.
We managed to sort this issue out. It appeared it was SElinux and Docker not logging to the correct place.
Hi there,
I am really struggling to get data into the ES cluster from filebeats.
Here are the services in the namespace I have deployed them.
elasticsearch ClusterIP 10.254.136.171 9200/TCP 9300/TCP elasticsearch-discovery ClusterIP 10.254.241.191 9300/TCP
elasticsearch-data ClusterIP None
Here is the file beats .yaml