2016-03-22 7 views
0

Wenn ich einen Container manuell starte, sehe ich die mounts aber durch ein yaml, die mounts sind leer.fluentd container kit nicht anstellen k8 worker directories via yaml (1.2)

apiVersion: v1 
kind: Pod 
metadata: 
    name: fluentd2elasticsearch 
    namespace: kube-system 
spec: 
    containers: 
    - name: fluentd-es 
    image: gcr.io/google_containers/fluentd-elasticsearch:1.15 
    env: 
     - name: FLUENTD_ARGS 
     value: "-qq" 
    volumeMounts: 
     - name: containers 
     mountPath: /var/lib/docker/containers 
     - name: varlog 
     mountPath: /var/log 
    volumes: 
    - name: containers 
    source: 
     hostDir: 
     path: /var/lib/docker/containers 
    - name: varlog 
    source: 
     hostDir: 
     path: /var/log 

Wenn ich mit dem Container verbinden, sind die Verzeichnisse leer oder enthält nur die Fluentd-Pod-Dateien. Run manuell:

docker run -d -v /var/lib/docker/containers:/var/lib/docker/containers -v /var/log:/var/log gcr.io/google_containers/fluentd-elasticsearch:1.15 

Alles sieht gut aus, aber ich brauche kuber den Behälter zu starten, um es Elasticsearch ins Gespräch kommen (innen Kubernetes oder k8 ich sehe manchmal geschrieben).

Docker inspizieren Diesen:

"Mounts": [ 
    { 
     "Source": "/var/lib/kubelet/pods/1c11495ddc980659911fd7a596a346f8/volumes/kubernetes.io~empty-dir/containers", 
     "Destination": "/var/lib/docker/containers", 
     "Mode": "", 
     "RW": true 
    }, 
    { 
     "Source": "/var/lib/kubelet/pods/1c11495ddc980659911fd7a596a346f8/volumes/kubernetes.io~empty-dir/varlog", 
     "Destination": "/var/log", 
     "Mode": "", 
     "RW": true 
    }, 

Ich vermute kubernetes.io ~ leer-dir ist nicht das, was ich dort sehen wollen.

Antwort

2

Es scheint einige strukturelle Probleme mit dem Volume-Abschnitt zu geben. Versuchen Sie:

volumes: 
    - name: containers 
    hostPath: 
     path: /var/lib/docker/containers 
    - name: varlog 
    hostPath: 
     path: /var/log