gpt4 book ai didi

kubernetes - Kubectl Attach 与 kubectl exec?

转载 作者:行者123 更新时间:2023-12-02 01:09:10 29 4
gpt4 key购买 nike

通过使用kubectl exec -ti POD_NAME bash我能够访问容器内的终端并执行命令。

我能理解上面命令的可用性和方便性。作为 K8s 运算符(operator),我经常使用 exec

但是,kubectl Attach POD_NAME 的用例是什么?

如何利用它?它的真正目的是什么?什么情况或情况下可以使用?

最佳答案

kubernetes/issue 23335 中讨论了 kubectl Attach 的用例。

它可以附加到容器运行的主进程,该进程并不总是 bash。
与 exec 相反,它允许您执行容器内的任何进程(通常是:bash)

# Get output from running pod 123456-7890, using the first container by default
kubectl attach 123456-7890

# Get output from ruby-container from pod 123456-7890
kubectl attach 123456-7890 -c ruby-container

This article 建议:

In addition to interactive execution of commands, you can now also attach to any running process. Like kubectl logs, you’ll get stderr and stdout data, but with attach, you’ll also be able to send stdin from your terminal to the program.
Awesome for interactive debugging, or even just sending ctrl-c to a misbehaving application.

  $> kubectl attach redis -i
<小时/>

同样,主要区别在于您在容器中交互的过程:

  • exec:您想要创建的任何一个
  • attach:当前正在运行的(无选择)

关于kubernetes - Kubectl Attach 与 kubectl exec?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50030252/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com