2017-12-06 14 views
0

Windows Server 2016 시스템에서 Azure의 Kubernetes 클러스터에 액세스해야합니다. 클러스터를 만들지는 않았지만 Azure 계정에서 Global Admin으로 지정되었습니다. 이미 푸른 색 계좌로 로그인했지만 아직 서버에 로그인하지 않았습니다. 이미 컴퓨터에 kubectl CLI를 설치했습니다. 이제 클러스터에 액세스해야합니다.Azure Linux VM (kubernetes 클러스터)에서 생성 된 자격 증명을 생성하는 방법과 다른 컴퓨터에서 자격 증명을 얻는 방법은 무엇입니까?

내가 .kube/설정, 스푸핑/id_rsa_gsg_keypair를스푸핑/id_rsa.pub 내 C 내부가 : \ 사용자 \ 관리자 폴더에 있습니다. 나는 ssh -i ~/.ssh/id_rsa [email protected]을 시도했으며 그것을 액세스 할 수있었습니다. 그래서 내 개인 키가 좋습니다. 그러나 VM 내에서 작업하고 싶지 않습니다. 내 작업 디렉토리는 WinServer2016 시스템 내부에 있어야합니다. 내가 kubectl get nodes 수 있어야하며 3 VM의 테이블을 반환해야합니다.

은 비록 일어나는 것이다 (다시, VM에 ssh를 작동, 나는 kubectl을 할 수있는 명령 w/VM의 내부 문제 O)

az acs kubernetes get-credentials --resource-group=myRGroup --name=myClusterName 

반환

Authentication failed. Traceback (most recent call last): File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\azure\cli\main.py", line 36, in main cmd_result = APPLICATION.execute(args) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\azure\cli\core\application.py", line 216, in execute result = expanded_arg.func(params) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\azure\cli\core\commands\__init__.py", line 377, in __call__ return self.handler(*args, **kwargs) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\azure\cli\core\commands\__init__.py", line 620, in _execute_command reraise(*sys.exc_info()) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\six.py", line 693, in reraise raise value File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\azure\cli\core\commands\__init__.py", line 602, in _execute_command result = op(client, **kwargs) if client else op(**kwargs) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\azure\cli\command_modules\acs\custom.py", line 776, in k8s_get_credentials _k8s_get_credentials_internal(name, acs_info, path, ssh_key_file) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\azure\cli\command_modules\acs\custom.py", line 797, in _k8s_get_credentials_internal '.kube/config', path_candidate, key_filename=ssh_key_file) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\azure\cli\command_modules\acs\acs_client.py", line 72, in secure_copy ssh.connect(host, username=user, pkey=pkey, sock=proxy) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\paramiko\client.py", line 416, in connect look_for_keys, gss_auth, gss_kex, gss_deleg_creds, t.gss_host, File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\paramiko\client.py", line 701, in _auth raise saved_exception File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\paramiko\client.py", line 678, in _auth self._transport.auth_publickey(username, key)) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\paramiko\transport.py", line 1447, in auth_publickey return self.auth_handler.wait_for_response(my_event) File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\site-packages\paramiko\auth_handler.py", line 223, in wait_for_response raise e paramiko.ssh_exception.AuthenticationException: Authentication failed. 

kubectl get nodes 

You must be logged in to the server 

나는 이것 때문에 kubectl create 또는 kubectl set image deployment을 사용할 수 없습니다.

무엇을해야합니까? 클러스터를 만든 사람과 기계에서 어떤 정보가 필요합니까?

편집 : Actual Image 1

Actual Image 2

+0

이 기사를 참조 할 수 있습니까 :: https://github.com/Azure/azure-cli/issues/4782; https://github.com/Azure/ACS/issues/22 –

답변

0

I .kube/설정, 스푸핑/id_rsa_gsg_keypair를 내 C 내부 스푸핑/id_rsa.pub가 : \ 사용자 \ 관리자 폴더에 있습니다. SSH를 키 파일의 기본 경로는 Windows에서, ~\.ssh\id_rsa입니다

, 우리는이 같은 경로를 지정해야합니다

시나리오에서
C:\Users\jason\.ssh>az acs kubernetes get-credentials --resource-group=jasonk8s --name jasonk8s --ssh-key-file C:\Users\jason\.ssh\k8s 
Merged "jasontest321mgmt" as current context in C:\Users\jason\.kube\config 
C:\Users\jason\.ssh>kubectl.exe get nodes 
NAME     STATUS ROLES  AGE  VERSION 
k8s-agent-c99b4149-0 Ready  agent  7m  v1.7.7 
k8s-master-c99b4149-0 Ready  master 8m  v1.7.7 

, 자격 증명을 얻기 위해이 스크립트를 사용 해보세요 :

az acs kubernetes get-credentials --resource-group=myRGroup --name=myClusterName --ssh-key-file C:\Users\Administrator\.ssh\id_rsa 
+0

위의 편집을 참조하십시오. –

+0

@ JohnStephen.19 해당 폴더의 키를 'administrator \ .ssh \'에 나열 하시겠습니까? –

+0

@ JohnStephen.19 ssh 키가'c : \ Users \ Administrator \ .ssh \ id_rsa'에 저장되지 않은 것 같습니다. ssh 키를 Windows 폴더로 다운로드하십시오. 디렉토리'c : \ Users \ Administrator \ .ssh' 안에있는 –