Access to the Kubernetes API 개요
Authentication
- 마스터 노드에 Kubernetes API Server가 있음
- Kubernetes API Server를 통해서만 쿠버네티스의 자원을 만들거나 조회할 수 있음
- kubectl을 통해 CLI로 자원을 조회할 수 있는 것도 Kubernetes API Server에 조회해서 정보를 가져오는 것
- 외부에서 Kubernetes API Server로 접근하려면 인증서를 가지고 있는 사람만 https 접근 가능
- 내부관리자가 kubectl 명령어로 proxy를 열어주면 인증서 없이 http로 접근 가능
- kubectl은 Master Node에만 설치할 수 있는게 아니라 외부 PC에서도 설치 가능
- Config 기능을 활용하면 쿠버네티스 클러스터가 여러 대 있을 때, 내가 접근할 수 있는 클러스터의 연결상태 유지
- 연결이 된 상태에서 kubectl get으로 쿠버네티스 클러스터에 있는 파드 정보를 가져올 수 있음
- 이러한 Kubernetes API Server접근 방식을 User Account라 함
- 파드 입장에서 Kubernetes API Server에 함부로 접근 못함
- Service Account를 통해 파드가 Kubernetes API Server에 접근할 수 있음
- 결국 쿠버네티스는 User Account와 Service Account로 사용자, 파드가 Kubernetes API Server에 접근할 수 있음
- Service Account로도 외부에서 접근할 수 있음
Authorization
- Namespace B가 Kubernetes API Server의 Authentication이 있다고 해서 Namespace B를 조회할 수 있을까?
- 권한여부에 따라 가능할 수도 아닐 수도 있음 이러한게 Authorization
Admission Control
- PV를 만들 때, 관리자가 용량을 1G 이상으로 만들지 못하도록 했다면
- 파드를 만들라는 API 요청이 들어오면 쿠버네티스는 설정된 용량을 넘지 못하도록 확인해야 함
- 이런게 Admission Control인데 강의에서 안 다룰 예정 ^~^
Dashboard
- 이전에 대시보드 설치는 프록시를 통해 대시보드에 접근하고 로그인을 SKIP 했음
- 이건 보안적으로 좋지 않아서 인증서를 가지고 직접 API 서버를 통해 대시보드에 접근하고 로그인하도록 할 예정
출처
인프런 - 대세는 쿠버네티스
'네트워크 > k8s' 카테고리의 다른 글
[k8s] 30. Authentication - 실습 (0) | 2021.02.24 |
---|---|
[k8s] 29. Authentication - X509 Certs, kubectl, ServiceAccount (0) | 2021.02.21 |
[k8s] 27. Volume - 실습 (0) | 2021.02.21 |
[k8s] 26. Volume - Dynamic Provisioning, StorageClass, Status, ReclaimPolicy (0) | 2021.02.21 |
[k8s] 25. Service - 실습 (0) | 2021.02.19 |