Udemy Labs - Certified Kubernetes Application Developer - Practice Test KubeConfig 오답노트

hyereen·2025년 1월 28일

Kubernetes

목록 보기
23/53

12
I would like to use the dev-user to access test-cluster-1. Set the current context to the right one so I can do that.

Once the right context is identified, use the kubectl config use-context command.

정답

k config --kubeconfig=/root/my-kube-config use-context research

풀이

  • set-context: 새 컨텍스트를 설정하거나 기존의 컨텍스트를 수정하는 명령어
  • use-context: 설정된 컨텍스트 중에서 실제로 사용할 컨텍스트로 전환하는 명령어

13
We don't want to specify the kubeconfig file option on each kubectl command.

Set the my-kube-config file as the default kubeconfig file and make it persistent across all sessions without overwriting the existing ~/.kube/config. Ensure any configuration changes persist across reboots and new shell sessions.

Note: Don't forget to source the configuration file to take effect in the existing session. Example:

source ~/.bashrc

Default kubeconfig file configured

정답

vi ~/.bashrc

아무 위치에 아래 내용 추가하기

export KUBECONFIG=/root/my-kube-config

적용하기

source ~/.bashrc

풀이

  • 여러 클러스터 설정: 만약 하나 이상의 kubeconfig 파일을 사용하는 경우, KUBECONFIG 환경 변수에 여러 파일을 콜론(:)으로 구분하여 지정
    • export KUBECONFIG=/root/my-kube-config:/root/other-kube-config

14
With the current-context set to research, we are trying to access the cluster. However something seems to be wrong. Identify and fix the issue.

Try running the kubectl get pods command and look for the error. All users certificates are stored at /etc/kubernetes/pki/users.

풀이
에러 메세지 확인

controlplane / ➜  k get pods
error: unable to read client-cert /etc/kubernetes/pki/users/dev-user/developer-user.crt for dev-user due to open /etc/kubernetes/pki/users/dev-user/developer-user.crt: no such file or directory

config 파일 확인

controlplane / ➜  kubectl config view
apiVersion: v1
clusters:
- cluster:
    certificate-authority: /etc/kubernetes/pki/ca.crt
    server: https://controlplane:6443
  name: development
- cluster:
    certificate-authority: /etc/kubernetes/pki/ca.crt
    server: https://controlplane:6443
  name: kubernetes-on-aws
- cluster:
    certificate-authority: /etc/kubernetes/pki/ca.crt
    server: https://controlplane:6443
  name: production
- cluster:
    certificate-authority: /etc/kubernetes/pki/ca.crt
    server: https://controlplane:6443
  name: test-cluster-1
contexts:
- context:
    cluster: kubernetes-on-aws
    user: aws-user
  name: aws-user@kubernetes-on-aws
- context:
    cluster: test-cluster-1
    user: dev-user
  name: research
- context:
    cluster: development
    user: test-user
  name: test-user@development
- context:
    cluster: production
    user: test-user
  name: test-user@production
current-context: research
kind: Config
preferences: {}
users:
- name: aws-user
  user:
    client-certificate: /etc/kubernetes/pki/users/aws-user/aws-user.crt
    client-key: /etc/kubernetes/pki/users/aws-user/aws-user.key
- name: dev-user
  user:
    client-certificate: /etc/kubernetes/pki/users/dev-user/developer-user.crt
    client-key: /etc/kubernetes/pki/users/dev-user/dev-user.key
- name: test-user
  user:
    client-certificate: /etc/kubernetes/pki/users/test-user/test-user.crt
    client-key: /etc/kubernetes/pki/users/test-user/test-user.key

문제에서 알려준 경로를 가보면

controlplane ~ ➜  ll ../etc/kubernetes/pki/users/dev-user
total 20
drwxr-xr-x 2 root root 4096 Jan 28 05:02 ./
drwxr-xr-x 5 root root 4096 Jan 28 05:02 ../
-rw-r--r-- 1 root root 1025 Jan 28 05:07 dev-user.crt
-rw-r--r-- 1 root root  924 Jan 28 05:07 dev-user.csr
-rw------- 1 root root 1704 Jan 28 05:07 dev-user.key

이 부분을 developer-user.crt -> dev-user.crt수정하기
vi my-kube-config

- name: dev-user
  user:
    client-certificate: /etc/kubernetes/pki/users/dev-user/dev.crt

0개의 댓글