tencent cloud

Tencent Kubernetes Engine

문서Tencent Kubernetes Engine

노드에 대한 Kubeconfig 파일 전달 중지에 대한 설명

다운로드
포커스 모드
폰트 크기
마지막 업데이트 시간: 2023-05-06 19:41:07
설명
TKE는 2020년 9월 21일(월) 23:00 - 2020년 9월 22일(화) 06:00(UTC+8)까지 Kubeconfig 파일 전달 중단 작업을 진행할 계획입니다.

배경

현재 TKE는 기본적으로 admin token과 함께 Kubeconfig 파일을 노드에 저장합니다. 이 Kubeconfig 파일을 사용하여 사용자는 Kubernetes 클러스터에서 쉽게 작업할 수 있습니다. 그러나 사용자가 노드 로그인 권한 관리를 신중하게 수행하지 않으면 클러스터가 보안 위험에 노출될 수 있습니다. 따라서 Kubeconfig 파일 제공을 중단하기로 결정했습니다.
기존 클러스터는 Kubeconfig 파일을 사용하여 사용자 정의 스크립트에서 클러스터 초기화 작업을 진행할 수 있습니다. 이 문제를 해결하기 위해 Kueconfig 파일과 동일한 권한을 갖지만 유효 기간이 12시간인 노드 초기화용 클라이언트 인증서를 제공할 예정입니다. 인증서가 만료되면 Kubeconfig 파일이 무효화됩니다. 만료 후에도 파일이 계속 필요한 경우 문제 및 솔루션을 참고하십시오.

문제 및 솔루션

문제

다음 명령을 사용하여 TKE 클러스터 노드에 로그인하고 kubectl 작업을 진행하려고 할 때 다음 오류 메시지가 표시됩니다.
$ kubectl get node
The connection to the server localhost:8080 was refused - did you specify the right host or port?
$ kubectl get node
error: You must be logged in to the server (Unauthorized)

솔루션

1. TKE 콘솔에 로그인합니다.
2. 현재 계정의 자격 증명 Kubeconfig 파일을 가져옵니다. 자세한 내용은 Obtaining credentials를 참고하십시오.
3. Kubeconfig 파일을 얻은 후 사설망 액세스를 활성화하거나 Kubernetes의 service IP 주소를 직접 사용할 수 있습니다.
사설망 액세스 활성화: 클러스터 세부 정보 페이지의 왼쪽 사이드바에서 기본 정보를 선택하고 ‘클러스터 APIServer 정보’ 섹션에서 사설망 액세스를 활성화한 다음 프롬프트에 따라 작업합니다.
Kubernetes의 service IP 주소 사용: 클러스터 세부 정보 페이지의 왼쪽 사이드바에서 서비스 및 라우팅 > Service를 선택하여 default 네임스페이스에서 Kubernetes의 service IP 주소를 가져옵니다. Kubeconfig 파일의 clusters.cluster.server 필드를 https://<IP>:443으로 교체합니다.
4. Kubeconfig 파일의 내용을 새 노드의 $HOME/.kube/config에 복사합니다.
5. Kubeconfig 클러스터에 액세스하고 kubectl get nodes를 사용하여 연결을 테스트합니다.

특수한 시나리오의 처리

특수한 시나리오

workload가 사용을 위해 host의 /root/.kube/config 또는 /home/ubuntu/.kube/config 파일을 마운트했습니다.

솔루션

Kubernetes의 serviceaccount를 올바르게 사용하여 incluster 모드에서 클러스터에 액세스합니다. 자세한 내용은 Kubernetes 공식 문서를 참고하십시오.

도움말 및 지원

문제 해결에 도움이 되었나요?

피드백