我正在运行k8s应用程序。
让我们说是一些带有管理管理的web应用程序。
在这个管理加载项是魔术按钮来运行一些任务。
此任务应作为k8s作业启动。
我的问题是:
如何从这个管理后端应用程序正确启动k8s作业。
我是否应该将kubectl
安装到管理应用程序坞映像中,然后从我的后端应用程序中运行一些kubectl apply
?
比如:
// when server receive http
onStart(req, resp) => {
const { spawn } = require('child_process');
const ls = spawn('kubectl', ['apply', '-f', 'path-to-job-config.yaml']);
}
如何解决这个问题?
发布于 2020-12-30 11:37:54
您可以通过调用kubernetes REST来使用nodejs客户端库创建作业。
或者您可以使用http客户端库调用相同的REST。
对于身份验证,使用服务帐户令牌,它是JWT承载令牌,可以作为Authorization
报头的一部分发送。服务帐户需要是RBAC授权权限才能创建作业。
https://stackoverflow.com/questions/65506152
复制相似问题