应用容器化改造难点之:容器化后日志存储该如何改造,如何兼顾本地存储和远程ELK存储?

参与17

3同行回答

GaryyGaryy  系统工程师 , 某保险
应对分布式环境下日志分散的解决办法是收集日志,将其集中到一个地方。收集到的海量日志需要经过结构化处理,进而交给需要的人员分析,挖掘日志的价值信息。同时不同的人员对日志的需求是不一样的,运营人员关注访问日志,运维人员关注系统日志,开发人员关注应用日志。这样就需要有...显示全部

应对分布式环境下日志分散的解决办法是收集日志,将其集中到一个地方。收集到的海量日志需要经过结构化处理,进而交给需要的人员分析,挖掘日志的价值信息。同时不同的人员对日志的需求是不一样的,运营人员关注访问日志,运维人员关注系统日志,开发人员关注应用日志。这样就需要有一种足够开放、灵活的方法让所有关心日志的人在日志收集过程中对其定义、分割、过滤、索引、查询。
OpenShift使用EFK来实现日志管理平台。该管理平台具备以下能力:
■ 日志采集,将日志集中在一起
■ 索引日志内容,快速返回查询结果
■ 具有伸缩性,在各个环节都能够扩容
■ 强大的图形查询工具、报表产出工具

收起
保险 · 2019-06-19
浏览2604
liufengyiliufengyi  软件架构设计师 , 某车企
第一种做法是用分布式存储,使用stateful资源对象模型来编排应用,外部对接elk(日志打印标准输出和本地),这样日志本地和远程都兼顾,但是要注意日志需要定时归档,删除第二种做法是用hostpath或者emptyDir,使用deployment资源对象模型来编排应用,注意不要把磁盘文件系统空间写满,外部...显示全部

第一种做法是用分布式存储,使用stateful资源对象模型来编排应用,外部对接elk(日志打印标准输出和本地),这样日志本地和远程都兼顾,但是要注意日志需要定时归档,删除
第二种做法是用hostpath或者emptyDir,使用deployment资源对象模型来编排应用,注意不要把磁盘文件系统空间写满,外部对接elk,

收起
互联网服务 · 2019-06-17
浏览2645
dean25dean25  软件架构设计师 , 民生银行
如果采用集中式的日志收集Agent,也就是在应用容器之外单独由一个日志收集程序从PVC收集日志并发往ELK,会很容易导致应用容器切换到新节点时失败,原因是日志收集程序会hold住PVC,如果PVC是独占类型的,就会锁住PVC,导致PVC无法释放,相应的应用Pod在新节点上由于不能加载PVC,就无法...显示全部

如果采用集中式的日志收集Agent,也就是在应用容器之外单独由一个日志收集程序从PVC收集日志并发往ELK,会很容易导致应用容器切换到新节点时失败,原因是日志收集程序会hold住PVC,如果PVC是独占类型的,就会锁住PVC,导致PVC无法释放,相应的应用Pod在新节点上由于不能加载PVC,就无法启动。为了解决这个问题,我们的做法是给这种需求的应用容器旁挂一个日志收集容器,两个容器在一个Pod里,这样应用Pod退出时,会完全释放PVC,应用Pod也可以在新的节点正常启动。

收起
银行 · 2019-06-20
浏览2646

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2019-06-17
  • 关注会员:6 人
  • 问题浏览:4444
  • 最近回答:2019-06-20
  • X社区推广