web-dev-qa-db-ja.com

ルートとしてポッドを入力する方法?

現在、次のコマンドを使用してmysqlユーザーとしてポッドを入力しています。

kubectl exec -it PODNAME -n NAMESPACE bash

ルートとしてコンテナに入りたい。私は次のコマンドを試しました:

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

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

道があるに違いない。 :-)

3
mac

答えを見つけました。

Kubectlを介してrootとしてポッドに直接ログインすることはできません。

次の手順で実行できます。

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

8
mac

実際、kubectl addon kubectl-plugins を介して接続する可能性はすでにあります。関連する質問に答える解決策を見つけました。

git clone https://github.com/jordanwilson230/kubectl-plugins.git
cd kubectl-plugins
./install-plugins.sh
source ~/.bash_profile
kubectl ssh -u root suse

Connecting...
Pod: suse
Namespace: NONE
User: root
Container: NONE
Command: /bin/sh

If you don't see a command Prompt, try pressing enter.
sh-5.0#
1
VKR