2015-11-18 23 views

risposta

3

A partire dalla documentazione disponibile: nel tuo caso su logging e volumes. Prendendo queste due fonti insieme si arriva a qualcosa di simile al seguente:

... 
containers: 
    - name: syslogtest 
    image: ubuntu:14.04 
    volumeMounts: 
     - name: logvol 
     mountPath: /dev/log 
     readOnly: false 
volumes: 
    - name: logvol 
    source: 
     hostDir: 
     path: /dev/log 
... 
+0

Sto cercando di usare l'opzione --log-driver = syslog docker piuttosto che montare volumi. In questo modo posso seguire la best practice di costruire un'immagine docker in modo tale che il container registri su stdout/stderr ma su cloud, impostando --log-driver = syslog/fluentd Posso raccogliere i log in un archivio di registrazione centrale come elasticsearch. –

+0

Come ho detto, sopra è la migliore pratica, vedere anche l'esempio https://github.com/kubernetes/kubernetes/blob/release-1.0/contrib/logging/fluentd-sidecar-gcp/README.md –

+0

oh capisco. Daremo un'occhiata .. grazie @ Michael –

1

Non penso kubernetes hanno bisogno di fare tali opzioni --log-driver nel file di pod JSON. In base alla mia esperienza, puoi impostare tali impostazioni nel servizio docker. cioè controllare

/etc/systemd/system/docker.service 

e impostare ExecStart =/usr/bin/finestra mobile daemon --log-driver = JSON-file di blablabla. ulteriori informazioni possono essere ottenute qui: https://docs.docker.com/engine/admin/logging/overview/#configure-logging-drivers

ulteriore, se non si imposta questo --log-driver, per impostazione predefinita verrà creato il file json, che ha raccolto tutti i registri dei contenitori in pod kubernetes, è possibile trova quei file su

your_docker_runtime_root/docker/containers/container_id/container_id-json.json