diff --git a/production/ksonnet/README.md b/production/ksonnet/README.md index e3b17a1c3ddb8850c4446319b50ceaf64fc1728f..9b3c6f66dc1aadb7c2bb35547041feb69f5436da 100644 --- a/production/ksonnet/README.md +++ b/production/ksonnet/README.md @@ -45,10 +45,12 @@ promtail + { hostname: 'logs-us-west1.grafana.net', username: 'user-id', password: 'password', + dataroot: '/var/lib/docker', }, }, } ``` +Notice that `dataroot` is your own data root for docker daemon, use `docker info | grep "Root Dir"` to get it. Then do `ks show loki` to see the manifests that'll be deployed to your cluster. Apply them using `ks apply loki`. @@ -79,13 +81,15 @@ loki + promtail + gateway { scheme: 'http', hostname: 'gateway.%(namespace)s.svc' % $._config, username: 'loki', - password: 'password' + password: 'password', + dataroot: '/var/lib/docker', }, replication_factor: 3, consul_replicas: 1, }, } ``` +Notice that `dataroot` is your own data root for docker daemon, use `docker info | grep "Root Dir"` to get it. Do `ks show loki` to see the manifests being deployed to the cluster. Finally `ks apply loki` to deploy the server components to your cluster. diff --git a/production/ksonnet/promtail/promtail.libsonnet b/production/ksonnet/promtail/promtail.libsonnet index 0a1ee9f8b8452c84efcd97c06fe19eb6c55c4551..dc4e5345e4eee7c703a8c7666b98dfacdbeebb4d 100644 --- a/production/ksonnet/promtail/promtail.libsonnet +++ b/production/ksonnet/promtail/promtail.libsonnet @@ -12,6 +12,7 @@ k { password: '', scheme: 'https', hostname: 'log-us.grafana.net', + dataroot: '/var/lib/docker', }, @@ -184,5 +185,5 @@ k { daemonSet.mixin.spec.template.spec.withServiceAccount('promtail') + $.util.configVolumeMount('promtail', '/etc/promtail') + $.util.hostVolumeMount('varlog', '/var/log', '/var/log') + - $.util.hostVolumeMount('varlibdockercontainers', '/var/lib/docker/containers', '/var/lib/docker/containers', readOnly=true), + $.util.hostVolumeMount('varlibdockercontainers', $._config.promtail_config.dataroot + '/containers', '/var/lib/docker/containers', readOnly=true), } diff --git a/tools/promtail.sh b/tools/promtail.sh index 76c59fbac2d8d2d947756c8150fe2698e29987d2..61b08794681797793bf5abde65024c631d7ff94e 100644 --- a/tools/promtail.sh +++ b/tools/promtail.sh @@ -4,9 +4,10 @@ INSTANCEID="${1:-}" APIKEY="${2:-}" INSTANCEURL="${3:-}" NAMESPACE="${4:-default}" +DATAROOT="${5-/var/lib/docker}" -if [ -z "$INSTANCEID" -o -z "$APIKEY" -o -z "$INSTANCEURL" -o -z "$NAMESPACE" ]; then - echo "usage: $0 <instanceId> <apiKey> <url> <namespace>" +if [ -z "$INSTANCEID" -o -z "$APIKEY" -o -z "$INSTANCEURL" -o -z "$NAMESPACE" -o -z "$DATAROOT" ]; then + echo "usage: $0 <instanceId> <apiKey> <url> <namespace> <dataroot>" exit 1 fi @@ -134,7 +135,7 @@ spec: path: /var/log name: varlog - hostPath: - path: /var/lib/docker/containers + path: <dataroot>/containers name: varlibdockercontainers updateStrategy: type: RollingUpdate @@ -182,3 +183,4 @@ echo "$TEMPLATE" | sed \ -e "s#<apiKey>#${APIKEY}#" \ -e "s#<instanceUrl>#${INSTANCEURL}#" \ -e "s#<namespace>#${NAMESPACE}#" + -e "s#<dataroot>#${DATAROOT}#"