2017-06-19 22 views
2

私はACS Kubernetesクラスタをここの手順に従って作成しました:https://docs.microsoft.com/en-us/azure/container-service/container-service-kubernetes-walkthroughACS Kubernetesクラスタ内のノードにどのようにSSH接続できますか?

マスターノードにパブリックIPがあり、azureuserを使用してマスターノードにsshできることがわかります。しかし、通常のノードはパブリックIPを持たず、マスターノードからどのように正規のノードにsshできるのか分かりません。

通常のノードにSSHを適用するにはどうすればよいですか?

答えて

4

プライベートキーをマスターVMにコピーできます。次に、k8sエージェントVMにssh -i <path>/id_rsa [email protected]<agent private IP>を使用できます。

注:エージェントのユーザー名と秘密鍵は、マスターVMと同じです。

+1

ありがとうございました!出来た。あなたは人生保護人です。 – codefx

5

k8sマスターの1つを「要塞ホスト」として使用し、キーのコピーを避けることができます。例:

# In ~/.ssh/config 

Host agent1_private_ip agent2_private_ip .... 
    IdentityFile ~/.ssh/<your_k8s_cluster_key> 
    ProxyCommand ssh [email protected]_public_ip -W %h:%p 

が今だけssh [email protected]_private_ip

がここに詳細を参照してください。http://blog.scottlowe.org/2015/11/21/using-ssh-bastion-host/


PS:ここにあなたのエージェントのプライベートIPを取得するために急ごしらえが/etc/hosts形式で、です:

kubectl get nodes -o json | jq -r '.items[].status.addresses[].address' | paste - - 
関連する問題