如何以根用户身份输入Pod?

时间:2019-03-07 11:53:43

标签: linux kubernetes

当前,我使用以下命令以mysql用户身份进入Pod:

kubectl exec -it PODNAME -n NAMESPACE bash

我想输入一个容器作为root。 我尝试了以下命令:

kubectl exec -it PODNAME -n NAMESPACE -u root ID /bin/bash

kubectl exec -it PODNAME -n NAMESPACE -u root ID bash

一定有办法。 :-)

2 个答案:

答案 0 :(得分:2)

实际上,已经有可能通过kubectl插件kubectl-plugins进行连接。找到了回答相关问题的解决方案。

SELECT LA.DateCode, C.ContainerName 
FROM CamstarSch.A_LotAttributes LA INNER JOIN 
     CamstarSch.Container C 
     ON C.ContainerId = LA.ContainerId
GROUP BY LA.DateCode, C.ContainerName 
HAVING COUNT(*) > 1;

答案 1 :(得分:0)

我找到了答案。

您不能以root用户身份通过​​kubectl直接登录Pod。

您可以通过以下步骤进行操作。

1)找出其在kubectl get po -n [NAMESPACE] -o wide上运行的节点

2)ssh节点

3)找到docker容器sudo docker ps | grep [namespace]

4)以root sudo docker exec -it -u root [DOCKER ID] /bin/bash身份登录到容器