2015-11-18 25 views

cevap

3

Kullanılabilir belgelerle başlayarak: durumunuzda logging ve volumes. Birlikte bu iki kaynağı alarak aşağıdaki gibi bir şey varmak:

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

Bu dosyaları, birimler birimi yerine, -log-driver = syslog docker seçeneğini kullanarak arıyorum. Bu şekilde kapsayıcının stdout/stderr'e ancak bulut üzerinde oturum açmasına olanak tanıyan bir docker görüntüsü oluşturmanın en iyi uygulamasını izleyebilirim. --log-driver = syslog/fluentd ayarlayarak logları elasticsearch gibi merkezi bir kayıt deposuna alabilirim. –

+0

Dediğim gibi, yukarıdaki en iyi uygulamadır, ayrıca bkz. Https://github.com/kubernetes/kubernetes/blob/release-1.0/contrib/logging/fluentd-sidecar-gcp/README.md –

+0

bir göz atacak .. teşekkürler @Michael –

1

i Kubernetes pod json dosyasında böyle --log sürücü seçenekleri yapmanız gereken sanmıyorum. Deneyimim olarak, bu ayarı docker servisine ayarlayabilirsiniz. yani

/etc/systemd/system/docker.service 

kontrol etmek ve ExecStart =/usr/bin/liman işçisi cin --log-sürücü = json dosyası blablabla ayarlayın. Daha fazla bilgi buradan edinilebilir: https://docs.docker.com/engine/admin/logging/overview/#configure-logging-drivers

bundan başka, eğer bu --log sürücüsünü ayarlamazsanız, varsayılan olarak json dosyası oluşturulacak ve kubernetes kapsüllerinde tüm kapsayıcıları toplayabileceksiniz.