gpt4 book ai didi

linux - 使用 ssh 或 kubectl exec 的不同环境变量

转载 作者:行者123 更新时间:2023-12-04 03:34:05 30 4
gpt4 key购买 nike

我们的集群中有一项服务,我们通过 ssh(测试环境等)调用该服务。在这个容器中,当我们使用 ssh 连接或使用 kubectl 连接时,我们有不同的环境变量。
有人可以解释一下 kubectl exec 命令还设置了什么吗?
作为示例,从这两种环境中摘录一小段。
kubectl exec: (printenv | grep KU)

KUBERNETES_SERVICE_PORT_HTTPS=443
KUBERNETES_SERVICE_PORT=443
KUBERNETES_PORT_443_TCP=tcp://10.4.0.1:443
KUBERNETES_PORT_443_TCP_PROTO=tcp
KUBERNETES_PORT_443_TCP_ADDR=10.4.0.1
KUBERNETES_SERVICE_HOST=10.4.0.1
KUBERNETES_PORT=tcp://10.4.0.1:443
KUBERNETES_PORT_443_TCP_PORT=443
ssh 进入同一个容器:(printenv | grep KU)
dev-xxxxx:~$ printenv | grep KU
dev-xxxxx:~$

最佳答案

kubectl exec command 允许您在 pod 的现有容器内远程运行任意命令。 kubectl exec和使用 SSH 没什么区别在远程系统上执行命令。 SSHkubectl应该都适用于 99% 的 CLI 应用程序。在环境变量方面,我能找到的唯一区别是:

  • kubectl将始终设置在启动时提供给容器的环境变量
  • SSH主要依赖于系统登录 shell 配置(但也可以通过 PermitUserEnvironment or SendEnv/AcceptEnv 接受用户环境)

  • 回答你的问题:

    Can someone explain me what else is set here with the kubectl execcommand?


    它们应该产生相同的输出(假设您已正确键入两个命令并在同一个容器上执行它们)。
    您会在下面找到一些关于 kubectl exec 的有用资源命令:
  • Get a Shell to a Running Container
  • kubectl-commands#exec docs
  • How does 'kubectl exec' work?

  • 编辑:
    如果您想了解更多有关 kubectl exec 之间差异的信息和 SSH我推荐 this article .它涵盖以下主题:
  • 验证/z
  • 壳牌用户体验
  • 非外壳功能,以及
  • 表现
  • 关于linux - 使用 ssh 或 kubectl exec 的不同环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67277994/

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