반응형

CKA 17

[CKA] 23년 12월 CKA 취득 후기 및 문제유형, 공부법 정리

23년도 안에 CKA 자격증을 취득하겠다 라고 결심했는데 이래저래 바쁘다는 핑계로 미루다미루다 12월까지 왔네요. 그래도 23년도가 끝나기전에 취득해서 다행이라고 생각합니다. 23년 12월 12일 20시에 시험을 치뤘으며 최대한 기억나는 유형들을 공유해보려고합니다. 준비하실 때 참고가 되시길 바라겠습니다. CKA 자격증을 추천하는가 ? 개인적인 의견으로 대답하자면 100% 네! 입니다. 쿠버네티스 공부 입문자라면 CKA 자격증을 목표로 공부하신다면 쿠버네티스에 대한 이해도를 많이 얻어 갈 수 있을 것이라고 생각하기에 저는 CKA 자격증 준비하시는 것을 너무 추천드립니다! 쿠버네티스를 처음에 익히기에 정말 많은 도움이 됩니다. 출제된 문제 유형, 배점, 난이도는? 17문제 출제 되었고 배점은 4점, 7점,..

[CKA] RBAC 문제, 권한 체크시 사용하는 명령어

kubectl auth can-i 명령어는 쿠버네티스(Kubernetes)에서 현재 사용자 또는 서비스 어카운트가 특정 작업을 수행할 수 있는지 여부를 확인하는 데 사용됩니다. 이 명령어는 Role-Based Access Control (RBAC) 정책에 따라 사용자에게 부여된 권한을 검증하는 데 유용합니다. kubectl auth can-i get pods --namespace dev --as username 위의 명령어는 dev 네임스페이스에서 username 사용자가 pods를 조회할 수 있는지 확인합니다. RBAC 문제 나왔을 때 잘 했는지 체크하고 싶으면 auth can-i 명령어로 확인해보시면 되겠습니다.

[CKA] 무려 30% 출제 비율인 Troubleshooting 트러블슈팅 정리

여러분 CKA 범위를 보면 트러블슈팅이 30% 비율로 출제된다고 되어있어요. 즉, 무조건 나온다고 봐야겠죠? 어떤 문제가 나올지는 모르겠지만 정리할 수 있는 부분들은 정리해두려요! 그리고 나서 나중에 시험에 적용해야겠어요 1. Toubleshoot application fauilure 2 tier 구조로 문제가 나온다면 클라이언트 -> 웹서비스 -> 웹 -> DB 서비스 -> DB 순으로 확인해보기 서비스에 있는 Selector와 Pod에 있는 Selector가 일치하는지 체크하기 kubectl describe service 파드를 확인하기 kubectl get pods 에서 restart 횟수도 체크하기 kubectl describe pod 로 어떤 이슈인지 체크하기 kubectl logs 로그로 뭔가..

Deployment의 롤링업데이트 전략 이해하기 ( Max Unavailable, Max surge )

Deployment는 ReplicaSet을 관리하고, 파드의 롤아웃(업데이트) 및 롤백을 처리하는 더 고급 수준의 리소스인데요. 무중단 업데이트, 버전 관리, 롤백 등의 기능을 제공합니다. 그래서 오늘은 Deployment의 롤링업데이트에 대해서 이해해봅시다. maxUnavailable maxUnavailable: 업데이트 과정 중 사용할 수 없게 되는 최대 파드 수를 정의합니다. 25%의 maxUnavailable은 원하는 파드 수(3개)의 25%를 의미합니다. 즉, 3 x 0.25 = 0.75, 내림하여 0개입니다. 그러나 maxUnavailable은 최소 1개 파드를 의미해야 하므로, 실제적으로 사용할 수 없는 최대 파드 수는 1개가 됩니다. 해당 내용은 쿠버네티스 공식 문서에 기재되어있습니다. m..

[CKA] ClusterRole과 Role 차이

Role Role은 특정한 네임스페이스에 국한되어 사용됩니다. 즉, Role로 정의된 권한은 해당 Role이 생성된 네임스페이스 내에서만 유효합니다. 사용 사례: 특정 네임스페이스에서 파드를 생성하거나 조회하는 등의 작업을 허용하고 싶을 때 사용합니다. ClusterRole ClusterRole은 클러스터 전체에 걸쳐 적용됩니다. 이는 네임스페이스를 초월하여 클러스터 수준의 리소스(예: 노드)에 대한 접근 권한을 제어하거나, 모든 네임스페이스에서 특정 작업을 수행할 수 있는 권한을 부여하는 데 사용됩니다. 사례: 클러스터 전체의 모든 파드를 조회하거나, 특정 클러스터 수준의 리소스(예: 노드, 지속적 볼륨)에 대한 접근을 제어할 때 사용합니다.

