반응형
*RBAC: Role 에대한 권한
[k8s docs k.w: csr]
* API 인증 & 권한
: kubernetes 는 모든 리소스에 대한 접근이 API를 통해서 한다.
: "kubectl run" 명령어 입력후 API 에 접근하기 위해 인증이 필요하다.
: 이 인증은 k8s 계정에 권한을 부여한다. (인증서로)
: k8s 는 이 인증서를 확인하고, 이에 맞는 권한을 주게한다.
Q. Cluster: Kubectl config use-context k8s
TASK:
Create the Kubeconfig named ckauser
- username: ckasuer
- certificate location: /data/cka/ckauser.crt, /data/cka/ckauser.key
- context-name: ckauser
- ckauser cluster must be operated with the privileges of the ckauser account.
Create a role named pod-role that can create, delete, watch, list, get pods.
Create the following rolebinding.
- name: pod-rolebinding
- role: pod-role
- user: ckauser
: ckauser 가 있고, 인증서가 있다.
: role: Pod Rule (C, D, W, L, G) -> 만들어라
: user랑 role이랑 binding 해라
1. role 만들기
*Template*
kubectl create role developer --verb=create --verb=get --verb=list --verb=update --verb=delete --resource=pods
kubectl create role pod-role --verb=create,get,list,update,delete --resource=pods
: ns 있을시 뒤에다가 붙이면 됨
k get role pod-role
k describe role pod-role
2. role binding
*Template*
kubectl create rolebinding developer-binding-myuser --role=developer --user=myuser
kubectl create rolebinding pod-rolebinding --role=pod-role --user=ckauser
k get rolebindings pod-rolebinding
k describe rolebindings.rbac.authorization.k8s.io pod-rolebinding
3. Add to kubeconfig
*Template*
kubectl config set-credentials myuser --client-key=myuser.key --client-certificate=myuser.crt --embed-certs=true
kubectl config set-credentials ckauser --client-key=/data/cka/ckauser.key --client-certificate=/data/cka/ckauser.crt --embed-certs=true
4. 확인
kubectl config view
: 잘 바인딩 되었으면, user -> name 에 추가 된 것을 확인 할 수 있다.
5. context 추가
*Template*
kubectl config set-context myuser --cluster=kubernetes --user=myuser
kubectl config set-context ckauser --cluster=kubernetes --user=ckauser
kubectl config use-context ckauser
6. context switch
k config use-context ckauser
7. 확인
: 잘 되면 됨
kubectl get pods
kubectl get svc: 접근제한으로 인해 pod 까지만 가능하면 됨
* 본 게시글은 "TTABAE-LEARN" 을 보고 정리한 내용입니다.
728x90
반응형
'cloud > k8s(문제풀이)' 카테고리의 다른 글
[따배쿠 CKA] 26.User Cluster Role binding (0) | 2022.08.17 |
---|---|
[k8s]Troubleshooting - worker node failure (0) | 2022.08.17 |
[따배쿠CKA] 24.Kubernetes Troubleshooting(2) (0) | 2022.08.17 |
[따배쿠CKA]23. kubernetes Troubleshooting(1) (0) | 2022.08.16 |
[따배쿠CKA]22.Kubernetes Upgrade (0) | 2022.08.12 |