如何确保一台物理机器运行了web微服务的时候就必须同时运行一个log微服务?这对于弹性扩容的k8s来说是巨大挑战

基于docker的web微服务运行的时候,映射了宿主的log目录到容器的log目录,此时我们开启了一个filebeat微服务,这个微服务的目的就是吧log目录的日志同步到elasticsearch,问题是我们如何确保一台物理机器运行了web微服务的时候就必须同时运行一个log微服务?

假如用了k8s的什么弹性扩容,那么日志微服务也得响应的配套。

阅读 2k
3 个回答

核心问题不是怎么保证log服务存在,而是统一的进行日志采集。吧日志做成单一的服务,可以根据设置约定去采集日志。而不是每一个服务都需要自己去处理日志上传。参考阿里云日志采集,k8s应该也有类似的插件吧。

很多种办法:
1.自定义CRD资源,该资源同时部署服务和日志采集的agent端
2.service mesh方案, 采用sideCar方式启动日志采集组件

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题