我需要在每个工作日结束时自动缩减 OpenShift pod。
我怎样才能自动安排呢?
OpenShift 和 Kubernetes 一样,是一个 api 驱动的应用程序。本质上,所有应用程序功能都通过在主控主机上运行的控制平面 API 公开。
您可以使用任何能够进行 API 调用的编排工具来执行此活动。有关直接调用 OpenShift API 的信息可以在官方文档的REST API 参考概述部分中找到。
许多编排工具都有插件,允许您与 OpenShift/Kubernetes API 进行更原生的交互,而不是直接运行网络调用。以 Jenkins 为例,有一个OpensShift Pipeline Jenkins插件,它允许您直接从 Jenkins 管道执行 OpenShift 活动。在 Ansible 的情况下,有k8s 模块。
如果您要将其与 Jenkins 的功能结合起来按计划运行作业,那么您就有了满足您要求的东西。
对于更简单的事情,您可以通过 cron 在服务器上安排 Ansible 或 bash 脚本,以针对 OpenShift API 执行适当的 API 命令。
也可以通过CronJob对象从OpenShift 中执行这些命令。