[CKA] Role , RoleBinding 이해하기 - 단골 문제

Role은 특정 네임스페이스 내에서 사용자 또는 그룹에게 허용되는 권한을 정의합니다. Role은 해당 네임스페이스 내의 리소스에 대한 접근 권한을 제어합니다.Role을 사용하여 특정 리소스(예: 파드, 서비스 등)에 대한 CRUD(Create, Read, Update, Delete) 작업을 수행할 수 있는 권한을 정의합니다. 예시를 들어서 바로 이해해봅시다. apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: namespace: mynamespace name: pod-reader rules: - apiGroups: [""] resources: ["pods"] verbs: ["get", "watch", "list"] RoleBinding은 특정 R..

[CKA] 특정 노드에 파드가 할당 되는 것을 제어하는 taint , toleration

쿠버네티스(Kubernetes)에서 taint는 노드에 적용되어 해당 노드에 파드가 스케줄될 수 있는지 여부를 결정하는 메커니즘입니다. taint를 사용하면 특정 노드에 파드가 할당되는 것을 제어할 수 있으며, 이는 노드에 '오염'을 추가하는 것과 유사합니다. 파드가 특정 노드에 스케줄되기 위해서는 그 노드의 taint에 맞는 'toleration'을 가지고 있어야 합니다. Taint와 Toleration Taint: 노드에 적용되어, 특정 조건을 만족하지 않는 파드의 스케줄링을 방지합니다. Toleration: 파드에 적용되어, 특정 taint를 용인할 수 있음을 나타냅니다. toleration을 가진 파드는 해당 taint가 있는 노드에 스케줄될 수 있습니다. Taint의 구성 요소 Key: tain..

[CKA] 무조건 나온다는 문제! Drain, Cordon, Uncordon

CKA를 공부를 하고 있는데 Administer a Cluster 카테고리에서 무조건 나오는 유형중에 4가지를 꼭 알아야할 것 같아서 정리하려고합니다. 자 일단은 위의 명령어들의 기본적인 뜻을 알고 있으면 이해하기 쉽겠죠? 간단하게 단어의 뜻정도만 기억하고 있으면 공부하기 더 쉬우니까 공유해드릴게요. drain : 물[액체]을[이] 빼내다[빠지다] cordon : (경찰·군인 등이 설치한 진입이나 진출) 저지선[비상경계선] uncordon taint: (평판 등을) 더럽히다, 오염시키다, 오점[오명]을 남기다 자, 이제 본격적으로 쿠버네티스에서 4가지 명령어로 어떻게 사용해야하는지에 대해서 말씀드리겠습니다. 쿠버네티스(Kubernetes)에서 drain, cordon, 그리고 uncordon은 노드를 관..

[CKA] ETCD 백업 관련 문제 출제시 이렇게만 하세요 (etcdctl)

1. 공식 문서에서 etcdctl 검색해서 나오는 내용을 활용하세요 2. 오른쪽 목차에 보면 backup /restore 하는 방법 다 있음 3. Snapshot using etcdctl options 이 부분에 있는 예시를 그냥 가져다가 쓰시기만 하면됩니다. 4. 자 이제 문서가 준비되었다면 노드에서 cat /etc/kubernetes/manifests/etcd.yaml 파일을 확인하고 엔드포인트 한번 체크해줍니다. 5. cat etcd.yaml | grep file 인증서 파일위치도 한번 더 체크해주면 좋겠죠 그리고나서 위의 문서에서 검색했던 명령어를 그대로 작성하면 끝!!! 복붙으로 실수하지말기 https://kubernetes.io/docs/tasks/administer-cluster/config..

[CKA] deployment 롤백/ 롤아웃 명령어 정리

1. deployment 생성시 > kubetctl create -f xxxx.yaml 2.deployment 조회할때 > kubectl get deployments -o wide 3. 버전을 업데이트하고 적용할때 > vi xxx.yaml 들어가서 이미지 수정하고 > kubectl apply -f xxx.yaml > kubectl set image deployment/app-deplotment nginx=nginx:1.20.0 4. 롤아웃이 제대로 되었는지 확인하고자 할때 > kubectl rollout status deployment/app-deployment 5. 롤라웃의 히스토리를 보고싶을때 > kubectl rollout history deploy

카테고리 없음 2023.11.25
반응형