Kubernetes logs

The following manual will help you integrate Coralogix logging into your Kubernetes logs.

Prerequisites

Before beginning you must have:

  • An installed Kubernetes Cluster
  • Enabled RBAC authorization mode
  • Pull the image coralogixrepo/fluentd-coralogix-image:latest

Installation

First, you should create a Kubernetes secret:

$ kubectl -n kube-system create secret generic fluentd-coralogix-account-secrets \
    --from-literal=PRIVATE_KEY=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX \
    --from-literal=APP_NAME=fluentd-coralogix-image \
    --from-literal=SUB_SYSTEM=fluentd

You should have something like:

secret "fluentd-coralogix-account-secrets" created

Then you need to apply our fluentd-coralogix-logger to your Kubernetes cluster:

$ kubectl create -f https://raw.githubusercontent.com/coralogix/fluentd-coralogix-image/master/examples/kubernetes/fluentd-coralogix-rbac.yaml
$ kubectl create -f https://raw.githubusercontent.com/coralogix/fluentd-coralogix-image/master/examples/kubernetes/fluentd-coralogix-cm.yaml
$ kubectl create -f https://raw.githubusercontent.com/coralogix/fluentd-coralogix-image/master/examples/kubernetes/fluentd-coralogix-ds.yaml
$ kubectl create -f https://raw.githubusercontent.com/coralogix/fluentd-coralogix-image/master/examples/kubernetes/fluentd-coralogix-svc.yaml

Output:

serviceaccount "fluentd-coralogix-service-account" created
clusterrole "fluentd-coralogix-service-account-role" created
clusterrolebinding "fluentd-coralogix-service-account" created
configmap "fluentd-coralogix-configs" created
daemonset "fluentd-coralogix-daemonset" created
service "fluentd-coralogix-service" created

Now, fluentd-coralogix-logger is collecting logs from your Kubernetes cluster.

Usage

You can view some usage examples here.

Update

Once installed, the deployment will not automatically update. In order to update it, you need to delete the deployment’s pods and wait for it to be recreated. After recreation, it should use the latest image.

Delete all fluentd-coralogix-logger pods:

$ kubectl -n kube-system delete $(kubectl -n kube-system get pod -o name | grep "fluentd-coralogix-daemonset")

Note that if you would like to send all of the log content with kubernetes metadata like: labels, tags, pod name etc. you should remove log_key_name log from fluentd.conf 

Uninstall

If you want to remove fluentd-coralogix-logger from your cluster, execute this:

$ kubectl -n kube-system delete secret fluentd-coralogix-account-secrets
$ kubectl -n kube-system delete svc,ds,cm,clusterrolebindings,clusterroles,sa \
     -l k8s-app: fluentd-coralogix-logger

 

Signup to Coralogix

WordPress Lightbox