普通容器的日志,采用nas更好还是日志分析平台直接收集更好?

普通容器的日志,采用nas更好还是日志分析平台直接收集更好
从日志的持久性保存、性能、分析便捷性进行综合分析的话,哪种方案更优,或者是否有结合的方案。

参与24

7同行回答

先从单个容器的角度看日志的持久化存储:以Containerd容器运行时为例,容器日志会保存至/var/log/pods/$CONTAINER_NAME目录下,该目录默认保存在每个节点的本地盘上。但是本地存储有很多问题:日志量大会占用大量本地盘空间、日志分散管理难度大、POD漂移后日志找回难等;因此常见...显示全部

先从单个容器的角度看日志的持久化存储:
以Containerd容器运行时为例,容器日志会保存至/var/log/pods/$CONTAINER_NAME目录下,该目录默认保存在每个节点的本地盘上。
但是本地存储有很多问题:日志量大会占用大量本地盘空间、日志分散管理难度大、POD漂移后日志找回难等;因此常见的是指定一个外置NFS共享存储路径来挂载该目录。如果对性能有诉求,可以用全闪存的NFS存储或者SSD占比较多的混合闪存。

但解决容器日志的本地存储是第一步,要发挥日志的作用,还要建立日志分析平台。
所以接下来从K8S集群角度看日志存储和分析:
常见的是部署一套日志收集-存储-分析平台,如ELK/EFK平台
其中的L(Logstash)或F(Fluentd)作为logging agent会作为DaemonSet运行在每个节点上用于抽取日志并写入Elastic Search节点;日志会在ES节点上再次持久化,再使用Kibana做分析
ES节点下的存储建议基于混合闪存的NAS:
1. 为什么推荐外置存储:

  • 集群产生的日志量较大,本地盘的扩容能力受限于单节点的盘数,扩容困难,一旦日志量突增就需要紧急删日志或转储来释放空间;而使用外置存储可以灵活扩容,不会出现因为盘不够用加服务器的情况
  • 本地盘的可靠性不足,单盘故障时数据重构慢,节点故障时只能依靠应用的多副本来保护;而使用外置存储,则把数据可靠性交给专业存储,ES可以单副本部署,即降低成本,也减少了运维的工作量
    2. 为什么推荐混合闪存:
    -  使用SSD作为性能层,保证ES热数据节点的读写效率;使用HDD作为容量层,降低温数据节点(如>30天)日志的成本
    一套存储就可以同时满足高性能、高可靠、低成本的诉求,部署简单。
    3. 为什么推荐NAS:
  • 企业级NAS可以提供接近SAN的性能,同时还具备多租户能力、租户配额等能力,可以隔离不同业务的数据,简化容量管理;
  • 另外基于NAS可以实现POD更快的漂移,例如某个节点故障导致ES POD需要漂移到另一个节点重启,NAS相对于SAN可以实现跨节点挂载,减少等待时间,进一步提升ES业务的可用性。
收起
硬件生产 · 2023-05-16
浏览1241

ChatGPT 回答

在银行行业中,日志的重要性不言而喻。对于普通容器的日志,采用NAS存储还是日志分析平台直接收集,需要根据具体情况进行综合考虑。

从日志的持久性保存来看,NAS存储更为稳定可靠,可以保证数据的长期保存和可靠性。而日志分析平台直接收集则需要考虑数据的备份和恢复,以及数据的安全性等问题。

从性能方面来看,NAS存储可以提供更高的读写速度和更大的存储容量,但是在高并发的情况下可能会出现性能瓶颈。而日志分析平台直接收集则可以通过分布式架构来提高性能,但是需要考虑平台的稳定性和可扩展性。

从分析便捷性来看,日志分析平台直接收集可以提供更为灵活的分析和查询功能,可以根据需求进行定制化的分析和报表生成。而NAS存储则需要通过其他工具或平台来进行数据分析和查询。

因此,针对银行行业的特殊需求,可以考虑采用结合方案。可以将普通容器的日志先存储到NAS中,然后通过日志分析平台进行数据的分析和查询,以达到更好的持久性保存、性能和分析便捷性。同时,也需要根据具体情况进行细致的规划和实施,以确保系统的稳定性和安全性。

提问者

zzy3620
系统环境管理某城商行
擅长领域: 数据库存储云计算

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2023-05-12
  • 关注会员:8 人
  • 问题浏览:3206
  • 最近回答:2023-07-12
  • X社区推广