이 페이지 개선에 도움 주기
이 사용자 가이드에 기여하려면 모든 페이지의 오른쪽 창에 있는 GitHub에서 이 페이지 편집 링크를 선택합니다.
PodSecurityPolicy
는 Kubernetes 1.21에서 더 이상 사용되지 않으며1.25
에서 제거되었습니다. 클러스터에서 PodSecurityPolicy를 사용하는 경우 워크로드가 중단되지 않도록 클러스터를 버전 *1.25
로 업그레이드하기 전에 기본 제공 Kubernetes 포드 보안 표준(PSS) 또는 정책 기반 코드 솔루션으로 마이그레이션해야 합니다.* 자세히 알아보려면 자주 묻는 질문을 선택하세요.
PodSecurityPolicy
이는 Kubernetes 프로젝트의 업스트림 변경이며 Amazon EKS에서 변경한 내용이 아닙니다. Kubernetes 1.21
에서는 PSP가 더 이상 사용되지 않고 Kubernetes 1.25
에서는 제거되었습니다. Kubernetes 커뮤니티에서 PSP를 포함한 심각한 사용성 문제를 확인했습니다. 여기에는 의도한 것보다 더 광범위한 권한을 실수로 부여하거나 PSP가 특정 상황에 해당하는 권한을 검사하기 어려운 경우가 포함되었습니다. 이러한 문제는 주요 변경 없이는 해결할 수 없습니다. 이것이 Kubernetes 커뮤니티가 PSP를 제거하기로 결정
클러스터에서 PSP를 사용 중인지 확인하려면 다음 명령을 실행하면 확인할 수 있습니다.
kubectl get psp
클러스터의 PSP가 영향을 주는 포드를 보려면 다음 명령을 실행합니다. 이 명령은 포드 이름, 네임스페이스 및 PSP를 출력합니다.
kubectl get pod -A -o jsonpath='{range.items[?(@.metadata.annotations.kubernetes\.io/psp)]}{.metadata.name}{" "}{.metadata.namespace}{" "}{.metadata.annotations.kubernetes\.io/psp}{"
"}'
클러스터를 1.25
로 업그레이드하기 전에 다음 대안 중 하나로 PSP를 마이그레이션해야 합니다.
-
Kubernetes PSS.
-
Kubernetes 환경에서 제공되는 코드형 정책 솔루션.
PSP 지원 중단과 처음부터 포드 보안을 제어해야 하는 지속적인 필요성에 대응하여 Kubernetes 커뮤니티는 (PSS)
EKS 모범 사례 가이드
Policy-as-code 솔루션은 클러스터 사용자를 안내하고 사전 정의된 자동 제어를 통해 원치 않는 동작을 방지하는 가드레일을 제공합니다. 코드형 정책 솔루션은 일반적으로 Kubernetes 동적 승인 컨트롤러
Kubernetes에 사용할 수 있는 오픈 소스 코드형 정책 솔루션이 몇 가지 있습니다. PSP를 코드형 정책 솔루션으로 마이그레이션하기 위한 모범 사례를 검토하려면 GitHub의 Pod Security 페이지의 Policy-as-code
Kubernetes 버전 1.13
또는 이후 버전의 Amazon EKS 클러스터에는 eks.privileged
라는 기본 PSP가 있습니다. 이 정책은 1.24
및 이전 클러스터에서 생성됩니다. 1.25
및 이후 클러스터에서는 사용되지 않습니다. Amazon EKS는 이 PSP를 PSS 기반 집행 기관으로 자동 마이그레이션합니다. 사용자는 아무 작업도 수행할 필요가 없습니다.
아니요. 또한 Amazon EKS에서 생성된 PSP인 eks.privileged
이외에도 1.25
로 업그레이드할 때 클러스터의 다른 PSP에는 변경 사항이 적용되지 않습니다.
아니요. Amazon EKS는 아직 PSP로 마이그레이션하지 않은 경우 클러스터의 버전 1.25
업데이트를 막지 않습니다.
PSP가 포함된 클러스터를 Kubernetes 버전 1.25
로 업그레이드하면 API 서버가 1.25
의 PSP 리소스를 인식하지 못합니다. 이로 인해 포드에 잘못된 보안 범위가 지정될 수 있습니다. 이와 관련된 전체 목록은 PodSecurityPolicy에서 빌트인 PodSecurity Admission Controller로 마이그레이션하기
Windows 워크로드에 대한 구체적인 영향은 예상되지 않습니다. PodSecurityContext에는 Winodws 포드용 PodSpec v1
API의 windowsOptions
에서 직접적으로 호출되는 필드가 있다. 이는 Kubernetes 1.25
에서 PSS를 사용합니다. Windows 워크로드용 PSS 적용에 대한 자세한 내용과 모범 사례는 EKS 모범 사례 가이드