Go에서 GKE 클러스터용 Kubeconfig 얻기
Google Cloud Platform(GCP)은 Kubernetes Engine( Go SDK를 사용하는 GKE) 클러스터. API 메서드 func(r *ProjectsZonesClustersService) Get이 클러스터 구성을 검색하는 동안 kubeconfig를 반환하지 않습니다.
대체 솔루션
안타깝게도 직접적인 Go SDK는 없습니다. gcloud 컨테이너 클러스터 get-credentials 명령어와 동일합니다. 이 기능은 gcloud CLI의 Python으로 구현됩니다.
수동 구현
Go를 사용하여 kubeconfig를 수동으로 얻으려면 kubectl config set-credentials를 활용할 수 있습니다. . 예는 다음과 같습니다.
<code class="go">import ( "context" "log" "os/exec" ) func main() { // Set cluster context clusterContext := "my-gke-cluster" // Set access token accessToken := "my-access-token" // Set command to update kubeconfig cmd := exec.Command("kubectl", "config", "set-credentials", clusterContext, "--auth-provider=oidc", "--access-token="+accessToken) // Run command and check for errors output, err := cmd.Output() if err != nil { log.Fatalf("Error updating kubeconfig: %v", err) } log.Println(string(output)) }</code>
참고: kubeconfig를 직접 업데이트하는 대신 Kubelet 클라이언트 또는 ServiceAccount 토큰을 사용하여 클러스터에 연결하는 것을 고려할 수도 있습니다. 이러한 방법을 사용하면 kubeconfig의 필요성을 우회하고 JWT 토큰을 사용하여 인증할 수 있습니다.
위 내용은 Go SDK를 사용하여 GKE 클러스터용 Kubeconfig를 검색하려면 어떻게 해야 하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!