【问题标题】:kubernetes/client-node: Not able to execute command on specific podkubernetes/client-node:无法在特定 pod 上执行命令
【发布时间】:2022-11-27 02:38:01
【问题描述】:

我想执行将从 k8s 集群中指定的特定 pod 调用 API 的命令。

const k8s = require('@kubernetes/client-node')
const stream = require('stream')

const kc = new k8s.KubeConfig()
kc.loadFromDefault()

const k8sApi = kc.makeApiClient(k8s.CoreV1Api)
const exec = new k8s.Exec(kc)

const podName = 'test-pod-66fd96bf66-jd6wf'
const containerName = 'test-container'
const command = 'wget -O /dev/null -q http://localhost:5000/sayHi'

exec.exec('default', podName, containerName, command, null, null, null, false).catch(err => {
  console.log(err)
})

我正进入(状态意外的服务器响应:400错误。

【问题讨论】:

    标签: node.js kubernetes


    【解决方案1】:

    TLDR:您必须至少指定 stdin、stdout、stderr 之一。

    更新行:

    exec.exec('default', podName, containerName, command, process.stdout, null, null, false).catch(err => {
      console.log(err)
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-26
      • 2021-09-28
      • 2016-03-26
      • 2017-08-05
      • 1970-01-01
      • 2016-01-04
      • 2022-12-16
      相关资源
      最近更新 更多