首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使Kubernetes管理我的荚日志文件?

如何使Kubernetes管理我的荚日志文件?
EN

Stack Overflow用户
提问于 2019-06-26 22:46:38
回答 3查看 214关注 0票数 1

目前,我有一个库伯内特斯吊舱,正在运行一个cron的工作。cron作业写入/var/log/cronlog的日志文件。但是,当我键入kubectl log my-pod-name时,不包含/var/log/cronlog的内容。

如何使/var/log/cronlog的内容包含在kubectl log my-pod-name的输出中?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-06-27 06:12:56

您可以附加容器启动脚本以包含日志。

类似于run.sh &尾巴-f /var/log/cronlog

票数 1
EN

Stack Overflow用户

发布于 2019-06-27 01:28:52

我认为您应该写到stdout和stderr,而不是写到文件中,以便能够使用kubectl log

票数 1
EN

Stack Overflow用户

发布于 2019-06-27 09:56:40

首先,为什么不使用工作创建CronJob控制器

我认为你应该利用Kubernetes,并利用乔布斯,如果他们应该运行,而不是普通的cronjob。这将消耗更少的资源,并且您将快速检查cron作业是否失败。

此外,正如以前的答案中已经提到的,您需要将消息/日志发送到stdout。

下面是一个CronJob的示例,它发送date并打印Hello from the Kubernetes cluster到stdout,而日志可以由kubectl logs job/<JOB_NAME>访问。

代码语言:javascript
运行
复制
apiVersion: batch/v1beta1
kind: CronJob
metadata:
  name: hello
  namespace: default
spec:
  schedule: "* * * * *" # run every minute
  startingDeadlineSeconds: 10 # if a job hasn't starting in this many seconds, skip
  concurrencyPolicy: Forbid # either allow|forbid|replace
  successfulJobsHistoryLimit: 3 # how many completed jobs should be
  jobTemplate:
    spec:
      template:
        spec:
          containers:
            - name: hello
              image: busybox
              args:
                - /bin/sh
                - -c
                - date; echo Hello from the Kubernetes cluster
          restartPolicy: OnFailure

我希望这能为你提供一些概况。

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

https://stackoverflow.com/questions/56781829

复制
相关文章

相似问题

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