# コンテナ再起動させると、Filebeatのログ収集が止まる

**URL:** <https://discuss.elastic.co/t/filebeat/236437>\
**Category:** 日本語による質問・議論はこちら\
**Created:** [June 10, 2020, 5:29am UTC](https://discuss.elastic.co/t/filebeat/236437 "2020-06-10T05:29:05Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Negi700](https://avatars.discourse-cdn.com/v4/letter/n/e9bcb4/32.png) [@Negi700](https://discuss.elastic.co/u/Negi700)\
**Post date:** [June 10, 2020, 5:29am UTC](https://discuss.elastic.co/t/filebeat/236437/1 "2020-06-10T05:29:05Z")

</div>

Kubernetes上のTomcatのコンテナのログを、Filebeatのコンテナで収集しています。  
Tomcatのコンテナ再起動後、収集対象のログは更新されているのに、ログ収集のインスタンスが、  
ログ更新を検知していないようで、Filebeatのログ収集が開始されません。。  
ほかのアプリのログ収集も、同様に、コンテナの再起動をかけるとログ収集が止まります。

暫定対処として、アプリのコンテナ再起動後、Filebeatのコンテナ再起動をかけてログ収集の再開をさせています。

Filebeatのログを確認したところ、エラーも出ていないので、  
原因がわからず、根本対処に困っています。

〇環境  
Kubernetes上のコンテナ  
Tomcat(ログ出力はAzure上の永続化ボリューム)  
Filebeat

〇filebeat.yml

filebeat.inputs:

type: log  
enabled: true  
type: log  
close\_inactive: 5m  
ignore\_older: 15m  
paths:

/var/lib/kubelet/plugins/kubernetes.io/azure-disk/mounts/m\*/api.log  
tags:  
Tomcat\_api.log

設定が悪いのでしょうか？  
何か、よい解決策はないでしょうか？

---

<div class="post-metadata">

**Author:** ![bruce\_shimizu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/bruce_shimizu/32/68786_2.png) [@bruce\_shimizu](https://discuss.elastic.co/u/bruce_shimizu)\
**Post date:** [June 15, 2020, 8:09am UTC](https://discuss.elastic.co/t/filebeat/236437/2 "2020-06-15T08:09:46Z")

</div>

k8sでのFilebeatsのデプロイメントは、一般的にはDaemon Setでのデプロイがリコメンドとなります。

[https://www.elastic.co/guide/en/beats/filebeat/current/running-on-kubernetes.html](https://www.elastic.co/guide/en/beats/filebeat/current/running-on-kubernetes.html)

イメージとしては、Filebeatは、以下のLogging Agentになります。

> **[Logging Architecture](https://kubernetes.io/docs/concepts/cluster-administration/logging/#cluster-level-logging-architectures)**
>
> Application and systems logs can help you understand what is happening inside your cluster. The logs are particularly useful for debugging problems and monitoring cluster activity. Most modern applications have some kind of logging mechanism; as...

ご質問頂いた環境のBeatsのデプロイ方法はどんな形でしょうか？  
FilebeatsをSidecarとしてデプロイしていますか？

> **[Logging Architecture](https://kubernetes.io/docs/concepts/cluster-administration/logging/#sidecar-container-with-a-logging-agent)**
>
> Application and systems logs can help you understand what is happening inside your cluster. The logs are particularly useful for debugging problems and monitoring cluster activity. Most modern applications have some kind of logging mechanism; as...

---

<div class="post-metadata">

**Author:** ![Negi700](https://avatars.discourse-cdn.com/v4/letter/n/e9bcb4/32.png) [@Negi700](https://discuss.elastic.co/u/Negi700)\
**Post date:** [June 16, 2020, 11:04am UTC](https://discuss.elastic.co/t/filebeat/236437/3 "2020-06-16T11:04:27Z")

</div>

レスありがとうございます。  
ご質問頂いた環境のBeatsのデプロイ方法はどんな形でしょうか？

Daemon Setで、デプロイしています。

FilebeatsをSidecarとしてデプロイしていますか？

Azure Kubernetes Service ( AKS)のクラスターノードの、  
Sidecarとしてデプロイしています。

AKS上のコンテナのログを永続化ボリュームに出力しているので、  
そのログをSidecarのfilebeetで、収集させています。

---

<div class="post-metadata">

**Author:** ![bruce\_shimizu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/bruce_shimizu/32/68786_2.png) [@bruce\_shimizu](https://discuss.elastic.co/u/bruce_shimizu)\
**Post date:** [June 17, 2020, 9:20am UTC](https://discuss.elastic.co/t/filebeat/236437/4 "2020-06-17T09:20:53Z")

</div>

Daemon SetとSide Carは排他なので、Filebeatは **Daemon Setではなく** 、 **TomcatコンテナのSide Car** として同じPodでデプロイされているイメージですかね？

Sider Carでということになると、おそらく、TomcatコンテナとFilebeatコンテナで、それぞれPersistent VolumeをVolumeマウントして互いに見ているのだと思いますが、その辺りのPod設定の問題か、もしくはTomcatコンテナ側でログローテーションした時に、Filebeat側がうまく認識できていない可能性がありますね。

一般的なリコメンドとしては、コンテナログはstdout/stderrに吐いて、Daemon SetとしてデプロイしているFilebeatでそれをキャプチャするやり方です。特段の理由がなければ、Hint BaseのAutodiscoverを使うほうが簡単かと思います。

> **[Beatsを使用したDockerおよびKubernetesのヒントベースの自動探知機能（Autodiscover）](https://www.elastic.co/jp/blog/docker-and-kubernetes-hints-based-autodiscover-with-beats)**
>
> Beats 6.3では、KubernetesおよびDockerの自動探知に新しい機能が提供されます。ラベルまたは注釈を使用して、ロギングおよび監視設定を定義できるようになりました。

---

<div class="post-metadata">

**Author:** ![Negi700](https://avatars.discourse-cdn.com/v4/letter/n/e9bcb4/32.png) [@Negi700](https://discuss.elastic.co/u/Negi700)\
**Post date:** [June 22, 2020, 12:45am UTC](https://discuss.elastic.co/t/filebeat/236437/5 "2020-06-22T00:45:50Z")

</div>

bruce\_shimizuさん  
レスと、ご確認、ありがとうございます。

Filebeatは、Daemon Setで、デプロイしています。  
ご教示ありました情報をもとに、確認してみます。

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 20, 2020, 12:45am UTC](https://discuss.elastic.co/t/filebeat/236437/6 "2020-07-20T00:45:51Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
