gpt4 book ai didi

kubernetes - 当涉及到主机路径卷时,kubernetes如何处理跨多个pod的文件写储物柜

转载 作者:行者123 更新时间:2023-12-02 11:44:37 28 4
gpt4 key购买 nike

我有记录到文件my_log / 1.log的应用程序,然后使用filebeat从文件中收集日志

现在,我使用k8s将其部署到某些节点中,并使用主机路径类型“卷”将my_log文件安装到本地文件系统/ home / my_log,突然发现一种微妙的情况:

如果在此计算机上部署了多个Pod,然后他们尝试同时写入日志,将会发生什么情况?

我知道在正常情况下,多进程尝试同时写入一个文件,系统会锁定该文件,因此这些进程可以一个接一个地写入,但是我不确定k8s不同的Pod是否会共享相同的锁空间,如果是这样,将是一场灾难。
我尝试测试一下,看来不同的Pod仍会共享文件锁,日志文件似乎正常

最佳答案

how kubernetes deal with file write locker accross multi pods when hostpath Volumes concerned



没有。

操作系统和文件系统正在处理该问题。
syslog为例,它通过打开套接字,将套接字设置为服务器模式,以写模式打开日志文件,收到程序包通知,解析消息并最终将其写入文件来处理它。

还可以缓存日志,并且该过程可以限制为1个线程,因此您不应有很多Pod写入一个文件。这可能导致诸如丢失日志或剪切线之类的问题。

您的应用程序应处理文件锁定以推送日志,如果您想让许多Pod编写日志,则每个Pod应该有一个单独的日志文件。

关于kubernetes - 当涉及到主机路径卷时,kubernetes如何处理跨多个pod的文件写储物柜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52052573/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com