現在、次のコマンドを使用して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
道があるに違いない。 :-)
答えを見つけました。
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
実際、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#