2017-07-05 27 views
0

私は 'terminationMessagePath'に単純なメッセージを書き、次に「CrashLoopBackOff」でポッドを終了するポッドを実行しています。私は各Kubernetesノードにログインするのではなく、Kibanaを介してデバッグできるようにしたいと考えています。私はKibanaにプロパティ理由&メッセージからコンテナの最後の状態値 "CrashLoopBackOff"を取得するように質問し、エントリを見つけることができませんでした。Kubernetes Podが 'CrashLoopBackOff'で終了したときにFluentdがキャプチャしますか?

私はキバナのポッドのフィールドを見ることができますが、私が探しているフィールド(下の太字のyamlフォーマット)は空です。

Kubernetesポッドからログを取得するにはどのような設定が必要ですか?または構成設定する必要がKubernetes

から

$ kubectl GET pod_name_1 -o = YAML

terminationMessagePath: /var/log/containers/dt.log 
volumeMounts: 
- mountPath: /var/log/containers 
    name: data 
- mountPath: /var/run/secrets/kubernetes.io/serviceaccount 
    name: default-token-s0w2n 
    readOnly: true 
dnsPolicy: ClusterFirst 
nodeName: dev-master-01 
restartPolicy: Always 
securityContext: {} 
serviceAccount: default 
serviceAccountName: default 
terminationGracePeriodSeconds: 30 
volumes: 
- hostPath: 
    path: /var/log/containers 
    name: data 
- name: default-token-s0w2n 
secret: 
    defaultMode: 420 
    secretName: default-token-s0w2n 
status: 
conditions: 
- lastProbeTime: null 
    lastTransitionTime: 2017-07-05T14:45:11Z 
    status: "True" 
    type: Initialized 
- lastProbeTime: null 
    lastTransitionTime: 2017-07-05T17:00:22Z 
    message: 'containers with unready status: [dt-termination-demo]' 
    reason: ContainersNotReady 
    status: "False" 
    type: Ready 
- lastProbeTime: null 
    lastTransitionTime: 2017-07-05T14:45:11Z 
    status: "True" 
    type: PodScheduled 
    containerStatuses: 
- containerID: 
    docker://9649c26527cf0e1cd3bd67ba9c606c0b78e6b4f08bacf96175627ddc7d250772 
    image: debian 
    imageID: docker pullable://docker.io/[email protected]: 
      7d067f77d2ae5a23fe6920f8fbc2936c4b0d417e9d01b26372561860750815f0 
    lastState: 
    terminated: 
    containerID: docker:// 
    9649c26527cf0e1cd3bd67ba9c606c0b78e6b4f08bacf96175627ddc7d250772    
    exitCode: 0 
    finishedAt: 2017-07-05T17:00:22Z 
    **message: | 
    Sleep expired** 
    reason: Completed 
    startedAt: 2017-07-05T17:00:12Z 
    name: dt-termination-demo 
    ready: false 
    restartCount: 30 
    state: 
    waiting: 
    message: Back-off 5m0s restarting failed container=dt-termination-demo 
       pod=dt-termination-demo-2814930607-8kshj_ 
       default(8c247b15-6190-11e7-acb7-00505691210d) 
    **reason: CrashLoopBackOff** 
    hostIP: 192.21.19.128 
    phase: Running 
    podIP: 10.0.0.8 
    startTime: 2017-07-05T14:45:11Z 

答えて

0

FluentdがDaemonSetとして展開されている場合、それはノードとポッドからすべてのログを収集することを目指しています。これを達成するためのガイドとして、次のYAMLファイルと関連するさらなるリポジトリを確認してください:

:あなたは、追加の支援が必要な場合は

を、あなたも私たちのスラックチャンネルに参加することができます

+0

edsiper、返信ありがとうございます。 Fluentdはノードとポッドからログを収集しますが、「CrashLoopBackOff」エラーでポッドが終了またはクラッシュした場合は収集しません。木場では、「CrashLoopBackOff」を使ってポッドについての情報を見ることができますが、実際の「CrashLoopBackOff」値はログやメッセージに表示されません。ログには通常、コンテナステータスの最後の状態と現在の状態が含まれます。コンテナステータス情報を持つコマンド(kubectl get pod pod_name -o = yaml) –

関連する問題