首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes (1.20)团簇中的Graylog

Kubernetes (1.20)团簇中的Graylog
EN

Stack Overflow用户
提问于 2021-02-10 08:45:48
回答 1查看 645关注 0票数 0

我试着设置灰测井

这个部署是有效的。但是我需要为灰色日志部署添加一个卷。因为我想安装插件。当我添加卷(hostPath)和开始结荚时,在我的荚中会出现一个错误:

代码语言:javascript
复制
ERROR StatusLogger File not found in file system or classpath: /usr/share/graylog/data/config/log4j2.xml
ERROR StatusLogger Reconfiguration failed: No configuration found for '70dea4e' at 'null' in 'null'
06:37:19.707 [main] ERROR org.graylog2.bootstrap.CmdLineTool - Couldn't load configuration: Properties file /usr/share/graylog/data/config/graylog.conf doesn't exist!

我明白了,这个豆荚在数量上创建目录(所有者id 1100:1100),但是那里没有任何文件。

在我的Kubernetes集群中,kubernetes的版本是1.20运行时,是“收集器”。

我的Graylog dе策略:

  1. 集装箱容积表:
代码语言:javascript
复制
volumeMounts:
    - mountPath: /usr/share/graylog/data
      name: graylog-data
  1. 音量:
代码语言:javascript
复制
 volumes:
  - name: graylog-data
    hostPath:
      path: /mnt/k8s-storage/graylog-data
      type: DirectoryOrCreate
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-17 13:08:59

hostPath卷的概念开始,这里几乎没有什么可看的:

hostPath卷将文件或目录从主机节点的文件系统挂载到Pod中。 配置相同的荚(例如从PodTemplate创建的)在不同节点上的行为可能因节点上的文件不同而有所不同。 在基础主机上创建的文件或目录只能由根用户写入。您需要在特权容器中以根用户身份运行进程,或者修改主机上的文件权限,以便能够写入hostPath

例如,如果您希望将hostPath用于运行在DaemonSet中的日志收集器,那么它将是很好的,但在您描述的用例中,它可能并不理想,因为您没有直接控制您的荚将在哪个节点上运行,因此不能保证在具有数据卷的节点上实际调度结荚。

但是如果不是这样的话,您还需要注意到在这里type: DirectoryOrCreate并不是最好的,因为我看到您想要加载一个文件。最好使用以下两种方法:

  • File:文件必须存在于给定的路径上

  • FileOrCreate:如果在给定路径上不存在任何内容,将根据需要在那里创建一个空文件,权限设置为0644,与Kubelet拥有相同的组和所有权。

最后,可能存在权限问题。如前所述:

在基础主机上创建的文件或目录只能由根用户写入。

Graylog正在与用户标识1100一起运行,这可能会导致权限拒绝。此外,我还找到了一个可能对您有帮助的类似问题

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66133533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档