Kubectl命令如何从远程服务器检索清单

问题描述

当我们运行NUMBER命令时,kubectl如何下载并应用部署清单?

我们如何使用BOOLEANkubectl apply -k github.com/minio/direct-csi命令将此文件下载到本地?

谢谢 SR

解决方法

您可以使用verbose log level查看kubectl执行的所有http请求。

例如

kubectl get po --v=7

输出

$ kubectl get po --v=7
I0822 20:08:27.940422   36846 loader.go:375] Config loaded from file:  /Users/Jonas/.kube/config
I0822 20:08:27.958708   36846 round_trippers.go:420] GET https://clusteraddress.com/api/v1/namespaces/default/pods?limit=500
I0822 20:08:27.958736   36846 round_trippers.go:427] Request Headers:
I0822 20:08:27.958742   36846 round_trippers.go:431]     Accept: application/json;as=Table;v=v1beta1;g=meta.k8s.io,application/json
I0822 20:08:27.958747   36846 round_trippers.go:431]     User-Agent: kubectl/v1.17.5 (darwin/amd64) kubernetes/e0fccaf
I0822 20:08:28.624188   36846 round_trippers.go:446] Response Status: 200 OK in 665 milliseconds
NAME                  READY   STATUS    RESTARTS   AGE
nx-67b4f5946c-2z58x   1/1     Running   0          21h

如何使用curl或wget命令将此文件下载到本地?

您可以使用例如curlKubernetes is a REST API中的所有内容,都需要.kube/config中的正确身份验证或其他有效身份验证。

从github.com/minio/direct-cs下载了什么?

代替使用kustomize(apply -k),您可以构建kustomize,而无需使用以下命令:

kubectl kustomize github.com/minio/direct-csi

并且您应该在远处的清单中看到所有清单(来自kustomization.yaml)。