프라이빗 클라우드에서 실행되는 Kubernetes 클러스터가 있습니다. 다른 VM에서 일부 명령을 실행하고 싶지만 다음과 같은 메시지가 나타납니다.
[root@runner-tmp ~]# kubectl get pods --kubeconfig local-cluster.yaml
error: tls: failed to find any PEM data in certificate input
내 local-cluster.yaml:
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server: https://x.x.x.x:6443
name: kubernetes
contexts:
- context:
cluster: kubernetes
namespace: FSM
user: kubernetes-admin
name: kubernetes-admin@kubernetes
current-context: kubernetes-admin@kubernetes
kind: Config
preferences: {}
users:
- name: kubernetes-admin
user:
client-certificate-data: REDACTED
client-key-data: REDACTED
이 PEM 인증서를 어디에 지정해야 하며 어떻게 생성할 수 있는지 아시나요?
답변1
출력을 원격 VM에 error: tls: failed to find any PEM data in certificate input
복사할 때 메시지가 나타납니다.kubectl config view
kubectl config view
따라서 의 출력을 원격 VM에 복사하는 대신 config
일반적으로 $HOME/.kube/config
.
scp root@<control-plane-host>:/etc/kubernetes/admin.conf .
이 파일을 실행한 후 다음과 같이 제공하면 됩니다 --kubeconfig
. 예를 들면 다음과 같습니다.
kubectl --kubeconfig ./admin.conf get nodes